Commit Graph

555 Commits

Author SHA1 Message Date
David Anderson 8fb8548867 - admin web: tweaks
svn path=/trunk/boinc/; revision=21848
2010-06-30 19:04:36 +00:00
David Anderson 21d697fe9f svn path=/trunk/boinc/; revision=21816 2010-06-25 20:26:08 +00:00
David Anderson 56293c22d1 svn path=/trunk/boinc/; revision=21815 2010-06-25 20:25:42 +00:00
David Anderson 7c51512cbf - transitioner: the format string for a DB query had %.15d instead of %.15e.
That produced a messed-up query that assigned garbage values to:
        host_app_version.turnaround_var
        host_app_version.turnaround_q
        host_app_version.max_jobs_per_day
        host_app_version.consecutive_valid
    To repair these:
        - set turnaround_var and turnaround_q to zero
        - if max_jobs_per_day is outside of
            (0..config.daily_result_quota)
            set it to config.daily_result_quota
        - if consecutive_valid is outside (0..1000), set it to zero
    I added a script, html/ops/repair_21812.php, that does this;
    if you ran server code between [21181] and [21812], run this script.
- scheduler/transitioner: add <debug_quota> log flag
- changed the build system to always use -Wall
    (if we'd done this before, this bug wouldn't have happened)
- fixed a bunch of other compile warnings


svn path=/trunk/boinc/; revision=21812
2010-06-25 18:54:37 +00:00
David Anderson e260b47bd5 - database: app.min_avg_pfc should default to 1, not 0
svn path=/trunk/boinc/; revision=21763
2010-06-17 16:44:33 +00:00
David Anderson 8b836a391b - database: remove unused fields from app table
svn path=/trunk/boinc/; revision=21728
2010-06-11 03:50:47 +00:00
David Anderson 875397d1b0 - admin web: add start/end times to team import log output
svn path=/trunk/boinc/; revision=21693
2010-06-04 19:20:19 +00:00
David Anderson 689f6c1625 - GUI RPC: improved error reporting
svn path=/trunk/boinc/; revision=21585
2010-05-19 17:15:33 +00:00
David Anderson 5fe3ea66a7 - user web: fix PHP warning
- admin web: add tool for debugging credit


svn path=/trunk/boinc/; revision=21417
2010-05-07 21:46:04 +00:00
David Anderson 5035007b90 - back end: new way of deciding:
- 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
2010-04-21 19:33:20 +00:00
David Anderson 678d880c64 - client: clean up logic related to GPU available memory.
If a driver call to get available mem fail, mark the GPU as unusable.


svn path=/trunk/boinc/; revision=21210
2010-04-19 18:35:10 +00:00
David Anderson e36d87dec9 - admin web: use only valid results in FLOPS count graph
svn path=/trunk/boinc/; revision=21195
2010-04-16 20:01:13 +00:00
David Anderson 2e85107ff6 - admin web: "User privileges" didn't work if the project
had set forum_preferences.special_user to "0000000",
    as had been done in SETI@home for some reason.
    Also, show user ID as well as name; name is not unique.

svn path=/trunk/boinc/; revision=21143
2010-04-07 22:21:44 +00:00
David Anderson fb851311e0 - server: various changes;
see http://boinc.berkeley.edu/trac/wiki/CreditNew

    Projects will need to update DB and recompile all back-end programs.

    Summary:
    - new way of computing credit
    - "reliable host" mechanism is per app version
    - "host punishment" mechanism is per app version
    - adjustment of wu.rsc_fpops_est provides the
        equivalent of per app version DCF
    - max jobs in progress is now per app
    - max jobs per RPC is now per app

    TODO:
    - reliable mechanism:
        - populate and use host_app_version.error_rate
        - populate host_app_version.turnaround
    - host punishment:
        - populate host_app_version.max_jobs_per_day
        - populate host_app_version.n_jobs_today
        - use app.max_jobs_per_day_init
    - job limits:
        - use app.max_jobs_in_progress, max_gpu_jobs_in_progress
        - use app.max_jobs_per_rpc
    - adjust wu.rsc_fpops_est
    - remove old credit stuff
        fpops_cumulative, credit_multiplier
        credit computation in scheduler

- AVERAGE class: use the Knuth algorithm (Wikipedia)


