Commit Graph

10 Commits

Author SHA1 Message Date
David Anderson c2a34cb938 client: parse <plan_class> in app_config.xml; fix error messages; show error message if <app_version> doesn't match any app versions 2013-11-22 00:04:00 -08:00
David Anderson c1bddf4252 client: allow <app_version> elements in app_config.xml, allowing users to override the parameters of particular app versions 2013-09-06 15:41:43 -07:00
David Anderson e401380d5c admin web: fix PHP errors in failure page 2013-08-16 22:21:12 -07:00
David Anderson 03e3b3b15b client: clear max_concurrent is app_config.xml no longer exists
If you had an app_config.xml that limited the # of concurrent tasks for an app,
and you delete it and do "reread config", then remove the limit.
2013-06-17 12:48:14 -07:00
David Anderson 5452d3998f client: show app_config warnings only on startup and reread config 2013-05-19 10:02:00 -07:00
David Anderson 6c2631ec6f client: make "missing app" messages more consisten 2013-05-16 12:40:43 -07:00
David Anderson 64d7fa3474 - client: more fixes to GUI RPC addition.
Also, replace get_project_dir() with a memoized member function of PROJECT
2013-04-18 13:57:33 -07:00
David Anderson 81d64892b6 - client: msg tweak 2013-04-18 00:36:03 -07:00
David Anderson a64cb793f1 - scheduler: attempted performance enhancement.
Old: each scheduler process holds a semaphore
        while scanning the shared-mem job array.
        On machines with many CPUs
        there seems to be contention for this semaphore,
        causing slow scheduler response and possibly connection failures.
    New: Don't hold the semaphore while scanning array.
        Instead, if find a job that passes quick_check(),
        acquire the semaphore and recheck that the job is present in array
        and passes quick_check().
- client: show messages if app_config.xml has unrecognized tags
2013-03-04 17:16:56 +01:00
David Anderson 952a495fb7 - client: add "client app configuration" feature; see
http://boinc.berkeley.edu/trac/wiki/ClientAppConfig
    This lets users do the following:
    1) limit the number of concurrent jobs of a given app
        (e.g. for WCG apps that are I/O-intensive)
    2) Specify the CPU and GPU usage parameters of GPU versions
        of a given app.
    Implementation notes:
    - max app concurrency is enforced in 2 places:
        1) when building the initial job run list
        2) when enforcing the final job run list
        Both are needed to avoid possible starvation.
    - however, we don't enforce it during RR simulation.
        Doing so could cause erroneous shortfall and work fetch.
        This means, however, that work buffering will not work
        as expected if you're using max concurrency.
2013-03-04 15:20:32 +01:00