Commit Graph

4487 Commits

Author SHA1 Message Date
David Anderson fc6d530a6c - client: shuffle disk usage code in preparation for disk accounting
- use new XML parser in some GUI RPC code


svn path=/trunk/boinc/; revision=24925
2011-12-28 14:52:03 +00:00
Rom Walton 9298b7ff6e - client: increase the buffer sizes for retrieving cpu features on *nix
type systems.  the latest generation of processors blow past 256 bytes
        and vmx and svm are truncated.
        
    client/
        hostinfo_unix.cpp

svn path=/trunk/boinc/; revision=24924
2011-12-28 13:12:21 +00:00
David Anderson 361877a59f - client: detect Windows HyperV Server 2008 R2 (from Crashtest)
svn path=/trunk/boinc/; revision=24921
2011-12-28 00:22:20 +00:00
David Anderson c28a4ef659 - make "needs network" a property of APP_VERSION rather than APP
svn path=/trunk/boinc/; revision=24900
2011-12-26 04:56:36 +00:00
David Anderson b003b8e290 - add support for APP::needs_network flag.
If set, don't run jobs for that app while network is suspended.
		- client: parse this flag and maintain in state file;
			do a job reschedule when network suspend state changes
		- GUI RPC: add RESULT::network_wait flag;
			if set, this job is waiting for network access to be allowed
		- Manager: display the above in task info
	- add support for "web graphics URL" (see above)
		- client: parse message containing URL on graphics_reply channel
			and store in ACTIVE_TASK::web_graphics_url
		- GUI RPC: add RESULT::web_graphics_url
		- Manager: if web graphics URL is present, Show Graphics opens a browser
	- remove some vestigial code for pre-V6 graphics

svn path=/trunk/boinc/; revision=24899
2011-12-26 03:30:32 +00:00
David Anderson 83f91025e7 - client: if we're trying to upload a file and it's missing,
that's a permanent error


