Changes between Version 5 and Version 6 of AppCoprocessor


Ignore:
Timestamp:
Mar 12, 2008, 11:16:21 AM (17 years ago)
Author:
davea
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AppCoprocessor

    v5 v6  
    33This document describes BOINC's support for applications that use coprocessors such as
    44
    5  * GPU(s)
    6  * SPEs in a Cell processor
     5 * GPUs
     6 * Cell SPEs
    77
    8 We'll assume that these resources are "allocated" rather than "scheduled":
    9 an application using a coprocessor has it locked
    10 while the app is in memory,
     8We'll assume that these resources are allocated rather than scheduled:
     9i.e., an application using a coprocessor has it locked while the app is in memory,
    1110even if the app is suspended by BOINC or descheduled by the OS.
    1211
    1312== Proposed design ==
    1413
    15  1. The BOINC client will probe for coprocessors, and report them in scheduler requests.  The XML looks like:
     14The BOINC client probes for coprocessors and reports them in scheduler requests.
     15The XML looks like:
    1616{{{
    1717<coprocs>
     
    2424</coprocs>
    2525}}}
    26  1. An app_version record (in the server DB) will have a new field '''coproc_req''', which is a character string encoding its coprocessor requirements.
    27  1. The scheduler is linked with a project-specific function
     26 1. An app_version record (in the server DB) has a character string field '''class'''.
     27 1. The scheduler is linked with a project-supplied function
    2828{{{
    29 bool coprocessor_compatible(COPROCS&, char coproc_req, double& flops);
     29bool analyze_app(HOST&, char* class, double& flops);
    3030}}}
    3131This function: