- Mac Installer: Rearrange License Agreement so Restrictions section is visible without scrolling and is in bold text
- Mac client: update build scripts, XCode project for curl-7.19.7 and c-ares 1.7.0
- Mac MGR: Fix crashes on OS 10.3.9 due to accessibility APIs implemented on OS 10.4
- Mac: Update XCode project; fix installer not starting Manager on OS 10.6
- Mac installer: If user tries to install on OS 10.3.9, display an alert and quit
- MGR: Filter project list icons so that the icon will only be displayed if the volunteer has the hardware to go with it.
- client: apply the LTD normalizing offset to all projects, even non-debt-eligible ones.
- client: message tweak on <std_debug> use.
- client: change how short term debt is updated.
Old: it's based entirely on CPU time. So a GPU project, whose app uses only a fraction of a CPU, accrues positive debt. This is OK if the project has only GPU apps, since STD is not (currently) used for GPU scheduling. But some projects have both CPU and GPU apps. New: STD is based on total processing. It has terms for each resource type. The notion of "runnable resource share" is specific to a type. Note: the notion of "resource share fraction" appears in a couple of other places: - it's passed to apps in app_init_data.xml - it's passed in scheduler requests. It should be broken down by resource type in these cases too. Note to self: do this later.
- Tweaking messages.
- client: fix divide-by-zero bug in STD code
- fix compile warnings
- client: Add offset to LTD of non-eligible projects only if the offset is positive.
- client: some cmdline args set members of config.
However, config was being cleared after cmdline args were parsed, so these args had no effect. Instead, clear config before parsing cmdline
- client: my STD-related checkin of Dec 1 was bad.
It computed an "overall STD" as the sum of CPU and coprocs, weighted by the coproc's speed, as we do for LTD. This was the wrong idea; in the presence of GPUs, STDs quickly get pushed to +- 1 day and are truncated there. New scheme: STD is maintained per (resource type, project). This fixes the above problem, and it opens to door to round-robin scheduling of GPUs.
- client: the calculation of "anticipated debt" was scaling by relative resource share. This wasn't correct, seems to me.
- client: rename "debt" to "long_term_debt" in a few places (but not in the client state file, for compatibility)
- compile fixes, message tweaks
- client: fix bug in debt calculation
- client: <zero_debts> zeroes STD too
- client: scale STD limit by # instances
- client: sort out proxy_info mess. Source of proxy info (descending priority)
- GUI RPC (Manager or boinccmd)
This and only this is saved in state file. If neither HTTP nor SOCKS server name present, this is viewed as not present - environment vars - cc_config.xml Show sources of proxy info in message log. If one is present but overridden, show a message to that effect. This fixes a bug where someone had a proxy info env var and forgot about it. They got an erroneous message saying no proxy was being used.
- win compile fixes
- client: bug fixes to recent proxy info checkin
- code shuffle: move client-specific GPU code to a separate file
- more code shuffle: add COPROCS to HOST_INFO
- result of code shuffle: the HOST_INFO structure returned by the get_host_info() GUI RPC now contains GPU info
- client: don't set STDs for non-runnable projects to zero.
Let them float around with other projects. Fixes problem where, when a project finishes its last job and has a negative STD, it gets an unfair increment by being set to zero.
- client: scheduling tweak. Old: if a project has RR sim deadline misses, select jobs to run high-priority on the basis of:
1) deadline (earliest first) 2) estimated time to completion (least first) This ignores whether jobs missed their deadline in RR sim, so it may choose to run a job that's actually in no danger of missing its deadline over one that is. New: choose only jobs that miss their deadline in RR sim