Commit Graph

4383 Commits

Author SHA1 Message Date
David Anderson 4763f5c1a0 - client: don't call CLIENT_STATE::free_mem() on shutdown.
This is for debugging only, and it can cause crashes.


svn path=/trunk/boinc/; revision=24281
2011-09-23 22:27:50 +00:00
David Anderson 4f14dadceb - client: fix spurious error message about trickle-up URLs
svn path=/trunk/boinc/; revision=24280
2011-09-23 22:14:49 +00:00
Rom Walton 76b49ae8f5 Quick Updates
svn path=/trunk/boinc/; revision=24268
2011-09-22 22:31:15 +00:00
David Anderson 96feb0014c - client: replicated trickles. Seems to be working now.
- client: added <trickle_debug> config option

svn path=/trunk/boinc/; revision=24265
2011-09-22 18:52:21 +00:00
David Anderson 5cbcd9a137 - client: more work on replicated trickles. Not working yet.
svn path=/trunk/boinc/; revision=24263
2011-09-22 17:30:57 +00:00
David Anderson 3a7def077a - client: more stuff for replicated trickle ups
svn path=/trunk/boinc/; revision=24255
2011-09-22 05:39:42 +00:00
David Anderson 9a7d25966c - client: fix bug in ATI GPU detection, caused zero RAM measurements
svn path=/trunk/boinc/; revision=24251
2011-09-21 22:25:08 +00:00
Rom Walton 11c9b6015e fix build break
svn path=/trunk/boinc/; revision=24249
2011-09-21 19:18:22 +00:00
David Anderson 9d2d540267 - client: intermediate checkin for replicated trickle-ups.
Not finished yet.
- example app: add --trickle_up and --trickle_down options,
    for testing trickle messages


svn path=/trunk/boinc/; revision=24245
2011-09-20 18:49:38 +00:00
David Anderson 0e3d27961c - client: in handling the acct_mgr GUI RPC,
don't start the RPC directly;
    that might fail if CLIENT_STATE::gui_http is busy.
    Instead, set a timer field.
- client: structure ACCT_MGR_OP the same as other GUI_HTTP_OP variants
- client: clarify the comments on GUI_HTTP and GUI_HTTP_OP

Note: GUI_HTTP and GUI_HTTP_OP are misnomers; they refer to
any HTTP op other than scheduler requests and file transfers.
Should change the name, maybe to CLIENT_HTTP*


svn path=/trunk/boinc/; revision=24238
2011-09-19 21:15:36 +00:00
David Anderson c61103ac26 - client: make the attributes of GUI RPCs (network, authentication)
explicit rather than determined by position in a list.
- client: add a new "read-only" attribute for GUI RPCs.
    This is in preparation for handling GUI RPCs in separate threads.
- client: remove code to support pre-V6 graphics.


svn path=/trunk/boinc/; revision=24232
2011-09-18 21:06:49 +00:00
David Anderson d8f20bceea - vboxwrapper: report network usage to the client
- client: include the above in enforcing network quota preferences


svn path=/trunk/boinc/; revision=24227
2011-09-16 19:16:12 +00:00
David Anderson e0956b06df - minor code shuffle
svn path=/trunk/boinc/; revision=24222
2011-09-15 17:12:18 +00:00
David Anderson 4f21108bc2 - fix compile warnings
svn path=/trunk/boinc/; revision=24212
2011-09-14 23:22:48 +00:00
David Anderson 7411dd60aa - client: change in the use of GPU available RAM:
- measure the available RAM of each GPU when BOINC starts up.
        If this fails, set available = physical.
        Show available RAM in startup messages.
    - use available RAM rather than physical RAM in selecting
        the "best" GPU instance
    - report available RAM to the scheduler
TODO: change the scheduler to use available rather than physical
    if it's reported


svn path=/trunk/boinc/; revision=24210
2011-09-14 22:45:26 +00:00
Rom Walton 9e1cafbf4d Quick Updates
svn path=/trunk/boinc/; revision=24209
2011-09-14 22:09:12 +00:00
Rom Walton c2e922b3df - client: Update Windows detection code to support Windows 8.
(From: [P3D] Crashtest)
        
    client/
        hostinfo_win.cpp

svn path=/trunk/boinc/; revision=24208
2011-09-14 22:03:16 +00:00
David Anderson 9dddcdb10c - XML parsing: do XML unescaping in place rather than allocating
a buffer on the stack.
    Fixes a Manager crash on the Mac,
    where the default thread stack size seems to be 512KB.


