Commit Graph

3702 Commits

Author SHA1 Message Date
David Anderson 6fc27ffc44 - client: use [wfd] consistently
svn path=/trunk/boinc/; revision=19725
2009-11-27 21:21:39 +00:00
Rom Walton 7ca5c37952 - client: Treat each HTTP header sent to the server as a new log message.
Some tools get confused when more than one delimeter is used in
        common file types.
        
    client/
        http_curl.cpp, .h

svn path=/trunk/boinc/; revision=19714
2009-11-25 20:45:36 +00:00
Charlie Fenton a449b19391 Mac Sandbox: attempt to fix bug where Manager reports that admin user is not authorized to run BOINC
svn path=/trunk/boinc/; revision=19707
2009-11-25 12:43:43 +00:00
Rom Walton 5659336a3b - log: Fix a parameter parsing bug, hazards of copy/paste/fix-up I
suppose.  Increment the index before use instead of just adding
        1.  Next iteration through the main loop will then pick-up
        new parameter instead of the value for the previously
        processed command. Parameter parsing 101.
        
    client/
        boinc_log.cpp

svn path=/trunk/boinc/; revision=19700
2009-11-24 22:40:01 +00:00
Rom Walton dff233f517 ops
svn path=/trunk/boinc/; revision=19698
2009-11-24 21:16:09 +00:00
Rom Walton 45e359eabf - log: Introduce the ability to specify where the data directory is
in case we are attempting to talk to a 5.10 client.
        
    client/
        boinc_log.cpp

svn path=/trunk/boinc/; revision=19696
2009-11-24 20:25:15 +00:00
Rom Walton 9c246111e0 - log: Use the standard BOINC time logging rountine for reporting
date and time information instead of RFCXXXX.
    - log: Remove the ending newline character from the messages before
        looking for any newline characters which would appear in
        multi-line messages like those from http_debug.
        
    client/
        boinc_log.cpp

svn path=/trunk/boinc/; revision=19695
2009-11-24 20:15:41 +00:00
Rom Walton aab93bc899 ops
svn path=/trunk/boinc/; revision=19688
2009-11-24 17:02:52 +00:00
Rom Walton 3fc5f6581b - Introduce boinclog, it basically creates a tab delimited file using
the message log cache of the client.  Useful for debugging debt
        related issues using Excel or various databases.
        
    client/
        boinc_cmd.cpp
        boinc_log.cpp
    win_build/
        boinclog.vcproj (added)

svn path=/trunk/boinc/; revision=19686
2009-11-24 05:26:45 +00:00
David Anderson 14fd0a3f33 - client: show more general prefs on startup
- manager: show status for jobs aborted because not started by deadline

svn path=/trunk/boinc/; revision=19678
2009-11-23 22:47:10 +00:00
David Anderson f31e46f13b - change project_list.php so that it shows platform[plan_class].
That way the client can know which projects have GPU
    and multithread apps.
- client: message tweak


svn path=/trunk/boinc/; revision=19589
2009-11-17 21:38:44 +00:00
David Anderson 98d9cfae6f - client: fix exclusive_gpu_app feature so that it responds
within 10 sec instead of 60 sec

svn path=/trunk/boinc/; revision=19577
2009-11-13 21:57:25 +00:00
Rom Walton 329303b323 - Remove need for boinc.dll from the client.
client/
        hostinfo_win.cpp
        main.cpp
    clientctrl/
        boincsvcctrl.cpp
    clientgui/
        BOINCClientManager.cpp
        BOINCGUIApp.cpp
        BOINCGUIApp.h
        stdwx.h
    clienttray/
        tray_win.cpp
        tray_win.h
    lib/
        boinc_win.h
        daemonmgt.cpp (Deleted)
        daemonmgt.h (Added)
        daemonmgt_win.cpp (Added)
        idlemon.h (Added)
        idlemon_win.cpp (Added)
        idlemon_win.h (Deleted)
    win_build/
        boinc.sln
        boinc_dll.vcproj
        boincmgr.vcproj
        boincsvcctrl.vcproj
        boinctray.vcproj
        libboinc.vcproj

svn path=/trunk/boinc/; revision=19576
2009-11-13 21:23:15 +00:00
David Anderson e057c552d8 - client: add <exclusive_gpu_app> option:
suspend GPU usage when particular apps are running

svn path=/trunk/boinc/; revision=19573
2009-11-13 17:49:18 +00:00
David Anderson 4bf2ef5198 - client: add new config options:
<ignore_cuda_dev>n</ignore_cuda_dev>
    <ignore_ati_dev>n</ignore_ati_dev>
    to ignore (not use) specific NVIDIA or ATI GPUs.
    You can ignore more than one.

svn path=/trunk/boinc/; revision=19566
2009-11-12 23:44:49 +00:00
David Anderson 56efa3ec27 - client: if a project has a no_{cpu,cuda,ati} pref set,
don't accumulate debt for that resource.
    Otherwise we'll accumulate debt forever,
    pushing other projects into overworked state.