svn path=/trunk/boinc/; revision=21021
2010-03-29 22:28:20 +00:00
David Anderson 08af46829a - credit test program: create a data file separately so you
don't have to do a big DB query each time


svn path=/trunk/boinc/; revision=20837
2010-03-11 04:19:07 +00:00
David Anderson 295d4b54ea - server: major improvements to locality scheduling from Einstein@home.
Triggering the work generator is now done via the DB
    instead of flat files.

    Since only E@h uses locality scheduling,
    I kept the DB changes in a separate file (db/schema_locality.sql).
    There's a new field in the workunit table,
    and that's a required update (in db_update.php)
- manager: compile fix


svn path=/trunk/boinc/; revision=20807
2010-03-05 22:55:16 +00:00
David Anderson b415b07785 - client: revisit the domino-effect preemption problem.
Removed my changes of 19 Jan 2010, which didn't work.
    Added new mechanism: keep track of whether a job J has ever run in EDF.
    If so, and if another job of the same project and resource type as J
    is marked as deadline miss, then mark J as deadline miss,
    so that it won't get preempted.
- web: change "result" to "task" in server status page
- admin web: show server stable SVN revision, not trunk

svn path=/trunk/boinc/; revision=20805
2010-03-05 21:13:53 +00:00
David Anderson 09b0a9f93c - admin web: reorganize main page;
add "transition all" command

svn path=/trunk/boinc/; revision=20745
2010-02-26 21:34:20 +00:00
David Anderson 04425c51af - web: translation stuff
svn path=/trunk/boinc/; revision=20657
2010-02-19 17:51:00 +00:00
David Anderson fb4d03579e - manager: first whack at "suspend if CPU load exceeds x" in dialog
svn path=/trunk/boinc/; revision=20594
2010-02-16 18:38:39 +00:00
David Anderson 1600c26206 svn path=/trunk/boinc/; revision=20403 2010-02-03 17:28:03 +00:00
David Anderson ce2b061ddf svn path=/trunk/boinc/; revision=20336 2010-02-01 17:52:59 +00:00
David Anderson 2be75c38a7 svn path=/trunk/boinc/; revision=20319 2010-01-29 19:59:03 +00:00
David Anderson 65b581b28d svn path=/trunk/boinc/; revision=20316 2010-01-29 16:28:46 +00:00
David Anderson 04b8cf965f - web: assume all translation files are UTF-8
svn path=/trunk/boinc/; revision=20270
2010-01-27 04:04:17 +00:00
David Anderson 03be4edeab - user web: clean up LANG_NAME_* mess
svn path=/trunk/boinc/; revision=20248
2010-01-22 18:09:05 +00:00
David Anderson e84d691136 - update BOINC project translation template
svn path=/trunk/boinc/; revision=20179
2010-01-15 23:25:46 +00:00
David Anderson 31ca27bf6b - admin web: allow setting per-app HR class
svn path=/trunk/boinc/; revision=20086
2010-01-06 21:47:24 +00:00
David Anderson e57f286e47 - web: some fixes that arose from converting BOINC's news
to forum format.


svn path=/trunk/boinc/; revision=19963
2009-12-18 04:32:30 +00:00
David Anderson 98a192e5ac - web: bug fixes to the above.
svn path=/trunk/boinc/; revision=19951
2009-12-17 00:17:37 +00:00
David Anderson 29f75b41f5 svn path=/trunk/boinc/; revision=19950 2009-12-16 23:01:14 +00:00
David Anderson e1bdfc0ee8 - web: change the way project news is stored.
Old: in a flat file (html/project/project_news.inc)
    New: in a forum (called "News" by default)
    The script html/ops/news_convert.php copies news from
    old to new format.
    You'll also need to edit your index.php and use
    "show_news(0, 5)" to show news.
- web: added a "message of the day" mechanism.
    Edit html/user/motd.php to show a message.
    This will be shown as the first news item,
    but it's not archived (i.e., it's not a forum post)


svn path=/trunk/boinc/; revision=19949
2009-12-16 22:35:08 +00:00
David Anderson b817b8ed7a - admin web: changed protection scheme as follows:
- default: script can be run from command line;
        to run from web you need to be logged in as a particular user.
        (in addition to .htaccess protection).
    - if include $cli_only at start of script:
        can only be run from the command line.
    - if include $skip_auth_ops at start of script:
        can run from web without being logged in
        (this is set ONLY in login_action.php)
