On Thursday 24 Sep 2009 07:13:24 Gabor Gombas wrote: > > Basically, the patch results in CPU tasks running BATCH/19 and GPU tasks > > OTHER/10. In the case of a headless dedicated cruncher the PPD is not > > affected, but in the case that the machine is also running general tasks > > (like a code build and a desktop), the desktop responsiveness is greatly > > improved under heavy load. > > The Debian initscript for the BOINC client prefers IDLE over BATCH if it > is available. IMHO that would be more appropriate for desktops, while > BATCH should be preferred for dedicated machines. If this is going to be > integrated, then there should be a way to specify the scheduler class, > priority and nice level in the configuration somehow.
There is a reason for choosing BATCH (as a default) and not IDLE. I alluded to it above. PPD is not affected on a dedicated cruncher with BATCH. With IDLE it is reduced by 10%, more with a PREEMPT kernel. > Debian also uses ionice to set the I/O scheduling class to IDLE, so that > should be integrated too. The I/O class should be set for the core > client as well, not just for the applications. It depends on how far you want to take it. The BOINC defaults, nice 19 for CPU tasks and nice 10 for the GPU tasks already is pretty much the sweet spot and those are already hard-coded. Changing the policy to BATCH for the CPU, you could argue is the equivalent of just dropping the CPU priority one level lower from the hard-coded defaults. It doesn't really affect anything at all as far as PPD is concerned on a dedicated cruncher but makes the desktop feel a lot more responsive on a non-dedicated cruncher. It's a good default without configs option or resorting to userland ionice/schedtool etc. etc. The parent program (core client) is not exactly CPU intensive so I don't really see the need to fiddle with scheduling classes for that. One other thing to consider here with both nice and schedule policy, is that if the core runs as 'standard' non-superuser, priorities can be decreased but not increased. The Fedora packaged script starts the core at nice 19. The setpriority call to set the GPU clients to nice 10 is ignored because the non- priv user cannot increase the priority above the parent process. Running crunchers with 6 and 8 GPU's each this is disastrous with a mix of CPU and GPU clients all running at nice 19. Starting the core with very low priority or schedule policy is not something that I'd want to do. ;) YMMV. Regards Clive -- Clive Messer <[email protected]> _______________________________________________ boinc_dev mailing list [email protected] http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev To unsubscribe, visit the above URL and (near bottom of page) enter your email address.