svn path=/trunk/boinc/; revision=19547
2009-11-12 17:19:50 +00:00
David Anderson 8f89dc58d8 - client: fix yesterday's checkin to remove restrictions
on GUI RPC request elements.
    You can now use either <foo></foo> or <foo/>
    for empty request messages.
- GUI RPC client library: fix double-free bug.
    it's not clear how this ever worked.

svn path=/trunk/boinc/; revision=19543
2009-11-11 22:01:27 +00:00
David Anderson b3536b414f - client: handle no_cpu, no_cuda, no_ati prefs correctly
when they're in venue-specific prefs.

svn path=/trunk/boinc/; revision=19537
2009-11-11 00:36:07 +00:00
David Anderson a02630589c - client (Unix): use waitpid(-1, ...) instead of waitpid(0, ...).
This reaps child processes even if they've changed their process group
    (from Michael Melanson)


svn path=/trunk/boinc/; revision=19536
2009-11-11 00:28:51 +00:00
David Anderson 892e75ca6f - client: the handling of GUI RPCs was inconsistent;
some expected <request>, some expected <request/>,
    and some would accept either.
    Changed them all to accept either.


svn path=/trunk/boinc/; revision=19535
2009-11-11 00:15:25 +00:00
David Anderson 74c0223861 - client: fix bug that crashed client if client_state.xml
had garbage within <file_info>

svn path=/trunk/boinc/; revision=19525
2009-11-10 05:42:51 +00:00
David Anderson 45aef88650 - scheduler: maintain WORK_REQ::no_jobs_available correctly
for locality scheduling
- client: avoid spurious error message when parsing
    <proxy_info> from cc_config.xml

svn path=/trunk/boinc/; revision=19524
2009-11-09 23:25:04 +00:00
David Anderson a01966056f - client: add --no_gpus cmdline option
svn path=/trunk/boinc/; revision=19523
2009-11-09 20:00:45 +00:00
David Anderson 609872edf7 - client: the checkin of 15 Oct related to multi-thread apps
didn't work due to a typo.
    - client: if <ncpus> is present in cc_config.xml,
        we're supposed to act as if there were that many physical CPUs.
        In particular, we need to set host_info.p_ncpus to that value,
        since that's what is reported in scheduler requests.

svn path=/trunk/boinc/; revision=19522
2009-11-09 19:51:31 +00:00
David Anderson 177fae6e08 - client: parse HTTP_PROXY strings of the form
http://username:passwd@host.dom.dom:port/file
    (we weren't parsing the username and password before).
- client: fix the feature that lets you exclude a list of hosts
    from going through the proxy.

svn path=/trunk/boinc/; revision=19513
2009-11-07 06:00:08 +00:00
David Anderson 0e282a4aa6 Win compile fixes
svn path=/trunk/boinc/; revision=19481
2009-11-05 18:11:20 +00:00
David Anderson b29f920999 - Move URL-related code to a new file
- Remove stuff related to SOCKS version, since we only support 5

svn path=/trunk/boinc/; revision=19480
2009-11-05 18:02:51 +00:00
Rom Walton 5bf5e10368 Quick Updates
svn path=/trunk/boinc/; revision=19453
2009-11-04 16:28:56 +00:00
Rom Walton 302ba83a53 Quick Updates
svn path=/trunk/boinc/; revision=19452
2009-11-04 16:26:25 +00:00
Rom Walton 7c70c3b6e4 - client: Fix linux build break.
client
        cs_platforms.cpp

svn path=/trunk/boinc/; revision=19451
2009-11-04 16:21:52 +00:00
Rom Walton 62051719cc - client: cleanup formatting of linux platform detection code.
client/
        cs_platforms.cpp

svn path=/trunk/boinc/; revision=19384
2009-10-27 03:01:23 +00:00
David Anderson 42ea9a059f svn path=/trunk/boinc/; revision=19376 2009-10-23 22:18:00 +00:00
David Anderson 545d137804 - client: no network activity if running CPU benchmarks
svn path=/trunk/boinc/; revision=19375
2009-10-23 21:57:58 +00:00
Rom Walton fe4a8fabb2 - client: If an administrator has deployed proxy settings at runtime or
during a VPN connection allow the client to read the new proxy
        configuration from the registry.
        
    client/
        sysmon_win.cpp

svn path=/trunk/boinc/; revision=19370
2009-10-23 16:52:50 +00:00
David Anderson 58417461d0 - client: multi-thread jobs were being given too high priority;
in particular, they were preempting jobs in the middle of time slice.
    Solution:
    1) don't use MT in the sort order defined by more_important().
    2) add a 2nd reordering in which MT jobs are moved ahead
        of non-MT jobs, but only if #CPUs used is < #CPUs
        (see promote_multi_thread_jobs())

svn path=/trunk/boinc/; revision=19312
2009-10-16 17:22:33 +00:00
David Anderson e86584f6cc - client: the weight of GPU debt in computing total debt should be
(estimated throughput of all GPUs)/(estimated throughput of all CPUs)
    rather than the ratio of 1 GPU to 1 CPU.
    This change will hopefully cause ratios of granted credit
    to more closely match resource shares.