svn path=/trunk/boinc/; revision=24206
2011-09-14 17:58:53 +00:00
David Anderson 1c039bab77 - client: curl_easy_escape() escapes way too much. Just escape spaces.
svn path=/trunk/boinc/; revision=24205
2011-09-14 06:45:04 +00:00
David Anderson 11a5372961 - client: escape URLs for curl, otherwise filenames with spaces don't work
svn path=/trunk/boinc/; revision=24204
2011-09-14 05:44:09 +00:00
David Anderson 74c77c865a - client: fixes to the above
- client: prevent infinite recursion (and stack overflow)
        in procinfo.cpp:add_child_totals().
        Not sure how this could happen.

svn path=/trunk/boinc/; revision=24191
2011-09-13 23:57:44 +00:00
David Anderson 7f2a3c0ce1 - client: get GPU available RAM at startup (only)
- client: fix compile warning


svn path=/trunk/boinc/; revision=24188
2011-09-13 22:58:39 +00:00
David Anderson 55b9d48deb - client, GUI RPC, Manager:
in GUI RPC, change RESULT.gpu_mem_wait to scheduler_wait.
    It means that the app did a boinc_temporary_exit(),
    and is waiting to be rescheduled.
    GPU mem wait is one source of this, not the only one


svn path=/trunk/boinc/; revision=24176
2011-09-13 05:54:55 +00:00
David Anderson bdd0abf9ec - client: make file upload work w/ old handlers
svn path=/trunk/boinc/; revision=24173
2011-09-13 00:51:20 +00:00
David Anderson 9856f795ed - client: remove code related to debt-based scheduling
svn path=/trunk/boinc/; revision=24163
2011-09-12 17:57:31 +00:00
David Anderson be1d379f6a - client: message tweak
svn path=/trunk/boinc/; revision=24162
2011-09-12 17:22:36 +00:00
David Anderson f81cb82b8e - client: make RR simulation more accurate
by simulating time-slicing explicitly.
    Also simulate changes in project REC
    and hence in scheduling priority.
- client: add a log flag "rrsim_detail" that prints
    time-slice-level info.


svn path=/trunk/boinc/; revision=24161
2011-09-12 17:01:54 +00:00
David Anderson 8b5344e922 - client: finish next-to-last checkin
svn path=/trunk/boinc/; revision=24157
2011-09-11 17:26:31 +00:00
David Anderson a858fe79d7 - client: don't pass --gpu_type to GPU apps;
this breaks many existing apps.
    Instead, pass the GPU type (and the device number)
    in app_init_data.xml


svn path=/trunk/boinc/; revision=24155
2011-09-11 03:28:22 +00:00
David Anderson e9d37aa65e - client: XML-escape the URLs in RSS feed lists
- lib: make xml_unescape work for arbitrarily large strings


svn path=/trunk/boinc/; revision=24154
2011-09-09 20:13:35 +00:00
David Anderson 760c16eb03 - scheduler: in work_needed(), ignore requests for resource
types for which we have no app versions
- client: if too many <coproc> elements in cc_config.xml,
    detect it and inform user


svn path=/trunk/boinc/; revision=24144
2011-09-08 18:55:55 +00:00
David Anderson 3fe4507e37 - client: make exit_before_start a cc_config.xml option
(as well as a cmdline option)
- wrapper: print error messages if stdin/out/err files don't exist


svn path=/trunk/boinc/; revision=24143
2011-09-07 22:45:00 +00:00
David Anderson 8cd20da680 - client: fix bugs with white space around code sign keys
and file signatures
	- client: when describing app versions in scheduler requests,
		we still must use CUDA instead of NVIDIA; that's what's in the server code.

