Select Git revision
boinc
-
-
- Open in your IDE
- Download source code
David Anderson authored
A "generic" coprocessor is one that's reported by the client, but's not of a type that the scheduler knows about (NVIDIA, AMD, Intel). With this commit the following works: - On the client, define a <coproc> in your cc_config.xml with a custom name, say 'miner_asic'. - define a plan class such as <plan_class> <name>foobar</name> <gpu_type>miner_asic</gpu_type> <cpu_frac>0.5</cpu_frac> <plan_class> - App versions of this plan class will be sent only to hosts that report a coproc of type "miner_asic". The <app_version>s in the scheduler reply will include a <coproc> element with the given name and count=1. This will cause the client (at least the current client) to run only one of these jobs at a time, and to schedule the CPU appropriately. Note: there's a lot missing from this; - app version FLOPS will be those of a CPU app; - jobs will be sent only if CPU work is requested ... and many other things. Fixing these issues requires a significant re-architecture of the scheduler, in particular getting rid of the PROC_TYPE_* constants and the associated arrays, which hard-wire the 3 fixed GPU types.