Intel's APX offers 'better performance' in Windows 11 according to new Insider setting — Microsoft begins early enablement for Advanced Performance Extensions on Nova Lake CPUs

Windows 11
(Image credit: Microsoft)
2

A new "Advanced Performance Extensions (APX)" option has been spotted in a version of Windows 11 made available to Windows Insiders on October 23, with the feature set to enable a boost in application performance on compatible chips. At the moment, those chips don't exist. But when they do, this feature is the one that you'll want to flick on if you're using one of them. The new toggle was reported by Neowin after it was first spotted by a poster on the X social network. The feature debuted in build 29295 as an Experimental build, so it's unlikely that it will make its way to the version of publicly available Windows 11 anytime soon.

Intel announced APX back in 2023, confirming that it features 16 additional general-purpose registers and three-operand instruction formats with a new data destination register for many integer instructions. Doubling the number of general-purpose registers from 16 to 32 will allow code compiled with APX to run with 10% fewer loads and 20% fewer stores than Intel 64's baseline, says Intel. APX has been available in the GCC compiler since version 14, with subsequent versions up to GCC 17, which is targeting a 2027 code freeze, adding additional support. LLVM and MSVC have preliminary support, as well. Although enablement has been going steady for the past two years, developers will still need to recompile their applications with the proper flags for APX-capable CPUs to leverage those instructions.

Latest Videos FromTom's Hardware
Oliver Haslam
Contributing Writer

Oliver Haslam has written about technology of all shapes and sizes for over 15 years, both online and in print. He's fascinated by how personal computing continues to change as tower PCs give way to foldable phones and beyond.

  • Findecanor
    I've read a few academic studies that have compare code with 16 vs 32 registers, that make me believe that the difference will be marginal overall.
    Some algorithms with deeply nested loops that can't be vectorised or off-loaded to a GPU are the most likely to benefit.

    The calling convention stays the same. It won't be like the jump from "32-bit" to "64-bit" code when the number of registers increased from 8 to 16.
    Reply
  • mrdoc22
    It will only make sense, if they look how the ARM is doing it.

    Instead only one AX real dataregister in x86, then they should make 8 x AX real dataregisters,
    meaning you can do alegebra on 8 variables in a function with no overhead.
    Reply