svn path=/trunk/boinc/; revision=24135
2011-09-06 22:50:46 +00:00
David Anderson fa419731dd - scheduler RPC: add <override_file_present> element to
the <working_global_preferences> element in
    scheduler RPC request
    (tells the server that there's an override file).
- account manager RPC: add <working_global_preferences> element,
    including the override flag.
- web: add "no time limit" option for forum search
- web: increase show-user-post query limit to 10000


svn path=/trunk/boinc/; revision=24129
2011-09-06 04:34:29 +00:00
David Anderson 4e946854c1 - client/API/vboxwrapper:
add a mechanism so that apps can report sub-processes
    that are not descendants (e.g., virtual machines)
    These processes are then counted as part of the app,
    not as "non-BOINC CPU time".
    This fixes a bug where processing was incorrectly suspended
    because CPU usage by VM apps exceeded the "CPU usage limit" pref.

    Implementation:
    - the PIDs of the processes in question
        are passed from app to client via shared-memory,
        in the app_status channel.
        A new variant of boinc_report_app_status() supports this.
    - the VBox wrapper queries the PID of the VM,
        and reports it in this way.
    - procinfo_app() includes a new argument: a list of PIDs
        that are part of the app, although not ancestrally
        related to the main process.
    - in the client, ACTIVE_TASK now includes a vector "other_pids".
        If this is nonempty, it's passed to procinfo_app().


svn path=/trunk/boinc/; revision=24123
2011-09-02 20:47:05 +00:00
David Anderson 4778836022 - Win compile fixes
svn path=/trunk/boinc/; revision=24122
2011-09-02 18:47:15 +00:00
David Anderson 8ad9d7d98b - more code shuffling:
proc_control: controlling processes
    procinfo: enumerating and querying processes
    run_app_windows: launching apps as other users on Win


svn path=/trunk/boinc/; revision=24120
2011-09-02 18:23:13 +00:00
David Anderson b16f603a8a - client (and API and manager): change the data structure
used for system process info
    Old: vector of PROCINFO.
        Descendants of a process were found by recursively
        iterating through the vector.
        Operations are O(n)
    New: map of (id, PROCINFO),
        and each PROCINFO has a vector of its children.
        Operations are O(log(n))
    Also combined Mac/Win/Linux variants of code that
    was essentially the same.


svn path=/trunk/boinc/; revision=24117
2011-09-02 17:45:29 +00:00
David Anderson c0f977b19c - client: fix bugs related to white space around code signing keys
- win compile fixes

svn path=/trunk/boinc/; revision=24095
2011-08-31 16:36:17 +00:00
Charlie Fenton 97f5146f2a define GPU_TYPE_NVIDIA, GPU_TYPE_ATI, use everywhere instead of literal strings "NVIDIA" and "ATI" to ensure uniformity
svn path=/trunk/boinc/; revision=24090
2011-08-31 11:08:13 +00:00
David Anderson 1bf54d11ff - client: send all running jobs a "reread app info" message
when global prefs change
    (they might have to suspend or resume network activity)


svn path=/trunk/boinc/; revision=24084
2011-08-30 21:34:27 +00:00
David Anderson dde093a021 - client: fix a couple of valgrind warnings
svn path=/trunk/boinc/; revision=24076
2011-08-30 15:36:31 +00:00
David Anderson 0476254e15 - client: fix bug that caused project attach to fail
- clientgui: Rom, we should do error-checking of most GUI RPCs;
		look for REPORT ERROR in ProjectProcessingPage.cpp

svn path=/trunk/boinc/; revision=24059
2011-08-27 18:32:47 +00:00
David Anderson bd0897b92c - manager: Communitcations -> Communications.
please, no spelling errors in function/variable names
- client: parse deprecated tags in <file_info>


svn path=/trunk/boinc/; revision=24058
2011-08-27 18:07:28 +00:00
David Anderson 38de5c3e6b - client: fix bug where NVIDIA display driver version wasn't being
set correctly for some laptop GPUs
- client/server: improve estimation of NVIDIA GPU peak FLOPS


svn path=/trunk/boinc/; revision=24046
2011-08-25 15:37:55 +00:00
Charlie Fenton f30f4eb3b1 client: fix Linux compile warnings
svn path=/trunk/boinc/; revision=24041
2011-08-25 08:11:03 +00:00
David Anderson 76d6e67459 - client: pass --gpu_type X (X=nvidia or ati) as well as --device.
This lets device-neutral OpenCL apps figure out which GPU to use.


svn path=/trunk/boinc/; revision=24040
2011-08-25 06:33:35 +00:00
Charlie Fenton 0e7909c97b lib, client: revert recent changes to restore unsigned long long so we can determine cause of Linux build errors
svn path=/trunk/boinc/; revision=24035
2011-08-24 21:41:02 +00:00
Charlie Fenton 6697484f84 client: fix compiler warnings on Mac and Ubuntu
svn path=/trunk/boinc/; revision=24034
2011-08-24 08:17:34 +00:00
David Anderson aff8c96f99 - fix linux build errors in coproc stuff.
I don't think unsigned long long is relevant here.


svn path=/trunk/boinc/; revision=24031
2011-08-24 00:51:20 +00:00