Message boards :
Number crunching :
Another question : CPU & GPU vs. total CPU usage
Message board moderation
Author | Message |
---|---|
FalconFly Send message Joined: 5 Oct 99 Posts: 394 Credit: 18,053,892 RAC: 0 |
Hm, I've been pondering that question but couldn't come to a definitive answer. Most know that by default, the BOINC Client will load up all CPU cores AND the GPU. Of course, most users optimizing their system free up CPU cores to maintain optimum loadout of the entire system. But which of the two methods I'm aware of is best? - On multiprocessors, use at most xxx% processors (general computing preferences or computing preferences of individual BOINC Client in local preferences) OR - modify <avgcpus> and <maxcpus> to higher number as to reserve CPU cores As I'm seeing the CPU load from all tasks distributed across all CPU cores, I wondered if using the first option might actually leave unused performance (with both CPU and GPU tasks i.e. just hopping around a now limited number of cores by the Windows management and effectively just generally lower CPU load). Thinking about it, it would seem more reasonable to use the <avgcpus> and <maxcpus> value. But in end, I'm not sure if both methods might actually yield identical results or one being a better performance option ? |
Richard Haselgrove Send message Joined: 4 Jul 99 Posts: 14650 Credit: 200,643,578 RAC: 874 |
I wondered if using the first option might actually leave unused performance (with both CPU and GPU tasks i.e. just hopping around a now limited number of cores .... No, BOINC doesn't interact with the hardware at that level. In practice, "use at most xxx% processors" translates to "only launch enough BOINC child processes..." (i.e. science application instances) "...to use this number of cores" [and by implication, let Windows manage things from there]. Don't forget, Windows is a multi-tasking operating system (well, by time-sliced multiplexing), with typically over 100 separate processes jostling for space/time on 4 or 8 processing units. |
Josef W. Segur Send message Joined: 30 Oct 99 Posts: 4504 Credit: 1,414,761 RAC: 0 |
Using the <avg_cpus> has an advantage if you run out of GPU tasks some time when the project is down (if there are still enough CPU tasks left to occupy all CPUs). AFAIK, BOINC does nothing with the <max_cpus> value but of course that might change in future. Unless some method of setting processor affinity is used, Windows or any other multitasking OS will probably always try to balance CPU loads by shifting processes periodically to different cores. The OpenCL applications do have a -cpu_lock option which sets affinity, some systems get more productivity but others less. Joe |
FalconFly Send message Joined: 5 Oct 99 Posts: 394 Credit: 18,053,892 RAC: 0 |
Hm, okay, so I think I'll continue to go with use xxx% of CPU cores, as it's easy to switch on the fly... |
©2024 University of California
SETI@home and Astropulse are funded by grants from the National Science Foundation, NASA, and donations from SETI@home volunteers. AstroPulse is funded in part by the NSF through grant AST-0307956.