Changes between Version 16 and Version 17 of AppCoprocessor


Ignore:
Timestamp:
Jan 22, 2009, 11:28:56 AM (16 years ago)
Author:
davea
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AppCoprocessor

    v16 v17  
    1111
    1212The BOINC client probes for coprocessors and reports them in scheduler requests.
     13The client keeps track of coprocessor allocation, i.e. how many instances of each are free.
     14It only runs an app if enough instances are available.
    1315
    1416== Deploying a coprocessor app ==
     
    2729{{{
    2830bool app_plan(SCHEDULER_REQUEST& sreq, char* plan_class, HOST_USAGE& hu) {
    29     if (!strcmp(plan_class, "mt")) {
    30         // the following is for an app that can use anywhere
    31         // from 1 to 64 threads, can control this exactly,
    32         // and whose speedup is .95N
    33         // (so on a uniprocessor, we'll use a sequential app
    34         // if one is available)
    35         //
    36         int ncpus, nthreads;
    37         bool bounded;
    38 
    39         get_ncpus(sreq, ncpus, bounded);
    40         nthreads = ncpus;
    41         if (nthreads > 64) nthreads = 64;
    42         hu.avg_ncpus = nthreads;
    43         hu.max_ncpus = nthreads;
    44         sprintf(hu.cmdline, "--nthreads %d", nthreads);
    45         hu.flops = 0.95*sreq.host.p_fpops*nthreads;
    46         return true;
    47     } else if (!strcmp(plan_class, "cuda")) {
     31    if (!strcmp(plan_class, "cuda")) {
    4832        // the following is for an app that uses a CUDA GPU
    4933        // and some CPU also, and gets 50 GFLOPS total
     
    8569 * Allow app_versions to specify min and max requirements (and have a corresponding allocation scheme in the client).
    8670 * Let projects define their own resources, unknown to BOINC, and have "probe" programs (using the assigned-job mechanism) that surveys the resources on each host.
    87  * Store the resource descriptions in the DB (or maybe flat files), so that you can study your host population.
     71