In machines with more than 2 logical processors (whether they are multiple physical processors, multiple DualCore or single QuadCore processors, or DualCore + HT processors), a new variable is saved to the config.wtf file.
The processAffinityMask variable is a decimal number composed of a binary mask representing which cores WoW will allow certain threads to be scheduled on. By default, this variable is set to "3" representing logical processors 1 and 2.
In case some of you are uncomfortable with the binary flags, here's a little picture that illustrates the mask and which logical processors will be used, for systems with up to 4 logical processors.
On my system, I seem to get better performance (higher FPS) when changing the mask to "15", even though I only have 1 physical processor with 2 cores and HyperThreading. I'm curious to know, which threads does this mask schedule?
With the default affinity mask set to cores 1 and 2, I actually get poorer performance than when I disable HyperThreading. But enabling HyperThreading (to get those extra two logical processors) and changing the mask to "15" seems to give me about 20 more FPS.
Are there any consequences to changing this setting, such as instability? Are there any recommendations for changing it from its default value to achieve better performance on systems with 4 or more logical processors?
From:
World of Warcraft - English (NA) Forums -> Using processAffinityMask CVAR in config.wtf