Commit Graph

200 Commits

Author SHA1 Message Date
David Anderson fd6bb6e637 - client: on Windows (at least) if you kill a task (e.g. reset project)
ACTIVE_TASK::handle_exited_app() never gets called,
    so the coprocessors weren't getting freed.
    Fix this.

svn path=/trunk/boinc/; revision=15242
2008-05-16 22:52:09 +00:00
David Anderson 0e4eb7f6e7 - client: if we request that an app exit,
and it doesn't do so within 10 seconds, kill it.
        This deals with the situation where the app is ignoring messages
        (e.g. because it forgot to end a critical section).
    - client: if either the FP or int benchmark runs less than
        3 CPU seconds (out of 10 seconds of wall time) ignore the benchmark.
        This is an effort to deal with a problem where (for unknown reasons)
        the int benchmark runs for a tiny amount of CPU time,
        leading to an absurdly large result
    - Manager: don't prepend "[error]" to MSG_INTERNAL_ERROR messages;
        the client already does this.

    THESE ARE ALL BUG FIXES

svn path=/trunk/boinc/; revision=15128
2008-05-05 00:51:20 +00:00
David Anderson 13400c9516 Changes for multithread app support:
- update_versions: use __ (not :) as separator for plan class
- client: add plan_class to APP_VERSION;
    an app version is now identified by platform/version/plan_class
- client CPU scheduler: don't assume apps use 1 CPU
- client: add avg_ncpus, max_cpus, flops, cmdline to RESULT
- scheduler: implement app planning scheme

Other changes:

- client: if symlink() fails, make a XML soft link instead
    (for Unix running off a FAT32 FS)
- client: don't accept nonpositive resource share from AMS
- daemons and DB: check for error returns from enumerations,
    and exit if so.  Thus, if the MySQL server goes down,
    all the daemons will soon exit.
    The cron script will restart them every 5 min,
    so when the DB server comes back up so will the project.
- web: show empty max CPU % as ---
- API: get rid of all_threads_cpu_time option (always the case now)


svn path=/trunk/boinc/; revision=14966
2008-03-27 18:25:29 +00:00
David Anderson 2be6f8e53a - Client: add <run_apps_manually> config flag.
This is for debugging apps (currently works only in Unix).
    What it does: when running an app,
    the client does everything except actually fork/exec the app,
    i.e. it sets up the slot dir, creates shared mem segment etc.
    It then continues as if the app were actually running,
    and you can then manually run your app under a debugger
    in the slot directory.
    Note: the client won't notice the termination of your app.
- API, Unix: in situations where the timer thread wants to exit
    (e.g. it notices a missing heartbeat).
    don't directly call boinc_exit(),
    since this touches data structures that the worker thread
    may be using concurrently.
    Instead, set a flag telling the worker thread to call boinc_exit()
    (which it will do from its signal handler)
    This is an attempt to fix problems reported by Bernd;
    I haven't tested it.
- scheduler: add config flag for uploading usage data
- web: show account key and weak account key on user page
- added some code for multithread support (not finished)

api/
    boinc_api.C


svn path=/trunk/boinc/; revision=14542
2008-01-13 00:12:14 +00:00
David Anderson 74c2782624 - API: code cleanup
removed references to "graphics thread"
    removed HANDLE timer_quit_event
    removed enable_heartbeat/disable_heartbeat messages
        (not sure what the ideas was, but no longer exists)
    removed heartbeat_active flag (use options.check_heartbeat instead)
    read heartbeat-channel messages even if heartbeat disabled
        (since we use that channel for WSS messages too)
- client: remove ACTIVE_TASK::thread_handle (not used)

svn path=/trunk/boinc/; revision=14323
2007-11-29 19:48:04 +00:00
David Anderson 4525b2677b - client: clean up logic of handling DLL_INIT_FAILED exits on Win.
Shouldn't cause any functional change

svn path=/trunk/boinc/; revision=14310
2007-11-27 21:54:17 +00:00
Rom Walton ae321f631b - CC: Treat the return code 0xC0000142 as though it is a temporary
error. 0xC0000142 means STATUS_DLL_INIT_FAILED which can happen
        when an application attempts to create a new process while the OS
        is shutting down, and when the desktop heap is fully utilized.
        
        This will keep an app from erroring out during Vista's shutdown
        sequence. Only a reboot can fix the desktop heap.
        
    client/
        app.h
        app_control.C

