Opened 16 years ago
Last modified 14 years ago
#853 new Enhancement
Automatic adjustment for CPU affinity
Reported by: | Devaster | Owned by: | |
---|---|---|---|
Priority: | Undetermined | Milestone: | Undetermined |
Component: | Undetermined | Version: | |
Keywords: | Cc: |
Description
Can be implemented a mechanism to set automatic CPU affinity for every running project/task with selection plus when running multiple GPU clients on multiple GPUs then they will occupy only one (the same) CPU ?
Change History (7)
comment:1 Changed 16 years ago by
comment:2 Changed 16 years ago by
i think no. SETI GPU apps and GPUGrid apps are using around 1 % of CPU for gpu populating at my AMD Quad Phenom and i am running 3 instaces of SETI MB CUDA and 4 instances of AP. All 3 SETI CUDA are consuming around 5 % percent of one core.Only at start of every task it is using max cpu time but at this first seconds are done a simple benchs for function selections. And it can be optional at last.
comment:3 Changed 16 years ago by
If you run 3 SETI CUDA apps using 5% each, and you pin them to the same core, you'd waste a lot of CPU power by using only 15% of the core.
comment:5 Changed 16 years ago by
Then you're making even less sense. Why would you want to pin those to a specific CPU?
comment:6 Changed 16 years ago by
i think i would be good that they wil dont disturb other apps on other cores ...
comment:7 Changed 14 years ago by
I did some work in the area of CPU and memory affinity; so far I have a POC patch that sets CPU and memory affinity sequentially, starting with first CPU.
Very happy with performance improvements -- before: http://darkswarm.org/eah-before.png
after: http://darkswarm.org/eah-after.png
At this time it's Linux-only patch though Windows support shouldn't be a problem once design issues are solved. About those -- I'm by no means BOINC expert but I haven't found a nice way of user indicating which processors to use.
Global preference doesn't appear to be right approach as it applies to all computers on user's account, so... all ideas will be much appreciated.
All that assuming there's upstream interest in adding such feature of course.
CPU affinity was already suggested in #325.
I don't understand what you mean with GPU apps. If you run all GPU apps in the same CPU core, and they fight for CPU time, probably they won't be able to feed the GPU fast enough (the CPU will be the bottleneck).