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
to determine when the client software has been switched into Remote
Desktop mode and shutsdown GPU apps. This will prevent App crashes.
lib/
coproc.cpp
svn path=/trunk/boinc/; revision=19339
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
(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
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
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
it was only happening at startup, there might have been a few crashes
because of this issue as well. The basic problem is that wxWidgets
had an exception handler around the initial frame creation and when
the first GUI RPC was issues to detect whether or not we were atached
to an account manager during menu creation the GUI thread would go
about doing idle processing while waiting for the GUI RPC thread to
initialize. During this time the frame pointer is NULL and was getting
dereferenced which would halt window construction and stay there until
some other event was fired.
- MGR: Initial dose of code cleanup and shuffling. Order the menu functions
in the order in which they are displayed in the menu.
clientgui/
AdvancedFrame.cpp, .h
BOINCBaseFrame.cpp
BOINCBaseView.cpp
Events.h
ProjectListCtrl.cpp
sg_BoincSimpleGUI.cpp, .h
sg_ProjectsComponent.cpp, .h
WizardAttachProject.cpp
svn path=/trunk/boinc/; revision=19300