svn path=/trunk/boinc/; revision=24821
2011-12-17 05:36:45 +00:00
David Anderson 5c02170d5a - storage simulator: add stats for network load and fault tolerance.
- client: msg tweak
- client: minimum work buffer lower bound is 180 sec
- scheduler: in computing HOST_USAGE::project_flops for a job,
    if we don't have sufficient elapsed_time statistics
    for either the (host, app_version) or the app_version,
    use a conservative estimate (p_fpops*(#cpus+#ngpus))
    rather than the number returned by app_plan().
    This avoids "time limit exceeded" errors when the latter is way off.


svn path=/trunk/boinc/; revision=24820
2011-12-16 19:45:31 +00:00
Rom Walton ade8957656 Quick Updates
svn path=/trunk/boinc/; revision=24788
2011-12-14 00:24:34 +00:00
David Anderson 4e95e690f8 - client: tweak parameters of file xfer backoff to
reduce backoff intervals somewhat
- vboxwrapper: fix buffer size typo (from Attila)
- scheduler: fix crash if using homogeneous app version,
    and a WU is committed to an old or deprecated app version.
    From Kevin Reed.


svn path=/trunk/boinc/; revision=24775
2011-12-12 22:07:37 +00:00
Rom Walton 9c7c7a22ad Quick Updates
svn path=/trunk/boinc/; revision=24773
2011-12-10 16:46:42 +00:00
David Anderson c00cd86d2f - client: if a file download was in progress at the time of
an upgrade from 6.12 to 6.13+,
    it could get erroneously marked as an upload and get stuck forever.
    Problem: uninitialized member.


svn path=/trunk/boinc/; revision=24744
2011-12-06 16:56:27 +00:00
David Anderson 69834e0c01 - client: compile fix; remove redundant total_peak_flops()
svn path=/trunk/boinc/; revision=24738
2011-12-06 09:20:30 +00:00
David Anderson bc35060726 - client: when contacting a project for reasons other than
work fetch (e.g. to report completed jobs)
    only request work if it's the project we would have chosen
    if we were fetching work.
- client: the way in which project priorities were adjusted
    in work fetch to reflected currently queued work was wrong.
- client: fix bug in the way project priorities are adjusted
    in RR simulator
- client emulator: if there are results in the state file
    with states DOWNLOADING or UPLOADING,
    change them to DOWNLOADED or UPLOADED.
    Otherwise they're stuck.


svn path=/trunk/boinc/; revision=24737
2011-12-06 04:21:27 +00:00
David Anderson e8027a224e - client: isdigit() asserts if its arg is negative (which it can be).
Call isascii() first.
	- GUI RPC lib: add some consts

svn path=/trunk/boinc/; revision=24726
2011-12-04 19:02:36 +00:00
David Anderson dd93780787 - API and client: add "ncpus" field to APP_INIT_DATA.
Tells multicore apps how many cores to use.
    The --nthreads command line arg to the app is now deprecated
    though we'll keep it around for the time being.


svn path=/trunk/boinc/; revision=24708
2011-12-01 18:44:19 +00:00
David Anderson d8fc87fd17 - client: fix errors in transferring RAM info between CAL and OpenCL.
(bytes vs MB units, local/global terminology issue).
    From Oliver Bock>


svn path=/trunk/boinc/; revision=24650
2011-11-25 18:59:36 +00:00
David Anderson 0d37f69a6a - client emulator fixes
svn path=/trunk/boinc/; revision=24644
2011-11-22 07:47:45 +00:00
David Anderson 5e671e4230 - client: on network_available() GUI RPC,
clear project-level upload and download backoffs,
    as well as RPC and individual xfer backoffs.
    This was an oversight.


svn path=/trunk/boinc/; revision=24621
2011-11-20 09:18:12 +00:00
David Anderson 8877aa5183 - web: in GPU model list page,
look for plan classes containing "nvidia" as well as "cuda".


svn path=/trunk/boinc/; revision=24614
2011-11-16 19:47:40 +00:00
David Anderson ae7681c026 - client: add some missing items to CONFIG::parse_options_client().
svn path=/trunk/boinc/; revision=24598
2011-11-15 07:50:02 +00:00
David Anderson 9cf4fc76d0 - client: improve messages for the above
svn path=/trunk/boinc/; revision=24594
2011-11-14 23:45:08 +00:00
David Anderson a7e7da6bff - client: show error messages (as notices) when get an error
parsing cc_config.xml
- client: if an <exclude_cpu> element in cc_config.xml
    specifies a nonexistent app, show an error msg with
    a list of existing app names
- web: increase the default mem limit from 64MB to 256MB
    TODO: change user_hosts.php to show N at a time


svn path=/trunk/boinc/; revision=24593
2011-11-14 23:31:12 +00:00
David Anderson a4f09b9c1b - intermediate checkin so that I can edit on Unix
svn path=/trunk/boinc/; revision=24592
2011-11-14 23:05:42 +00:00
David Anderson 2ac9fe8566 - client/scheduler:
If the file "client_opaque.txt" exists on the client,
    include its contents in scheduler request messages.
    On the scheduler, parse this into SCHEDULER_REQUEST::client_opaque,
    where it can be used by the customizable scheduler functions.


svn path=/trunk/boinc/; revision=24586
2011-11-14 06:27:36 +00:00
David Anderson 0e823f6734 - client: check return value of FILE_REF when parse project file.
Fixes crashing bug.


svn path=/trunk/boinc/; revision=24579
2011-11-11 17:18:04 +00:00
Charlie Fenton 248c9e8bc7 MGR & client: On Mac, to work around bug in XCode 4.2, ignore command line arg "-NSDocumentRevisionsDebugMode=YES"
svn path=/trunk/boinc/; revision=24575
2011-11-10 22:53:12 +00:00
David Anderson 56e5a2c089 - scheduler: compute result.report_deadline BEFORE passing it
as an arg to update_wu_on_send()


svn path=/trunk/boinc/; revision=24567
2011-11-09 23:50:09 +00:00
David Anderson 5d29a21594 - client: on transient upload failure, don't do start_xfer()
within PERS_FILE_XFER::transient_failure();
		we're about to delete and free the FILE_XFER.
		The transfer will be restarted in the next poll.

svn path=/trunk/boinc/; revision=24549
2011-11-08 05:49:24 +00:00
Rom Walton 6d5af38040 Quick Updates
svn path=/trunk/boinc/; revision=24542
2011-11-07 19:47:40 +00:00
Rom Walton 1d4dc5a762 - client: reduce complexity, possibly get rid of a crash condition
on 64-bit Windows.
        
    client/
        cs_prefs.cpp

svn path=/trunk/boinc/; revision=24541
2011-11-07 19:39:15 +00:00
David Anderson 312c44415d - client: condition RR sim negative FLOPs message on rr_simulation.
svn path=/trunk/boinc/; revision=24540
2011-11-07 18:53:37 +00:00
David Anderson 98ba6807ab svn path=/trunk/boinc/; revision=24537 2011-11-07 05:12:02 +00:00
David Anderson 5b04b249db - check in trickle crash fix
svn path=/trunk/boinc/; revision=24536
2011-11-07 03:46:03 +00:00
David Anderson ae04b50a71 - client: don't crash if trickle up exceeds 64KB
(this bug was introduced Sept 20)
- scheduler: truncate long trickle-ups to 256KB; don't crash


svn path=/trunk/boinc/; revision=24535
2011-11-06 06:25:48 +00:00
David Anderson b818a86ea8 svn path=/trunk/boinc/; revision=24533 2011-11-05 04:30:15 +00:00
David Anderson c317f4b721 - client: attempt to fix bug reported by John McLeod,
where the client crashes after giving up (90 day timeout) on an upload.
    I'm guessing this was caused by [24391],
    which changed the order in the poll loop from
        garbage_collect
        file_xfers->poll
        pers_file_xfers->poll
        handle_pers_file_xfers
    to
        garbage_collect
        handle_pers_file_xfers
        file_xfers->poll
        pers_file_xfers->poll
    I don't understand why this would have caused a crash,
    but so be it.
    I restored the original order, but with handle_pers_file_xfers
    not inside the if (!network_suspended).
- client renamed handle_pers_file_xfers() to
    create_and_delete_pers_file_xfers()
- client simulator: show simulator CPU time


svn path=/trunk/boinc/; revision=24531
2011-11-04 20:25:30 +00:00
David Anderson fb568462c6 - client: fix compile warning
svn path=/trunk/boinc/; revision=24527
2011-11-04 17:02:36 +00:00
Charlie Fenton c830ed59c3 client: fix errors in (currently unused) get_max_cpu_temperature() code for Macintosh
svn path=/trunk/boinc/; revision=24526
2011-11-04 11:30:57 +00:00
Charlie Fenton bdf5cf405d client: Fix compile error
svn path=/trunk/boinc/; revision=24524
2011-11-04 09:27:01 +00:00
David Anderson 07e54fc86b - client: fix work fetch bug.
If we're contacting a project to report results,
    only piggyback work requests for resources for which
    that project is the highest priority that may have work.
- client: compute result.not_started more efficiently

TODO: continue efficiency work.  There's still some quadratic stuff


svn path=/trunk/boinc/; revision=24523
2011-11-04 08:15:04 +00:00
David Anderson 15b5e6e6a7 - client: show GPU exclusions at startup
(need to do this after reading the state file,
		since GPU exclusions refer to projects).
	- client: fix bug that added garbage <coproc> element
		to <app_version> in state file when using GPU exclusions


svn path=/trunk/boinc/; revision=24522
2011-11-03 22:27:20 +00:00
David Anderson ad2f3771da - client: fix bugs when writing/parsing cc_config.xml via GUI RPCs
(e.g. when editing it via the Manager).
    Include only the GPUs that were specified in the original cc_config.xml,
    not those detected by the client.
- client: fix bug that failed to require authorization for
    GUI RPCs that are supposed to be authorized
- client: report parse errors in acct_mgr_url.xml and acct_mgr_login.xml
- fix compile warnings
- user web: in sample project_specific_prefs.inc,
    get app names from the DB instead of listing them in the PHP code.


svn path=/trunk/boinc/; revision=24518
2011-11-03 19:19:36 +00:00
David Anderson 497c08b5c2 - scheduler: in update_wu_on_send(), always try to update
the hr_class and app_version_id fields,
    with the where clause that they be either zero or the target value.
    This handles the cases where
    1) because of the failure of a results, the transitioner set
        the field back to zero;
    2) another scheduler set the field to the target value


