Version 3 (modified by 17 years ago) (diff) | ,
---|
Non-CPU-intensive applications
A 'non-CPU-intensive' project is one whose applications use little CPU time. Examples include:
- Host measurements
- Network measurements
- Web crawling
- Network data access
A non-CPU-intensive project is treated specially by the core client:
- The core client maintains one result for the project
- The core client executes this result whenever computation is enabled, bypassing the normal CPU scheduling mechanism.
A project labels itself as non-CPU-intensive by including the <non_cpu_intensive>
flag in its configuration file.
This attribute is at the project level; there is no provision for a project to have some applications that are CPU intensive and some that aren't.
Non-CPU-intensive applications can use chunks CPU time; this won't break anything, and the CPU scheduler will adjust to it by changing its estimates of 'CPU efficiency'. However, non-CPU-intensive applications should try not to use more CPU time than their resource share fraction indicates.