svn path=/trunk/boinc/; revision=14080
2007-11-05 15:03:16 +00:00
Charlie Fenton c9718fb0b9 Mac client: Add 64-bit support for OS 10.5 (new platform x86_64-apple-darwin)
svn path=/trunk/boinc/; revision=13939
2007-10-24 00:44:42 +00:00
Charlie Fenton eb9cfe6b20 V6 GFX: Fix bugs in graphics compatibility with V5 applications
svn path=/trunk/boinc/; revision=13830
2007-10-11 11:02:48 +00:00
Frank Thomas 3bfc78b511 Updated the postal address of the Free Software Foundation in all license headers. See http://lists.ssl.berkeley.edu/pipermail/boinc_dev/2007-October/008939.html for reference.
svn path=/trunk/boinc/; revision=13804
2007-10-09 11:35:47 +00:00
David Anderson f1f5930579 - client: removed everything related to screensaver
(deciding which app to use, implementing blanking interval, etc.)
    This logic is all now in the screensaver itself.
- GUI RPC: removed get/set screensaver mode RPCs
- API: added a "backwards_compatible_graphics" flag to BOINC_OPTIONS.
    V6 apps should set this.
    If set, the runtime library checks for graphics messages
    from the client, and launches/kills the graphics app (if any).
    The app will then work graphically with pre-V6 clients.
- removed some old files

svn path=/trunk/boinc/; revision=13651
2007-09-25 16:04:45 +00:00
David Anderson aefd2d4c88 - client: add mechanism to abort results if they get > 100
"premature exits" (exit(0) without finish file) between checkpoints


svn path=/trunk/boinc/; revision=13207
2007-07-20 23:42:20 +00:00
Charlie Fenton 390633ff7e Back out my shared memory changes of 27 June because it might prevent compound applications from attaching to the shared memory as needed
svn path=/trunk/boinc/; revision=13046
2007-06-28 11:09:07 +00:00
David Anderson 823df51238 - client: allow up to a day (rather than work_buf_min()) to elapsed
between completing a result and reporting it.
- back end: added <httpd_user> config option:
    Web server user name (used by file deleter)
- back end: don't report unparsed XML in config.xml as an error

client/
    app.h
    work_fetch.C
lib/
    shmem.C
sched/
    file_deleter.C
    file_upload_handler.C
    sched_config.C,h
    show_shmem.C

svn path=/trunk/boinc/; revision=13039
2007-06-27 20:09:18 +00:00
Charlie Fenton fdf8973685 CC: Mark shmem segment for eventual destruction on first msg from task (*nix only)
svn path=/trunk/boinc/; revision=13034
2007-06-27 10:29:31 +00:00
Charlie Fenton 7bb1b1a0d4 CC: Add logic to scheduler, etc. for systems which limit the number of shared memory segments per process and / or system-wide.
svn path=/trunk/boinc/; revision=13015
2007-06-25 11:46:15 +00:00
David Anderson 9850a17167 - GUI RPC: add graphics_exec_path and slot_path fields to RESULT.
These let the Manager run the graphics app.
    Graphics apps have physical name *v6graphics*
- Separated ACTIVE_TASK::write() and ACTIVE_TASK::write_gui().
    These need to write largely disjoint set of items.
