1. 21 Apr, 2010 7 commits
    • David Anderson's avatar
      - client: keep track of daily history of network transfers · 15f0b193
      David Anderson authored
      svn path=/trunk/boinc/; revision=21238
      15f0b193
    • BOINC Translator's avatar
      Update Translations · ff460dc6
      BOINC Translator authored
      svn path=/trunk/boinc/; revision=21237
      ff460dc6
    • BOINC Translator's avatar
      Update Translations · 7ebaca56
      BOINC Translator authored
      svn path=/trunk/boinc/; revision=21235
      7ebaca56
    • Rom Walton's avatar
      Quick Updates · 6474fefe
      Rom Walton authored
      svn path=/trunk/boinc/; revision=21233
      6474fefe
    • David Anderson's avatar
      · c4df1f31
      David Anderson authored
      svn path=/trunk/boinc/; revision=21232
      c4df1f31
    • David Anderson's avatar
      - back end: new way of deciding: · 5035007b
      David Anderson authored
          - whether host is "reliable" for an app version
          - whether host is eligible for single replication for an app version
          - whether to use host scaling
          In each case, the answer is yes if the number of
          consecutive valid results is above a threshold.
          This replaces existing "error rate" and "scale probation" mechanisms.
      
          TODO: the # of consecutive valid results should also determine
              a limit on jobs in progress for an app version.
              Namely, if N is the threshold for host scaling, the limit should be
                  ndevices*(max(1, consecutive_valid - N))
              The client currently doesn't supply enough
              app version info to do this.
              It could be approximated; that would give some protection
              against cherry-picking.
      - credit: more conservative formulas for combining claimed credit
          among replicas.
          If there are normal replicas, we use a "low average"
          that weights each sample by the sum of the other samples.
          Otherwise we use the min (not the average) of the approximate samples.
      
      NOTE: a DB update is required
      
      
      svn path=/trunk/boinc/; revision=21230
      5035007b
    • David Anderson's avatar
      · 71ecfd47
      David Anderson authored
      svn path=/trunk/boinc/; revision=21226
      71ecfd47
  2. 19 Apr, 2010 6 commits
  3. 18 Apr, 2010 3 commits
    • David Anderson's avatar
      · 7fceabfa
      David Anderson authored
      svn path=/trunk/boinc/; revision=21207
      7fceabfa
    • David Anderson's avatar
      - client: when a GPU job finishes, clear the "schedule backoff" · d4bb95d5
      David Anderson authored
      		of other jobs of that type.
      		They're waiting for GPU RAM, which may now be available.
      	- client: bug fix in GPU RAM availability
      	- client: fix testing setup for GPU RAM availability
      
      svn path=/trunk/boinc/; revision=21206
      d4bb95d5
    • David Anderson's avatar
      - client: improve GPU scheduling · 01402bb4
      David Anderson authored
          old: assign GPUs, then check available RAM
              Problem: may cause starvation on multi-GPU systems.
          new: use available RAM info in the assignment process.
              Prevents starvation, also reduces the number of driver calls.
      
      svn path=/trunk/boinc/; revision=21205
      01402bb4
  4. 17 Apr, 2010 3 commits
  5. 16 Apr, 2010 7 commits
  6. 15 Apr, 2010 7 commits
    • Charlie Fenton's avatar
      client: fix build break · 6802a2fc
      Charlie Fenton authored
      svn path=/trunk/boinc/; revision=21190
      6802a2fc
    • Charlie Fenton's avatar
      client: Improve code for determining non-BOINC CPU time for branded clients (Mac & Windows) · 07d2a34b
      Charlie Fenton authored
      svn path=/trunk/boinc/; revision=21189
      07d2a34b
    • Charlie Fenton's avatar
      client: Improve code for determining non-BOINC CPU time for branded clients (Mac & Windows) · 7787d8ef
      Charlie Fenton authored
      svn path=/trunk/boinc/; revision=21188
      7787d8ef
    • David Anderson's avatar
      - bug fixes · 02717af2
      David Anderson authored
      svn path=/trunk/boinc/; revision=21187
      02717af2
    • David Anderson's avatar
      - client: get rid of spurious "Using proxy settings from GUI" message · 252b24bf
      David Anderson authored
      svn path=/trunk/boinc/; revision=21186
      252b24bf
    • Rom Walton's avatar
      Add missing languages · 5a19d33c
      Rom Walton authored
      svn path=/trunk/boinc/; revision=21185
      5a19d33c
    • David Anderson's avatar
      - server: change the following from per-host to per-(host, app version): · b2451544
      David Anderson authored
          - daily quota mechanism
          - reliable mechanism (accelerated retries)
          - "trusted" mechanism (adaptive replication)
      - scheduler: enforce host scale probation only for apps with
          host_scale_check set.
      - validator: do scale probation on invalid results
          (need this in addition to error and timeout cases)
      - feeder: update app version scales every 10 min, not 10 sec
      - back-end apps: support --foo as well as -foo for options
      
      Notes:
      - If you have, say, cuda, cuda23 and cuda_fermi plan classes,
          a host will have separate quotas for each one.
          That means it could error out on 100 jobs for cuda_fermi,
          and when its quota goes to zero,
          error out on 100 jobs for cuda23, etc.
          This is intentional; there may be cases where one version
          works but not the others.
      - host.error_rate and host.max_results_day are deprecated
      
      TODO:
          - the values in the app table for limits on jobs in progress etc.
              should override rather than config.xml.
      
      Implementation notes:
      scheduler:
          process_request():
              read all host_app_versions for host at start;
              Compute "reliable" and "trusted" for each one.
              write modified records at end
          get_app_version():
              add "reliable_only" arg; if set, use only reliable versions
              skip over-quota versions
          Multi-pass scheduling: if have at least one reliable version,
              do a pass for jobs that need reliable,
              and use only reliable versions.
              Then clear best_app_versions cache.
          Score-based scheduling: for need-reliable jobs,
              it will pick the fastest version,
              then give a score bonus if that version happens to be reliable.
          When get back a successful result from client:
              increase daily quota
          When get back an error result from client:
              impose scale probation
              decrease daily quota if not aborted
      Validator:
          when handling a WU, create a vector of HOST_APP_VERSION
              parallel to vector of RESULT.
              Pass it to assign_credit_set().
              Make copies of originals so we can update only modified ones
          update HOST_APP_VERSION error rates
      Transitioner:
          decrease quota on timeout
      
      
      svn path=/trunk/boinc/; revision=21181
      b2451544
  7. 14 Apr, 2010 2 commits
  8. 13 Apr, 2010 4 commits
  9. 11 Apr, 2010 1 commit