Changes between Initial Version and Version 1 of PortalFeatures


Ignore:
Timestamp:
Sep 10, 2010, 2:26:51 PM (14 years ago)
Author:
davea
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • PortalFeatures

    v1 v1  
     1= BOINC support for science portals =
     2
     3A '''science portal''' is a web site serving a group of scientists in a particular area.
     4In addition to other features, science portals typically offer a facility
     5for computing, in which scientists can submit, via a web interface,
     6sets of jobs to be run against standard applications.
     7Currently these jobs are run on clusters or Grids.
     8
     9This document proposes additions to BOINC to facilitate using
     10a BOINC project as a computing resource for science portals.
     11There are two related parts:
     12
     13 * A mechanism for allocating computing resources among scientists
     14 * A mechanism for handling batches of jobs
     15
     16== Computing share ==
     17
     18Demand for computing power may exceed supply,
     19in which case we need a mechanism for dividing the supply among scientists.
     20Assume that every job is associated with a particular BOINC user,
     21representing either a scientist or some other organizational entity,
     22and that each such user has a numeric '''computing share''' proportional to
     23the fraction of the computing resource they should get.
     24
     25The way in which computing shares are determined is outside the scope,
     26but some possibilities are:
     27
     28 * Each scientist attaches their own PCs to the BOINC project,
     29   and their computing share is the recent average credit of these hosts.
     30 * Volunteers attached to the project can assign shares of their resource
     31   to scientists, and a scientist's overall share is the sum of these,
     32   weighted by the volunteer average credit.
     33 * A scientist's share is increased if they contribute to the portal,
     34   e.g. by participating in the message boards.
     35
     36What are the precise semantics of computing share?
     37Ideally this should accommodate two classes of scientists:
     38
     39 * '''Throughput-oriented''': those who have an infinite stream of jobs.
     40   They want maximum throughput, and don't care about the turnaround times
     41   of individual jobs.
     42   
     43 * '''Latency-oriented''': those who occasionally have large batches of jobs,
     44   and who want the entire batch to be finished fast.
     45   Such a user, for example, might not submit any jobs for a month,
     46   then submit a batch that takes a day to complete using the entire resource.
     47
     48To accommodate both extremes,
     49we propose a system in which each user has an associated '''debt''',
     50i.e. how much computation the system owes to that user.
     51
     52A user's debt continually increases at a rate equal to their computing share.
     53Debt is capped at a value corresponding to, say,
     54use of the entire computing resource for 1 week.
     55
     56When a job completes (successfully or not) its user's debt is decremented
     57by the amount of computing done
     58(more precisely, but the amount of computing that would have been done
     59by the job's resources running at peak speed for the job's elapsed time).
     60
     61In this scheme, latency-oriented user can build up a debt that allows their
     62batches (if they are sufficiently infrequent) to get the full computing resource
     63and finish as fast as possible.