- admin web: added $cli_only = true to a bunch of scripts


svn path=/trunk/boinc/; revision=19230
2009-10-02 18:32:40 +00:00
David Anderson 4e63946ea2 - admin web: show plan class in "manage app versions" page
from Jon Sonntag.


svn path=/trunk/boinc/; revision=19190
2009-09-26 04:39:50 +00:00
David Anderson 0f9cda3ea3 - admin web: finished the above.
Got rid of auth_ops_cmdline() (not needed).
    auth_ops() is now called in util_ops.inc;
    every script in html/ops/ must include util_ops.inc.

Note: for existing projects, the admin web interface
    will now show "access denied".
    Projects must think about what access control policy they want,
    and specify it in project.inc


svn path=/trunk/boinc/; revision=19053
2009-09-15 18:14:37 +00:00
David Anderson 17802a2a90 - admin web: add a notion of login to a project's admin pages
(this is separate from login to user pages,
    since the cookie path is different).
- admin web: added a framework for project-specified
    access control to admin pages.
    Can be on the basis of user ID, user flags, etc.
    To do this, define functions auth_ops() and auth_ops_cmdline()
    in html/project/project.inc
    (see the one in project.samples/ for an example)
    This is in addition to .htaccess protection.


svn path=/trunk/boinc/; revision=19052
2009-09-15 04:48:08 +00:00
David Anderson b4ad10182f svn path=/trunk/boinc/; revision=19045 2009-09-11 18:08:54 +00:00
David Anderson 8f2a014f58 svn path=/trunk/boinc/; revision=19030 2009-09-08 20:37:40 +00:00
David Anderson da7e82fe15 - scheduler and back end: add new fields to result table:
elapsed_time: the elapsed time (runtime) as reported by client
    flops_estimate: the app's estimated FLOPS as reported by app_plan()
    app_version_id: the DB ID of the app_version used
        (or -1 if anonymous platform)
    TODO: show these in the web interfaces,
    and use them where appropriate

svn path=/trunk/boinc/; revision=19002
2009-09-03 20:26:31 +00:00
David Anderson 12d4b978be - scheduler: if client request uses a weak authenticator,
don't modify user preferences or CPID.
- client: fix bug that shows ATI version incorrectly
- database: host.posts has been repurposed as a salt (or seqno)
    for a new type of weak authenticator that won't depend on password
- web code:
    modify forum_preferences.posts instead of host.posts.
    (actually, the former isn't used either, we just do a select count(*);
    should fix this at some point).

svn path=/trunk/boinc/; revision=18865
2009-08-18 20:44:12 +00:00
Jeff Cobb 15ccf7b778 Added table state_counts.
svn path=/trunk/boinc/; revision=18490
2009-06-23 21:45:22 +00:00
David Anderson 08e4ba3df6 - server: suppress verbosity of update_translations in make_project and upgrade
svn path=/trunk/boinc/; revision=18381
2009-06-11 17:25:01 +00:00
David Anderson 667bc8fba8 - make update_translations.php executable; fixes #770
svn path=/trunk/boinc/; revision=18279
2009-06-03 21:02:00 +00:00
David Anderson b37c4f3cef - web: clarify build_po.php
svn path=/trunk/boinc/; revision=18193
2009-05-22 20:55:06 +00:00
David Anderson da217e4c59 - upgrade: don't crash if file copy fails
- db_update.php: select database (not clear if this ever worked)
- translation: fix bug if have both BOINC and project translation

svn path=/trunk/boinc/; revision=18141
2009-05-18 04:18:47 +00:00
David Anderson 9574e8a003 - web: check for mismatched "'s in translation files
- build_po.php: add LANG_NAME strings

svn path=/trunk/boinc/; revision=18109
2009-05-14 22:32:05 +00:00
Rom Walton 13cc42ad2e make compatible with Pootle
svn path=/trunk/boinc/; revision=18108
2009-05-14 21:03:21 +00:00
David Anderson 282bc21c3c - web: make build_po.php usable for projects
svn path=/trunk/boinc/; revision=18093
2009-05-13 23:16:11 +00:00
David Anderson 886e166103 svn path=/trunk/boinc/; revision=18069 2009-05-11 16:45:33 +00:00
David Anderson e012253441 - web: typo
svn path=/trunk/boinc/; revision=17881
2009-04-27 04:30:33 +00:00