svn path=/trunk/boinc/; revision=24513
2011-11-03 06:46:05 +00:00
David Anderson 010b11406b - API: fix bug in boinc_get_opencl_ids()
- add simulator for distributed storage (not finished)


svn path=/trunk/boinc/; revision=24511
2011-11-03 03:29:07 +00:00
Rom Walton 687195e7f0 Quick Updates
svn path=/trunk/boinc/; revision=24510
2011-11-03 02:35:04 +00:00
David Anderson d2e5ed17cf - client: smoothed working-set size wasn't being computed correctly.
It was always just the most recent size.


svn path=/trunk/boinc/; revision=24500
2011-10-26 23:23:01 +00:00
David Anderson dd1b4df668 - client: fix typo in project parse code
svn path=/trunk/boinc/; revision=24497
2011-10-26 21:45:17 +00:00
David Anderson 6297bdbc77 - web: typo in forum RSS from Daniel L G; fixes #1147
- client: message tweak


svn path=/trunk/boinc/; revision=24483
2011-10-25 17:22:18 +00:00
David Anderson 2206e86bb4 - client: free mem on exit if debug mode
svn path=/trunk/boinc/; revision=24475
2011-10-24 23:39:21 +00:00
David Anderson 7b28215032 - client: reimplement the round-robin simulator to
reduce its runtime from O(N^2) to O(N),
    where N is the number of runnable jobs
    (which can be in the thousands).
    This will make the client emulator run a lot faster,
    and will reduce the client CPU overhead a bit.
- API: change boinc_get_opencl_ids() so that it returns
    a BOINC error code (< -100) if the app_init.xml is
    missing or bad (i.e. we're running standalone),
    and an OpenCL error code (> -100) if an OpenCL call failed.


svn path=/trunk/boinc/; revision=24469
2011-10-24 17:53:09 +00:00