FoldingAtHome / fah-issues

49 stars 9 forks source link

v6 Feature Continuity: CPU affinity locking #38

Open jcoffland opened 14 years ago

jcoffland commented 14 years ago
Trac Data
Ticket 38
Reported by @7im-
Status accepted
Component FAHClient
Priority 7 (minor)
Keywords affinity locking v6 continuity
Version 7.0

v6 client had the option to lockfahcore affinities when running the SMP client on multi-cored CPUs. One fahcore to one cpu core.

Obviously this changes with the multi-threaded single A3 fahcore.

On some systems, there is a performance boost if threads are locked to specific CPU cores instead of letting the OS thy to bounce and balance the threads.

Also helpful when mixing SMP and GPU clients to assure each client gets dedicated CPU time.

jcoffland commented 14 years ago

Comment by @bb30994 Windows7 is NUMA aware and probably does a better job of managing jumps between virtual CPUs on HT or muti-socketed system than affinity locking. (Similar features may exist in Linux.) In many cases it's better if this option is disabled. (Perhaps it's better to remove the option entirely.)

jcoffland commented 14 years ago

Comment by @jcoffland Bruce suggested adding an affinity mask to the slot configuration. The mask specifies a set of CPUs the slot can run on.

jcoffland commented 13 years ago

Comment by @PantherX Isn't this already implemented in v7.1.8?

jcoffland commented 13 years ago

Comment by @bb30994 Replying to [comment:4 PantherX]:

Isn't this already implemented in v7.1.8?

No. See my comments in duplicate Ticket #275

jcoffland commented 12 years ago

Comment by @PantherX Possible related information -> http://foldingforum.org/viewtopic.php?p=203578#p203578

jcoffland commented 11 years ago

Comment by @Napoleon Some performance data concerning affinity tweaking: http://foldingforum.org/viewtopic.php?f=38&t=23487&start=135#p238323

jcoffland commented 8 years ago

Really the core should do this if it's advantageous.

esyr commented 4 years ago

Another usage of CPU affinity mask is to bind GPU (0x21/0x22) cores to the CPUs the relevant GPUs are connected to.