svn path=/trunk/boinc/; revision=19311
2009-10-16 02:48:55 +00:00
David Anderson fe2a18f282 - client/scheduler: standardize the FLOPS estimate between NVIDIA and ATI.
Make them both peak FLOPS,
    according to the formula supplied by the manufacturer.

    The impact on the client is minor:
    - the startup message describing the GPU
    - the weight of the resource type in computing long-term debt

    On the server, I changed the example app_plan() function
    to assume that app FLOPS is 20% of peak FLOPS
    (that's about what it is for SETI@home)

svn path=/trunk/boinc/; revision=19310
2009-10-16 00:13:01 +00:00
David Anderson 9f93535428 - client: bug fixes to the above.
Don't fetch work for an unable resource.

svn path=/trunk/boinc/; revision=19302
2009-10-14 19:11:11 +00:00
David Anderson d6efa7dabb - client: address the situation where GPUs become unusable
for certain periods (e.g. when Remote Desktop is used on Win).
    - add is_usable() member function to COPROC.
        Currently this just calls the respective (CUDA or CAL)
        initialization function.
        We need to check whether this works and/or causes problems.
    - in enforce_schedule(), check whether usability has changed
        for each GPU type.
        If we've gone from usable to unusable,
        flag all jobs for that GPU as coproc_missing
        (so they won't get run, and will quit if they're running).
        If we've gone from unusable to usable, clear the flag.
    This should deal with all cases except where
    the client is started up with GPUs unusable.
- scheduler: more query optimizations for locality scheduling
    (from Oliver Bock)

svn path=/trunk/boinc/; revision=19301
2009-10-14 18:07:49 +00:00
David Anderson b0d44d7564 - client: don't multiply checkpoint interval (i.e., "disk interval" pref)
by # processors.
- web: change description of pref to
    "Applications checkpoint to disk at most every ..."

svn path=/trunk/boinc/; revision=19293
2009-10-12 23:54:02 +00:00
David Anderson 656441dc3b svn path=/trunk/boinc/; revision=19292 2009-10-12 22:45:44 +00:00
David Anderson 626d24f5a5 - client: the get_all_projects_list() RPC doesn't require auth
svn path=/trunk/boinc/; revision=19289
2009-10-12 18:01:11 +00:00
David Anderson 5e862ac495 - client: on startup, if a coproc needed by a job is missing,
set a "coproc_missing" flag rather than aborting the job.
        If use removes a GPU board while there's a large queue of GPU jobs,
        they'll stay queued (until their deadline passes).

        Note: this doesn't fix the situation where user connects via
        Remote Desktop while GPU jobs are running or queued.
        We should check for Remote Desktop every minute or so, and stop GPU jobs.

svn path=/trunk/boinc/; revision=19287
2009-10-12 16:28:17 +00:00
David Anderson f5de278719 - client: if anonymous platform description (app_info.xml)
doesn't specify FLOPS for a GPU app,
    assume that it runs at CPU peak speed rather than GPU peak speed.
    Better to be conservative, otherwise job might be aborted
    due to time limit exceeded.

svn path=/trunk/boinc/; revision=19282
2009-10-07 20:23:14 +00:00
David Anderson 54b078d0af - client: add --unsigned_apps_ok cmdline option
and <unsigned_apps_ok> config option.
    This tells the client to allow unsigned apps.
    For testing.
    No file xfers or other network traffic will be allowed if set.
- client: add <exit_after_finish> option (same as cmdline flag)
- client: add <skip_cpu_benchmarks> option (same as cmdline flag)
- client: print message if abort past-deadline unstarted job
- client: improve message when have NVIDIA drivers but no GPU
    

svn path=/trunk/boinc/; revision=19276
2009-10-07 18:42:51 +00:00
David Anderson 39f66e6abd - client: remove redundant 0s in job log
- user web: remove some PHP warnings (from Oliver Bock)

svn path=/trunk/boinc/; revision=19272
2009-10-06 20:35:28 +00:00
Rom Walton 10fb940425 - client: Fix crash that was introduced 7 months ago.
(From Nicolás Alvarez)
        
    client/
        app_control.cpp


svn path=/trunk/boinc/; revision=19265
2009-10-05 22:42:06 +00:00
David Anderson 4ab5685ce4 - client: if a task is running, uses a GPU, and the system has >1 GPU,
append text to its resource string saying which GPU it's using
- manager: tweak Task properties text

svn path=/trunk/boinc/; revision=19240
2009-10-04 02:51:44 +00:00
David Anderson dccb097eff - client: improve coproc_debug messages
svn path=/trunk/boinc/; revision=19239
2009-10-04 00:20:28 +00:00
David Anderson 94cbb0d2dc - client: make the order of the result vector
consistent with the order used to select coproc jobs


svn path=/trunk/boinc/; revision=19238
2009-10-03 03:07:03 +00:00