- code cleanup: remove a zillion "else"s in parsing code
- code cleanup: change a zillion match_tag(buf, "<foo/>"
    to parse_bool(buf, "foo")

client/
    app.C,h
    client_state.C
    client_types.C,h
lib/
    gui_rpc_client.h
    gui_rpc_client_ops.C
sched/
    server_types.C

svn path=/trunk/boinc/; revision=12938
2007-06-14 23:08:43 +00:00
David Anderson f7e650191a - client: change Win program launch to suppress hourglass cursor
- client simulator: add --cpu_sched_rr_only and --dual_dcf options

client/
    app.h
    app_start.C
    client_types.C,h
    cpu_sched.C
    cs_scheduler.C
    sim.C,h
    work_fetch.C

svn path=/trunk/boinc/; revision=12671
2007-05-15 20:29:26 +00:00
Rom Walton 67078e9e67 - Fix a build break in the manager.
client/
        app.h
    lib/
        common_defs.h

svn path=/trunk/boinc/; revision=12646
2007-05-11 03:49:25 +00:00
David Anderson 4931b54706 *** empty log message ***
svn path=/trunk/boinc/; revision=12335
2007-04-09 16:19:42 +00:00
David Anderson b8a107c995 *** empty log message ***
svn path=/trunk/boinc/; revision=12265
2007-03-23 18:48:06 +00:00
David Anderson 71afcf8c06 *** empty log message ***
svn path=/trunk/boinc/; revision=12235
2007-03-15 23:01:51 +00:00
David Anderson 6ff0977570 *** empty log message ***
svn path=/trunk/boinc/; revision=12139
2007-02-22 16:33:37 +00:00
Rom Walton b8cf48e398 *** empty log message ***
svn path=/trunk/boinc/; revision=12123
2007-02-20 18:25:04 +00:00
David Anderson ac3e809427 *** empty log message ***
svn path=/trunk/boinc/; revision=12026
2007-02-02 17:12:07 +00:00
David Anderson 71fc6345b7 *** empty log message ***
svn path=/trunk/boinc/; revision=11957
2007-01-24 21:20:57 +00:00
David Anderson c12709c7e2 *** empty log message ***
svn path=/trunk/boinc/; revision=11938
2007-01-23 17:24:43 +00:00
David Anderson 829c5b4e82 *** empty log message ***
svn path=/trunk/boinc/; revision=11886
2007-01-16 22:57:08 +00:00
David Anderson cc9ab449e0 *** empty log message ***
svn path=/trunk/boinc/; revision=11872
2007-01-15 22:53:41 +00:00
David Anderson d3b1c45d64 *** empty log message ***
svn path=/trunk/boinc/; revision=11634
2006-12-07 17:30:48 +00:00
David Anderson adcd68afce *** empty log message ***
svn path=/trunk/boinc/; revision=11628
2006-12-06 20:59:29 +00:00
David Anderson 450f3c4f30 *** empty log message ***
svn path=/trunk/boinc/; revision=11241
2006-10-03 22:50:13 +00:00
David Anderson 119ef5da01 *** empty log message ***
svn path=/trunk/boinc/; revision=11231
2006-10-02 23:42:38 +00:00
David Anderson 14a7fb85f6 *** empty log message ***
svn path=/trunk/boinc/; revision=11124
2006-09-08 19:27:42 +00:00
David Anderson 59d5508392 *** empty log message ***
svn path=/trunk/boinc/; revision=11107
2006-09-05 19:00:59 +00:00
David Anderson 7ce1144b73 *** empty log message ***
svn path=/trunk/boinc/; revision=11076
2006-09-01 21:06:30 +00:00
David Anderson 20dea204ca *** empty log message ***
svn path=/trunk/boinc/; revision=10972
2006-08-22 20:58:57 +00:00
David Anderson c94a867c8b *** empty log message ***
svn path=/trunk/boinc/; revision=10820
2006-08-02 21:33:19 +00:00
David Anderson 04d1eeaf9b *** empty log message ***
svn path=/trunk/boinc/; revision=10551
2006-07-01 04:00:19 +00:00
David Anderson 15fa53c622 *** empty log message ***
svn path=/trunk/boinc/; revision=10514
2006-06-26 17:09:23 +00:00
David Anderson 1fa2e3de0a *** empty log message ***
svn path=/trunk/boinc/; revision=10393
2006-06-19 04:29:26 +00:00
David Anderson f4ffa949de CPU scheduler
svn path=/trunk/boinc/; revision=10365
2006-06-15 23:15:27 +00:00
David Anderson 85c2cfc698 *** empty log message ***
svn path=/trunk/boinc/; revision=10353
2006-06-15 05:14:39 +00:00
David Anderson d8385571b9 *** empty log message ***
svn path=/trunk/boinc/; revision=10344
2006-06-14 18:04:12 +00:00
Charlie Fenton 0c015392f2 *** empty log message ***
svn path=/trunk/boinc/; revision=9835
2006-04-10 23:52:31 +00:00
Charlie Fenton 801da91c13 *** empty log message ***
svn path=/trunk/boinc/; revision=9517
2006-02-21 12:22:23 +00:00
Charlie Fenton 85a9549e96 *** empty log message ***
svn path=/trunk/boinc/; revision=9405
2006-02-06 23:44:05 +00:00
David Anderson c3425dbb6c let apps handle abort requests
svn path=/trunk/boinc/; revision=9400
2006-02-03 20:48:48 +00:00
David Anderson 08a55ee4b0 network fixes
svn path=/trunk/boinc/; revision=9381
2006-02-01 22:41:03 +00:00
David Anderson f886cb6f22 *** empty log message ***
svn path=/trunk/boinc/; revision=9314
2006-01-25 19:02:01 +00:00
David Anderson 9382c11b66 avoid redundant CPU reschedule
svn path=/trunk/boinc/; revision=9057
2005-12-09 07:50:35 +00:00
David Anderson aaf7bcb261 fix remaining-CPU estimate
svn path=/trunk/boinc/; revision=8793
2005-11-02 22:06:54 +00:00
David Anderson ed47beb5ad increase stderr_out limit to 64KB
svn path=/trunk/boinc/; revision=8421
2005-10-03 18:05:58 +00:00
David Anderson 7bf14665c2 *** empty log message ***
svn path=/trunk/boinc/; revision=7417
2005-08-17 22:08:35 +00:00
David Anderson 0d4fae3a35 boinc_not_using_cpu() API
svn path=/trunk/boinc/; revision=7410
2005-08-17 21:05:26 +00:00
David Anderson 2356ffff55 *** empty log message ***
svn path=/trunk/boinc/; revision=6438
2005-06-25 23:54:07 +00:00
David Anderson 9c07f39813 *** empty log message ***
svn path=/trunk/boinc/; revision=6292
2005-06-07 19:22:50 +00:00
David Anderson 2224431435 *** empty log message ***
svn path=/trunk/boinc/; revision=6197
2005-05-20 00:48:52 +00:00
Rom Walton 5d8995a3d1 *** empty log message ***
svn path=/trunk/boinc/; revision=6087
2005-05-10 03:42:01 +00:00
Rom Walton 8d7b398b00 *** empty log message ***
svn path=/trunk/boinc/; revision=6048
2005-05-05 22:28:17 +00:00
David Anderson 64b871f819 *** empty log message ***
svn path=/trunk/boinc/; revision=5962
2005-04-28 23:19:58 +00:00
David Anderson b8e12020e9 *** empty log message ***
svn path=/trunk/boinc/; revision=5942
2005-04-27 06:55:28 +00:00
David Anderson 2c38c3e9a8 *** empty log message ***
svn path=/trunk/boinc/; revision=5900
2005-04-20 06:16:54 +00:00
David Anderson 2a6dcdca1f *** empty log message ***
svn path=/trunk/boinc/; revision=5529
2005-02-25 21:31:46 +00:00
David Anderson 8d0ab453b3 *** empty log message ***
svn path=/trunk/boinc/; revision=5443
2005-02-16 23:17:43 +00:00
David Anderson 4f33454fb1 *** empty log message ***
svn path=/trunk/boinc/; revision=5184
2005-01-21 23:26:36 +00:00
David Anderson e2d96faf3e *** empty log message ***
svn path=/trunk/boinc/; revision=5183
2005-01-21 22:03:15 +00:00
David Anderson 435f8edd47 *** empty log message ***
svn path=/trunk/boinc/; revision=5161
2005-01-20 23:22:22 +00:00
David Anderson 8cab8517fd *** empty log message ***
svn path=/trunk/boinc/; revision=4846
2004-12-14 20:28:13 +00:00
David Anderson 52da590b2d *** empty log message ***
svn path=/trunk/boinc/; revision=4580
2004-11-17 19:19:26 +00:00
Rom Walton 68586de632 *** empty log message ***
svn path=/trunk/boinc/; revision=4577
2004-11-17 09:27:06 +00:00
David Anderson fc5d771e2f *** empty log message ***
svn path=/trunk/boinc/; revision=4372
2004-10-21 02:18:11 +00:00
David Anderson cbad11b960 *** empty log message ***
svn path=/trunk/boinc/; revision=4363
2004-10-20 21:11:29 +00:00
David Anderson 37adf79297 *** empty log message ***
svn path=/trunk/boinc/; revision=4328
2004-10-14 22:01:05 +00:00
David Anderson ed3659b9e2 *** empty log message ***
svn path=/trunk/boinc/; revision=4247
2004-09-26 04:16:52 +00:00
David Anderson fdbba61026 *** empty log message ***
svn path=/trunk/boinc/; revision=4221
2004-09-22 21:08:26 +00:00
David Anderson 51fda40804 *** empty log message ***
svn path=/trunk/boinc/; revision=4188
2004-09-13 05:27:28 +00:00
David Anderson e468bec5b7 *** empty log message ***
svn path=/trunk/boinc/; revision=4149
2004-09-04 05:21:33 +00:00
David Anderson 8106bd51b0 *** empty log message ***
svn path=/trunk/boinc/; revision=4128
2004-08-31 21:02:17 +00:00
David Anderson 632ef443df *** empty log message ***
svn path=/trunk/boinc/; revision=4109
2004-08-24 21:44:54 +00:00
David Anderson 4edd964b93 *** empty log message ***
svn path=/trunk/boinc/; revision=4095
2004-08-23 22:06:48 +00:00
Rom Walton 68c8fd0b5e *** empty log message ***
svn path=/trunk/boinc/; revision=4036
2004-08-10 20:27:51 +00:00
Daniel Hsu 5588adfbde *** empty log message ***
svn path=/trunk/boinc/; revision=4032
2004-08-09 19:06:47 +00:00
Daniel Hsu 30d3ce0ec0 *** empty log message ***
svn path=/trunk/boinc/; revision=4020
2004-08-06 23:17:59 +00:00
David Anderson a1cf7ff401 *** empty log message ***
svn path=/trunk/boinc/; revision=3965
2004-08-03 09:50:24 +00:00
Daniel Hsu 144edd3875 *** empty log message ***
svn path=/trunk/boinc/; revision=3952
2004-07-26 22:23:16 +00:00
David Anderson 23ced2dce4 *** empty log message ***
svn path=/trunk/boinc/; revision=3898
2004-07-18 04:41:27 +00:00
Daniel Hsu f6209d3226 *** empty log message ***
svn path=/trunk/boinc/; revision=3874
2004-07-14 20:55:26 +00:00
Daniel Hsu 9b52ae9472 *** empty log message ***
svn path=/trunk/boinc/; revision=3852
2004-07-13 00:13:29 +00:00
David Anderson 088cf484ca *** empty log message ***
svn path=/trunk/boinc/; revision=3812
2004-07-08 03:38:52 +00:00
David Anderson e8fdc8af69 *** empty log message ***
svn path=/trunk/boinc/; revision=3746
2004-07-02 04:49:17 +00:00
Eric J. Korpela 7cd5c7911a *** empty log message ***
svn path=/trunk/boinc/; revision=3725
2004-06-30 18:17:21 +00:00
Daniel Hsu 28469f296d *** empty log message ***
svn path=/trunk/boinc/; revision=3720
2004-06-30 01:10:22 +00:00
David Anderson a74eae9c2d *** empty log message ***
svn path=/trunk/boinc/; revision=3711
2004-06-29 01:15:51 +00:00
David Anderson 4df39e85e4 *** empty log message ***
svn path=/trunk/boinc/; revision=3543
2004-06-12 04:45:36 +00:00
David Anderson 7eed33dd47 *** empty log message ***
svn path=/trunk/boinc/; revision=3411
2004-05-21 20:06:34 +00:00
David Anderson 3c7afb8129 *** empty log message ***
svn path=/trunk/boinc/; revision=3369
2004-05-12 21:21:09 +00:00
David Anderson d240b170b1 *** empty log message ***
svn path=/trunk/boinc/; revision=3215
2004-04-04 01:59:47 +00:00
David Anderson f7e0f1ea48 *** empty log message ***
svn path=/trunk/boinc/; revision=3199
2004-03-31 23:39:12 +00:00
Rom Walton 200a3e2674 *** empty log message ***
svn path=/trunk/boinc/; revision=3031
2004-03-05 04:37:53 +00:00