boinc/checkin_notes

2548 lines
69 KiB
Plaintext
Raw Normal View History

David Jan 2 2009
- added a script to make profile.has_picture consistent
with the images actually on disk
html/ops/
repair_profile_pictures.php
David Jan 2 2009
- client: more work-fetch stuff.
No more per-project shortfall.
It's getting pretty close.
client/
client_state.cpp
client_types.cpp,h
cs_scheduler.cpp
rr_sim.cpp
scheduler_op.cpp
work_fetch.cpp,h
lib/
coproc.cpp,h
Janus Jan 6 2009
- Various translation fixes
- Added Danish web interface translation
- Added some Danish translation texts to the client translation file
- Added Finnish web interface translation (contributed by ORE)
html/
inc/
user.inc
user/
info.php
languages/translations
da.po (fully rewritten)
fi.po (new)
locales/da
BOINC-Manager.po
Charlie Jan 6 2009
- client: preserve ownership when copying files to slot directory. Fixes
a problem with Enigma@home which uses the <copy_file/> tag.
lib/
filesys.cpp
Rom 7 Jan 2009
- Fix build environment so that it can build the client again
(From Nicol<6F>s Alvarez)
/
configure.ac
Makefile.am
sea/
make-tar.sh
make-tar_debug.sh
David 7 Jan 2009
- get_project_config: don't send error text if no terms_of_use.txt
- client: compute and store project work-fetch attributes
fixes #820
client/
client_state.h
work_fetch.h,cpp
html/user/
get_project_config.php
Charlie Jan 6 2009
- client: fix compiler warnings (formats didn't match data).
client/
work_fetch.cpp
David 9 Jan 2009
- client: connected_frac -1 is OK; fixes #821
client/
time_stats.cpp
David 9 Jan 2009
- scheduler: add support for resource-specific scheduler requests:
- parse new request message elements
(CPU and coproc requested seconds and instances)
- decide how many jobs to send based on these params
- select app version based on these params
(may send both CPU and CUDA app versions for the same app!)
lib/
coproc.cpp
sched/
handle_request.cpp
main.cpp,h
sched_plan.cpp
sched_send.cpp
server_types.cpp,h
David 9 Jan 2009
- client: debugging CUDA-related stuff
- client: if reset a project, clear its overall and per-resource backoffs
client/
client_state.cpp
client_types.cpp
cs_scheduler.cpp
rr_sim.cpp
scheduler_op.cpp
sim.h
work_fetch.cpp,h
lib/
coproc.cpp
Charlie Jan 10 2009
- Mac: Fix build scripts for new locale source directory layout.
mac_installer/
release_GridRepublic.sh
release_boinc.sh
David Jan 10 2009
- client: work_req_seconds is CPU req, not max(CPU req, CUDA req).
In order to work with the 6.7 client,
projects with both CUDA and CPU jobs must use the newest scheduler code.
client/
work_fetch.cpp
David Jan 11 2009
- scheduler: if a Windows host has a GPU slower than 60 GFLOPS,
don't send it CUDA jobs (they may cause BSOD);
send user a message to this effect
sched/
sched_plan.cpp
sched_send.cpp
server_types.h
David Jan 12 2009
- lib: check return values of RSA_*() functions.
Also fix a memory leak, missing RSA_free().
Fixes #823.
lib/
crypt.cpp
error_numbers.h
str_util.cpp
Rom 12 Jan 2009
- WINSETUP: Update custom actions in case the goofy setup
problems are related to old custom actions. I don't
really think this is it, but i'm running out of ideas.
win_build/installerv2/redist/Windows/src/boinccas/
boinccas.rc
win_build/installerv2/redist/Windows/Win32/
boinccas.dll
boinccas95.dll
win_build/installerv2/redist/Windows/x64/
boinccas.dll
boinccas95.dll
David 12 Jan 2009
- web: add Eric's script for forum RSS
html/user/
forum_rss.php
David 12 Jan 2009
- scheduler, file upload handler: fix server runtime message in FCGI case
sched/
file_upload_handler.cpp
handle_request.cpp
main.cpp
sched_util.cpp,h
server_types.cpp
David 12 Jan 2009
- scheduler: initialize COPROC fields
lib/
coproc.cpp
David 12 Jan 2009
- scheduler: if we're not sending work because of the user's "no GPUs" pref,
tell them so.
- scheduler: fix bug that caused no CUDA jobs to be sent
lib/
coproc.cpp,h
common_defs.h
sched/
handle_request.cpp
sched_send.cpp
sched_plan.cpp
server_types.h
David 12 Jan 2009
- scheduler: bug fixes
sched/
handle_request.cpp
sched_send.cpp
David 12 Jan 2009
- scheduler: bug fixes
sched/
sched_plan.cpp
David 13 Jan 2009
- GUI RPC: add the following items to PROJECT_CONFIG
(corresponding to the get_project_config.php web RPC):
- platforms: list of platforms supported by the project
- sched_stopped: scheduler disabled
- web_stopped: DB-driven web features disabled
- min_client_version
- GUI RPC: add the following items to CC_STATE:
- platforms: list of platforms supported by the client
(this replaces the unused <platform_name>)
- GUI RPC: add the following items to PROJECT_LIST_ENTRY
(entry in the "all projects" list):
- platforms: list of platforms supported by the project
- GUI RPC: move APP_VERSION pointer from WORKUNIT to RESULT;
include plan class in APP_VERSION lookup.
This completes the change of March 2008,
and allows the Manager to work correctly when a project
has two different app versions of the same (app, platform, version)
running on a client at once (e.g., a CPU and a GPU app)
- get_project_config.php: remove logic that checks client version.
This page is accessed by PHP, not just by client
- web: add link to forum page to get forum as RSS
client/
cs_statefile.cpp
clientgui/
DlgItemProperties.cpp
MainDocument.cpp
ViewWork.cpp
sg_ViewTabPage.cpp
html/user/
get_project_config.php
forum_rss.php
forum_forum.php
img/feed_logo.png (new)
lib/
gui_rpc_client_ops.cpp
gui_rpc_client.h
David 13 Jan 2009
- client: GPU bug fix; compile warning fixes
client/
client_types.cpp
clientgui/
BOINCTaskBar.cpp
lib/
filesys.cpp
parse.cpp
David 13 Jan 2009
- GUI RPC: finish the changed started above;
update the way that app versions are identified.
Old: WORKUNIT contains version_num
RESULT contains app_version_num (but only if running)
New: Keep old fields so new client works with old manager.
RESULT contains version_num, plan_class
Manager: if RESULT doesn't have version/plan_class
(because talking to old client)
look up app version based on WU version num.
clientgui/
BOINCTaskBar.cpp
sg_ViewTabPage.cpp
MainDocument.cpp
DlgItemProperties.cpp
ViewWork.cpp
lib/
gui_rpc_client_ops.cpp
gui_rpc_client.h
Eric 13 Jan 2009
- STILL WORK TO BE DONE TO GET locale STUFF INSTALLED PROPERLY!!!
- Update to libtool 1.5.24
- build environment: Major automake changes that I've been warning about
for some time.
- Now uses libtool to build libraries.
- Builds separate boinc_fcgi and sched_fcgi libraries for use with
FCGI server components.
- New macro "BOINC_CHECK_LIB_WITH" that executes a "AC_CHECK_LIB" on
a library only if --with-libname[=DIR] is specified on the configure
command line. This is to allow inclusion of libraries when the
ssl, gtk, wxWidgets, or other configuration is incorrect for static
libraries.
- Added a lot of "--with-*" for some libraries that might be required for
static builds.
- The sea directory has been moved to packages/generic. Changes to sea
and the associated scripts might be required to better make use of the
staging mechanism and shared libraries.
- Fixed includes of boinc_fcgi.h in many files.
- Fixed places where FCGI_FILE needs to be used implicitly.
- Fixed missing define of _SC_PAGESIZE on hosts that define only
_SC_PAGE_SIZE.
- Moved build of boinc_cmd (and source file) from lib to client
ltmain.sh
config.guess
config.sub
Makefile.incl
m4/
sah_check_lib.m4
check_ssl.m4
boinc_gtk.m4 (new)
boinc_check_lib_with.m4 (new)
libcurl.m4
boinc_wxwidgets.m4
sea/ (moved to packages/generic/sea)
packages/ (new)
generic/ (new)
sea/ (new)
Makefile.am
client/
Makefile.am
hostinfo_unix.cpp
sched/
edf_sim.cpp
sched_shmem.h
sched_msgs.h
sched_msgs.cpp
sched_send.cpp
handle_resuest.cpp
file_upload_handler.cpp
main.cpp
sched_assign.cpp
Makefile.am
lib/
boinc_cmd.cpp (moved to client)
diagnostics.cpp
prefs.cpp
msg_log.h
cert_sig.cpp
Makefile.am
zip/
Makefile.am
samples/
example_app/
Makefile
api/
Makefile.am
clientgui/
Makefile.am
tools/
backend_lib.cpp
Makefile.am
doc/
manpages/
Makefile.am
David 13 Jan 2009
- client/manager fixes
client/
client_types.cpp
lib/
gui_rpc_client_ops.cpp
gui_rpc_client.h
David 14 Jan 2009
- client: fix bug that caused estimated time to completion to increase
while processing suspended
Fixes #825
client/
app_control.cpp
David 14 Jan 2009
- client: clamp long term debts tp +- 1 week
- client: fix CUDA debt calculation
- client: don't accumulate debt if project->dont_request_more_work
- client: improves messages
client/
rr_sim.cpp
Rom 15 Jan 2009
- WINSETUP: Fix the problem introduced where Enable Application
execution wasn't working.
win_build/installerv2/
BOINC.ism
BOINCx64.ism
Rom 15 Jan 2009
- MGR: Don't convert strings to ANSI juts to have to reconvert them
back to Unicode. Fix several help link issues.
Fixes #826
clientgui/
AdvancedFrame.cpp
DlgAdvPreferences.cpp
sg_BoincSimpleGUI.cpp
sg_DlgMessages.cpp
sg_DlgPreferences.cpp
sg_ProjectsComponent.cpp
David 15 Jan 2009
- scheduler: improve message formatting; add <debug_locality> flag
for locality scheduling messages
lib/
msg_log.cpp
sched/
*.cpp
David 15 Jan 2009
- GUI RPC: add CUDA info to PROJECT struct
- manager: display CUDA info in project properties page
- manager: use struct assignment instead of copy() function
client/
boinc_cmd.cpp
clientgui/
AsyncRPC.cpp
DlgItemProperties.cpp
lib/
gui_rpc_client_ops.cpp
gui_rpc_client.h
David 15 Jan 2009
- scheduler: remove clause in app_plan() that withholds jobs from slow GPUs.
The SETI@home/CUDA app has been fixed so that it works on all GPUs.
sched/
sched_plan.cpp
Eric 15 Jan 2009
- build: Made static linkage of BOINC libraries the default for client,
manager, and server components
configure.ac
tools/
Makefile.am
clientgui/
Makefile.am
client/
Makefile.am
samples/
example_app/
Makefile
Charlie Jan 15 2009
- client: boinc_copy ownership fix of 1/6/09 didn't work because it used
system(cp ...) call, which invokes a shell, and POSIX specifies that
shells run from an application use the real UID and GID not the
effective UID and GID. Under Mac Sandbox security, we need to use
the effective UID and GID. Changed boinc_copy to copy file directly.
- MGR: On Mac, fix problems showing Manager window when it was minimized
to Dock, especially if window was closed using Dock menu.
- Mac: Fix XCode project for boinc_cmd.cpp moved to client/ from lib/.
client/
app_start.cpp
clientgui/
BOINCBaseFrame.cpp
BOINCGUIApp.h
BOINCTaskBar.cpp
lib/
filesys.cpp
mac_build/
boinc.xcodeproj/
project.pbxproj
David 16 Jan 2009
- client: remove limits on LTD.
client/
work_fetch.cpp
David 19 Jan 2009
- scheduler: remove the config flag <have_cuda_apps>,
and add <cuda_multiplier>.
The latter is used in calculating max jobs/day for a host;
namely, it's host.max_results_day * (NCPUS + NCUDA*cuda_multiplier).
Set it to 10 or so if you have CUDA apps.
- scheduler: don't overload effective_ncpus();
instead, add two new functions,
max_results_day_multiplier() and max_wus_in_progress_multiplier()
- scheduler: don't reduce max_results_day if we get an aborted job
(it might have been aborted by the project;
not appopriate to punish host in this case)
db/
boinc_db.h
sched/
main.cpp
sched_config.cpp,h
sched_result.cpp
server_types.h
David 20 Jan 2009
- client: fix messages
client/
rr_sim.cpp
work_fetch.cpp
David 20 Jan 2009
- scheduler: improve no-work messages
- web: don't use DB conn in mysql_real_escape_string()
(otherwise won't work if DB is down)
html/inc/
boinc_db.inc
db_conn.inc
sched/
sched_plan.cpp.h
sched_send.cpp
server_types.h
Charlie Jan 20 2009
- Mac client: fix bug in build script so that curl-7.19.2 actually
does build with c-ares 1.6.0. Fixes #830.
mac_build/
buildcurl.sh
David 21 Jan 2009
- scheduler: accept CUDA version 1.0
sched/
sched_plan.cpp
David 21 Jan 2009
- client: fetch work from non-CPU-intensive projects
client/
work_fetch.cpp,h
David 21 Jan 2009
- client: compile fix, remove spurious message
client/
work_fetch.cpp,h
Rom 21 Jan 2009
- MGR: Make sure the UI thread doesn't call a GUI RPC
that uses the SET_LOCALE class.
clientgui/
BOINCClientManager.cpp
Charlie Jan 22 2009
- MGR: fix compile error.
clientgui/
BOINCClientManager.cpp
David 22 Jan 2009
- client: if an app has avg_ncpus < 1, run it at above-idle priority
even if it doesn't use a coprocessor.
- scheduler: added an "nci" (non CPU intensive) plan class
to sched_plan.cpp. It declares the use of 1% of a CPU.
The above two changes are intended to allow the QCN app to
run at above_idle priority, which it needs in order to do 500Hz polling.
- API: the std::string version of boinc_resolve_filename()
acts the same as the char[] version.
client/
app.cpp
app_start.cpp
lib/
app_ipc.cpp
gui_rpc_client.cpp
sched/
sched_plan.cpp
David 22 Jan 2009
- web: when using adaptive replication, show a WU's instances
if it has a canonical result, not if it's been assimilated
(if the assimilator is not working, the latter causes
WUs to be hidden longer than needed)
html/user/
workunit.php
David 22 Jan 2009
- client: simplify message describing scheduler request;
to get work request details, use <sched_op_debug>
client/
scheduler_op.cpp
Eric 22 Jan 2009
- build: reordered compiler flags checking.
Fixed problems with finding location of wx-config
when running with cached configuration.
Made sure to check ${prefix}/lib when looking for
libGL, libGLU, and libglut.
m4/
boinc_wxwidgets.m4
ax_check_glut.m4
ax_check_glu.m4
ax_check_gl.m4
boinc_set_compile_flags.m4
David 22 Jan 2009
- client: when preempting a process, remove it from memory if:
1) it uses a coprocessor
2) it has checkpointed since the client started
3) it's being preempted because of a user action
(suspend job, project, or all processing)
or user preference (time of day, computer in use)
- scheduler: if shared mem seg doesn't exist,
report it and don't crash
client/
app.h
app_start.cpp
app_control.cpp
cpu_sched.cpp
sched/
main.cpp
Charlie Jan 22 2009
- client sandbox: add details in switcher_exec "execv failed" message.
- MGR: Work around bug in generic list control GetSelectedItemCount()
which caused incorrect update of buttons in Projects tab after
detching from a project; remove redundant UpdateSelection() call.
client/
sandbox.cpp
clientgui/
BOINCBaseView.cpp
BOINCListCtrl.cpp,.h
David 23 Jan 2009
- client: clear debts when reset project
- client: respect work-fetch backoff for non-CPU-intensive projects
- client: for non-CPU-intensive project, fetch new job
if no currently running jobs
- client: skip non-CPU-intensive projects in debt calculations
- manager: show resource backoff times correctly
client/
app_control.cpp
client_state.cpp
client_types.cpp,h
work_fetch.cpp,h
clientgui/
DlgItemProperties.cpp
David 23 Jan 2009
- scheduler: for plan class "nci", set flops to CPU speed;
this will give consistent completion time estimates for existing WUs.
sched/
sched_plan.cpp
David 23 Jan 2009
- scheduler: fix spurious error message when using nci
sched/
sched_plan.cpp,h
sched_send.cpp
David 23 Jan 2009
- web: fix apps.php so that it knows about plan class
html/user/
apps.php
David 23 Jan 2009
- API: possible compile fix for OS/2
api/
boinc_api.cpp
David 23 Jan 2009
- scheduler: reduce frequency of calls to work_needed()
sched/
sched_array.cpp
sched_send.app
David 23 Jan 2009
- scheduler: make NCI app versions preferable to non-plan-class
sched/
sched_plan.cpp
David 23 Jan 2009
- scheduler: if client can't do plan class, don't complain about old client
sched/
sched_send.cpp
Charlie Jan 23 2009
- MGR: Remove override of GetSelectedItemCount() introduced yesterday;
instead, call DeleteItem() rather than SetItemCount() when number of
rows has been reduced, to allow virtual ListCtrl adjust its list of
selected rows (and thus keep its count in sync with reality.)
clientgui/
BOINCBaseView.cpp
BOINCListCtrl.cpp,.h
David 23 Jan 2009
- scheduler: initialize global
sched/
handle_request.cpp
David 23 Jan 2009
- scheduler: if anonymous platform, ignore coprocessor requests
(since anonymous platforms apps are treated as CPU)
sched/
sched_send.cpp
server_types.h
Janus 25 Jan 2009
- Fixed a major bug in the translation system which was causing a lot
of people to receive the webpages in semi-random languages.
- Added the ability for projects to decide whether they want the
Q&A and Message Boards merged.
html/
inc/
translation.inc
user/
forum_index.php
project_sample/
project.inc
David 25 Jan 2009
- client: don't request work for a resource if it has no shortfall.
- client and server: get rid of coproc_cuda global.
client/
client_state.cpp,h
work_fetch.cpp,h
lib/
coproc.cpp,h
sched/
handle_request.cpp
sched_send.cpp
server_types.cpp,h
Rom 26 Jan 2009
- MGR: Don't use wxT() to describe parameters passed to GUI RPCs.
clientgui/
BOINCClientManager.cpp
David 26 Jan 2009
- client: if we're doing an RPC (for whatever reason)
to a non-CPU-intensive project without a job, ask for one.
client/
work_fetch.cpp
Charlie Jan 26 2009
- MGR: In CBOINCClientManager::StartupBOINCCore() allow time for Client
to start up, to avoid repeated attempts which put spurious messages
"Another instance Another instance of BOINC is running" in
stderrdae.txt.
clientgui/
BOINCClientManager.cpp
David 27 Jan 2009
- client: change the LTD policy so that
1) net adjustment for eligible projects is zero;
2) max LTD is zero
- scheduler: fix msgs so disk size is shown in GB
client/
work_fetch.cpp
sched/
sched_send.cpp
Eric K 27 Jan 2009
- SEA: Fixed problems building SEA
- Manager: Fixed missing includes when building manager on unix.
configure.ac
packages/
generic/
sea/
Makefile.am
make-tar.sh
clientgui/
BOINCClientManager.cpp
David 27 Jan 2009
- scheduler: in get_app_version(), if we previously sent a CUDA app,
but we don't need to send any more CUDA jobs,
delete the BEST_APP_VERSION record and look for another app version.
This lets the scheduler send both CUDA and CPU app versions
for a given app in a single RPC.
client/
work_fetch.h
sched/
sched_send.cpp
David 27 Jan 2009
- client: if we're making an RPC to a project because of user request,
clear the resource backoff times so that we potentially
can ask the project for work.
client/
cs_scheduler.cpp
work_fetch.cpp
Eric K 27 Jan 2009
- Manager: fixes to allow compilation on compilers that don't allow string
concatenation within the _() macro.
clientgui/
WelcomePage.cpp
ProxyInfoPage.cpp
David 27 Jan 2009
- lib: comment out perror()s in connection code.
lib/
gui_rpc_client.cpp
David 27 Jan 2009
- client: remove the "deadlines_missed" and "overworked"
clauses from RSC_WORK_FETCH::choose_project()
client/
work_fetch.cpp,h
David 27 Jan 2009
- scheduler: don't count host as reliable if avg_turnaround is zero
- client: restore notion of overworked;
if a project is overworked for a resource R,
don't fetch work for R unless there are idle instances
client/
work_fetch.cpp,h
sched/
sched_send.cpp
David 28 Jan 2009
- GUI RPC: the "get all projects" RPC now also returns account managers
lib/
gui_rpc_client_ops.cpp
gui_rpc_client.h
Charlie Jan 28 2009
- GUI RPC: Fix compiler warning (missing return value).
lib/
gui_rpc_client_ops.cpp
Rom Jan 29 2009
- MGR: Provide a way for skin creators to suppress error messages for
missing resources.
clientgui/
SkinManager.cpp
Rom Jan 29 2009
- MGR: Save and Restore the last email address/user id used to attach
to a project or account manager
clientgui/
AccountInfoPage.cpp
David 29 Jan 2009
- web: anywhere we show info about a host, show its GPUs too
- web: add script to parse GPU completed-job log
and generate summary data;
also add page to display this data.
html/
inc/
host.inc
ops/
analyze_coproc_log.php
user/
hosts_user.php
show_coproc.php
David 29 Jan 2009
- client: if user requests RPC, do it even if project is backed off
- manager: show backoff interval correctly
client/
cs_scheduler.cpp
work_fetch.cpp
clientgui/
DlgItemProperties.cpp
David 29 Jan 2009
- scheduler: get effective RAM sizes and running fraction just once
sched/
sched_send.cpp
server_types.h
David 29 Jan 2009
- client: update LTD correctly
client/
work_fetch.cpp
Rom 29 Jan 2009
- MGR: Add a virtual list box to display available account managers.
clientgui/
AccountManagerInfoPage.cpp, .h
AccountManagerProcessingPage.cpp
AccountManagerPropertiesPage.cpp
ProjectInfoPage.cpp, .h
WizardAccountManager.cpp
lib/
gui_rpc_client_ops.cpp
Rom 29 Jan 2009
- MGR: Filter project list so that it shows only projects supported
by the core client.
clientgui/
ProjectInfoPage.cpp, .h
Charlie Jan 29 2009
- MGR: call UpdateSelection() from OnListRender() instead of from
RestoreSelections(). Fixes #837.
clientgui/
BOINCBaseView.cpp
Charlie Jan 30 2009
- MGR: Suppress Skin Manager error messages by default; enable them
only if the Manager is launched from the command line with an
argument -c or --checkskins.
clientgui/
BOINCGUIApp.cpp, .h
SkinManager.cpp, .h
David 30 Jan 2009
- Work fetch / scheduler:
There are two mechanisms to prevent the scheduler from
sending jobs that won't finish by their deadline.
Simple mechanism:
The client sends the interval x for which CPUs are projected
to be saturated.
Given a job with estimated duration y,
the scheduler doesn't send it if x + y exceeds the delay bound.
If it does send it, x is incremented by y.
Complex mechanism:
Client sends workload description.
Scheduler does EDF simulation, sees if deadlines are missed.
The only project using this AFAIK is BOINC alpha test.
Neither of these mechanisms takes coprocessors into account,
and as a result jobs could be sent that are doomed to
miss their deadline.
This checkin adds coprocessor awareness to the Simple mechanism.
Changes:
Client:
compute estimated delay (i.e. time until non-saturation)
for coprocessors as well as CPU.
Send them in scheduler request as part of coproc descriptor.
Scheduler:
Keep track of estimated delays separately for different resources
- client: fixed bug that computed CPU estimated delay incorrectly
- client: the work request (req_secs) for a resource is the min
of the project's share and the shortfall.
client/
cs_scheduler.cpp
rr_sim.cpp
work_fetch.cpp,h
html/inc/
translation.inc
lib/
coproc.cpp,h
sched/
sched_send.cpp
server_types.cpp,h
David 30 Jan 2009
- client: computation of # idle CUDA instances was wrong
client/
rr_sim.cpp
David 30 Jan 2009
- scheduler: show message whether miss or meet deadline
html/user/
show_coproc.php
top_users.php
sched/
sched_send.cpp
David 30 Jan 2009
- client: tweak work fetch messages
- client: buffer 2000 messages instead of 1000
client/
client_msgs.cpp
work_fetch.cpp
lib/
coproc.cpp
David 30 Jan 2009
- client: work fetch fixes
client/
work_fetch.cpp
scheduler_op.cpp
David 31 Jan 2009
- client: there was a problem with how the round simulator
worked in the presence of coprocessors.
The simulator maintained per-project queues of pending jobs.
When a job finished (in the simulation) it would get
one or more jobs from that project's pending queue.
The problem: this could cause "holes" in the scheduling of GPUs,
and produce an erroneous nonzero shortfall for GPUs,
leading to infinite work fetch.
The solution: maintain a separate (per-resource, not per--project)
queue of pending coprocessor jobs.
When a coprocessor job finishes,
start pending jobs from the queue for that resource.
Another change: the simulator did strict reservation of coprocessors.
If there are 2 instances of CUDA,
and a 1-instance job is running in the simulation,
it wouldn't start an additional 2-instance job.
This also can cause erroneous nonzero shortfalls.
So instead, schedule coprocessors like CPUs, i.e. saturate them.
This can cause distorted completion time estimates,
but it's better than infinite work fetch.
client/
client_types.cpp,h
rr_sim.cpp,h
work_fetch.cpp,h
David 1 Feb 2009
- client: code cleanup
client/
rr_sim.cpp,h
work_fetch.cpp,h
David 2 Feb 2009
- client: code cleanup
client/
rr_sim.cpp,h
work_fetch.cpp,h
David 2 Feb 2009
- Manager: change terms for STD, LTD
- web: change script that locks old threads to exempt team forums
clientgui/
DlgItemProperties.cpp
html/ops/
autolock.php
David 3 Feb 2009
- client: fix bug that caused infinite sched RPCs if project down
client/
cs_scheduler.cpp
scheduler_op.cpp
Rom 3 Feb 2009
- SCROPENGL: Checkin the files needed for the new OpenGL based
BOINC screensaver.
clientscr/
boinc_ss_opengl.h
boinc_ss_opengl.rc
screensaver_opengl.cpp
screensaver_opengl.h
win_build/
boinc.sln
boinc_ss_opengl.vcproj
David 3 Feb 2009
- renamed boinc_ss_opengl to ss_app
David 3 Feb 2009
- GUI RPC: made password file read into function
- lib: minimized FCGI library
client/
boinc_cmd.cpp
file_names.h
lib/
gui_rpc_client.cpp,h
common_defs.h
Makefile.am
Charlie Feb 4 2009
- SS: Begin work on upgrading screensaver coordinator for new functionality:
- add filenames for ss config file and default OpenLG ss executable
- add sandbox security support for these 2 files.
client/
check_security.cpp
file_names.h
clientgui/
mac/
SetupSecurity.cpp
mac_build/
Mac_SA_Secure.sh
Rom 5 Feb 2008
- MGR: Display all projects in the project list but disable the text control
is the project doesn't list a supported platform. If the user clicks
on it display a message box stating that once attached the user may not
get any work.
clientgui/
AccountManagerInfoPage.cpp
ProjectInfoPage.cpp, .h
ProjectListCtrl.cpp, .h
Charlie Feb 5 2009
- SS: Implement basic new functionality in screensaver coordinator.
- Note: this is tested on Mac only at this point.
- SS: Add ss_app to XCode Project, with a temporary icon.
client/
check_security.cpp
file_names.h
clientscr/
screensaver.cpp, .h
mac_app_icon.h (added)
Mac_Saver_Module.h
screensaver_win.h
lib/
common_defs.h
mac_build/
boinc.xcodeproj/
project.pbxproj
David 5 Feb 2009
- manager: use sprintf() instead of WxString::Printf()
when copying messages to clipboard, and use tab instead of |
NOTE TO ROM: use WxWidgets features only where necessary.
E.g., for a time that's not going to be displayed,
use double instead of WxDateTime
clientgui/
ViewMessages.cpp
Rom 5 Feb 2009
- MGR: Back out David's change which broke clipboard functionality
on Linux. Take care of the real performance problem with
copying 20000+ records to the clipboard in a Debug build
by pre-allocating the buffer.
clientgui/
ViewMessages.cpp, .h
David 5 Feb 2009
- client: redefine "overworked" as
debt < -1.5 * work_buf * cpu_sched_period
- web: on team page, link to cross-project team stats sites
api/
graphics2_win.cpp
client/
work_fetch.cpp
html/
inc/
stats_sites.inc
team.inc
user/
team_display.php
Rom 5 Feb 2009
- MGR: On newer versions of the wxWidget framework the project list
wasn't being properly sized, so create it with a fixed size.
clientgui/
ProjectListCtrl.cpp
David 5 Feb 2009
- client: when accounting job elapsed time,
ignore intervals longer than 10 secs;
that could only happen if the client or host was suspended/hibernated.
- client: in adjust_debts(), ignore intervals longer than
2*work fetch period, not 2*CPU sched period.
adjust_debts() is called from work fetch.
client/
app_control.cpp
client_state.h
cpu_sched.cpp
cs_scheduler.cpp
work_fetch.cpp
David 5 Feb 2009
- web: added BOINCstats to list of team stats sites
html/
inc/
stats_sites.inc
team.inc
David 5 Feb 2009
- web: add links to cross-project host stats sites
(currently just boincstats)
html/
inc/
hosts.inc
stats_sites.inc
util.inc
user/
hosts_user.php
David 5 Feb 2009
- client: if time intervals for debt adjustment or job elapsed time
are negative, ignore (must be clock reset)
client/
app_control.cpp
cpu_sched.cpp
David 5 Feb 2009
- web: must have a DB connection before calling mysql_real_escape_string()
html/inc/
boinc_db.inc
David 5 Feb 2009
- web: add another team stats link
- client: if ncpus is zero in cc_config.xml, honor it.
client/
cpu_sched.cpp
log_flags.cpp
html/inc/
stats_sites.inc
team.inc
David 5 Feb 2009
- client: it the state file or an RPC reply has an app version
using a coprocessor we don't know about, ignore it
(and all results using that app_version will be flushed).
This deals with the situation where we have some GPU jobs,
but the GPU card is removed (previously this resulted in a crash).
This requires some code shuffling so that we check for coprocessors
before reading state file.
client/
client_types.cpp,h
client_state.cpp
cs_scheduler.cpp
cs_statefile.cpp
David 5 Feb 2009
- screensaver: flesh out new SS a bit
clientscr/
ss_app.cpp
Charlie Feb 5 2009
- SS: Continue work on screensaver coordinator.
- SS: Fix ss_app compile errors on Mac.
clientscr/
screensaver.cpp
mac_saver_module.cpp
Mac_Saver_Module.h
screensaver_win.h
ss_app.cpp
mac_build/
boinc.xcodeproj/
project.pbxproj
David 5 Feb 2009
- web: fix bug in cached user page stuff from 12/29/08
client/
time_stats.cpp
html/
inc/
pm.inc
user.inc
user/
show_user.php
Charlie Feb 5 2009
- SS: Screensaver coordinator reads ss_config.xml file.
- SS: If coordinator runs default screensaver during science phase because
no science graphics are available, then shorten the next default
graphics phase by that much time.
clientscr/
screensaver.cpp, .h
Mac_Saver_Module.h
screensaver_win.h
ss_config.xml (added)
David 6 Feb 2009
- web: don't show x-project links for anonymous hosts; fix &bull's
html/inc/
host.inc
user.inc
Rom 7 Feb 2009
- MGR: fix build break for GCC based compilers.
clientgui/
ProjectInfoPage.cpp
David 8 Feb 2009
- web: remove <nobr> around user links; doesn't play well
with long user names
html/inc
util.inc
David 9 Feb 2009
- client: all scheduler RPCs except user request are subject to backoff.
- client: if a project-requested RPC doesn't return work,
don't do resource backoff.
- client: if a user-requested scheduler RPC errors out, clear the request
client/
cs_scheduler.cpp
scheduler_op.cpp
work_fetch.cpp
Charlie 10 Feb 2009
- SS: Fix new screensaver coordinator to work properly on Windows.
clientscr/
Mac_Saver_Module.h
screensaver.cpp
screensaver_win.h
David 10 Feb 2009
- client: add SCHEDULER_OP::rpc_failed();
this gets called when the op fails,
either at initialization or later on;
it clears the project's sched_rpc_pending flag if needed.
This fixes a bug that caused user-requested RPCs
to retry every 10 seconds
when the network is down.
- client: if debt-adjust period is too long, reset accounting.
Otherwise we'll get this infinitely.
- API: all optional alpha argument to TEXTURE_DESC::draw()
api/
gutil.cpp,h
client/
cpu_sched.cpp
file_xfer.cpp
gui_http.cpp
http_curl.cpp,h
scheduler_op.cpp,h
clientscr/
ss_app.cpp
David 10 Feb 2009
- client: if master file doesn't have URLs, clear RPC request
client/
work_fetch.cpp
cs_scheduler.cpp
scheduler_op.cpp
David 10 Feb 2009
- client: show proxy info correctly on startup
- client: fix minor bug that produced spurious
adjust debt interval too long messages when zero projects
client/
client_state.cpp
cpu_sched.cpp
cs_scheduler.cpp
Charlie 11 Feb 2009
- SS: Fix new screensaver coordinator sandbox permissions.
- ss_app: Replace temporary icon with standard BOINC icon.
- ss_app: Fix compiler warning.
- lib: add time stamps to BOINCTRACE on non-Windows systems.
client/
check_security.cpp
clientgui/
mac/
SetupSecurity.cpp
clientscr/
mac_app_icon.h
lib/
diagnostics.cpp
mac_build/
Mac_SA_Secure.sh
David 11 Feb 2009
- client: change the formula for debt update
so that largest debt among eligible projects tends towards zero
- client: change definition of "overworked"; debt must be < 1 day
client/
work_fetch.cpp
David 11 Feb 2009
- client: change garbage collection so that an app version
is deleted only if there's another version *of the same plan class*
with a higher version number
client/
client_state.cpp
David 11 Feb 2009
- client and API: eliminate dynamically-allocated parts of GLOBAL_PREFS.
This fixes a double-free bug in the API.
lib/
prefs.cpp,h
David 11 Feb 2009
- boinc_zip: put null arg at end of argv.
Fixes crashing bug.
From Michael Tyka.
zip/
boinc_zip.cpp
unzip/
unzip.c
Rom 11 Feb 2009
- MGR: Check to see if the app version pointer is legit before attempting
to use it.
clientgui/
ViewWork.cpp
David 11 Feb 2009
- lib: implement APP_INIT_DATA::copy() with assignments instead of
memcpy(). This protects against any future double-free bugs.
lib/
app_ipc.h,cpp
Rom 11 Feb 2009
- MGR: Remove remaining UI thread calls to setlocale which could
confuse the parsing system or vise versa.
clientgui/
AdvancedFrame.cpp
DlgItemProperties.cpp
ViewWork.cpp
David 11 Feb 2009
- client, API: populate APP_INIT_DATA::hostid.
Remove userid and teamid fields, since the client doesn't know these.
client/
app_start.cpp
lib/
app_ipc.cpp,h
Charlie 11 Feb 2009
- SS: Graphics executables need a Mac icon only if they can be run in
a window, to allow the user to bring it to the front or control it.
Since the new boincscr app runs only as a screensaver, the Dock is
not visible when it is running so there is no reason to have an icon.
So restore the previous permissions settings (non-writable).
- ss_app: Remove code which adds a Mac icon.
- ss_app: Fix compiler warning.
- ss_app: Change Windows build executable file name to boincscr.exe.
client/
check_security.cpp
clientgui/
mac/
SetupSecurity.cpp
clientscr/
mac_app_icon.h (deleted)
mac_build/
boinc.xcodeproj/
project.pbxproj
Mac_SA_Secure.sh
win_build/
ss_app.vcproj
Charlie 12 Feb 2009
- SS: Continue refining screensaver coordinator logic.
clientscr/
screensaver.cpp
David 12 Feb 2009
- client: debt_eligible() was returning false if the backoff was max.
This can lead to a situation where a project never gets work.
Remove that clause.
client/
work_fetch.cpp
David 12 Feb 2009
- client, web: add preference for not using GPU while computer busy
client/
cpu_sched.cpp
html/inc/
prefs.inc
lib/
prefs.cpp,h
David 12 Feb 2009
- client: bug fix for GPU pref
client/
cpu_sched.cpp
sim.h
lib/
prefs.cpp
Charlie 13 Feb 2009
- ss_app: Under sandbox security, set boincscr permissions the same as
for BOINC Manager: setgid to boinc_master but do not setuid; this
allows the screensaver coordinator to kill boincscr but still gives
boincscr access to GUI RPC password file and so to all GUI RPCs.
- SS: On Windows, add code to get paths to BOINC data and executable
directories from Windows registry; expects boincscr in BOINC
executable directory and ss-config.xml in BOINC data directory.
client/
check_security.cpp
clientgui/
mac/
SetupSecurity.cpp
clientscr/
screensaver.cpp
screensaver_win.cpp,.h
mac_build/
Mac_SA_Secure.sh
David 13 Feb 2009
- GUI RPC: "get prefs" RPC was messed up by yesterdays's checkin;
also, change all bools to <foo>0|1</foo> rather than <foo/>
lib/
prefs.cpp
David 13 Feb 2009
- Manager: add GPU preference to advanced prefs dialog
clientgui/
DlgAdvPreferences.cpp
DlgAdvPreferencesBase.cpp,h
David 13 Feb 2009
- client: fix bug where master fetch failure doesn't clear request flag,
leading to infinite retry without backoff
client/
scheduler_op.cpp,h
David 13 Feb 2009
- client: fix bug in time-of-day limit prefs (both CPU and network)
lib/
prefs.cpp,h
David 13 Feb 2009
- GUI RPC: add master_url and local_revision to PROJECT_CONFIG struct.
The former will allow the Manager to verify project URLs
lib/
gui_rpc_client_ops.cpp
gui_rpc_client.h
Charlie 13 Feb 2009
- SS: On Windows, make path strings Unicode compatible in ss coordinator.
clientscr/
screensaver.cpp
Rom 16 Feb 2009
- WINBUILD: Remove ReleaseSigned build depends.
- WINBUILD: Add NVAPI to the list of static libraries to include during
the build process. Driver version detection.
/
<Various Files>
David 16 Feb 2009
- client: detect NVIDIA driver version number, show it on startup,
and include it with CUDA coprocessor descriptor in request msgs
lib/
coproc.cpp,h
win_build/
libboinc.vcproj
Charlie 16 Feb 2009
- client: fix compile break on Mac.
lib/
coproc.cpp
David 16 Feb 2009
- client: add a debug flag <dcf_debug> for seeing changes in DCF
- scheduler: add a limit on NVIDIA driver version for CUDA apps
(default 17500)
client/
work_fetch.cpp
log_flags.cpp,h
cpu_sched.cpp
sched/
sched_send.cpp
sched_plan.cpp,h
David 17 Feb 2009
- client: don't ignore jobs with fraction_done=1 (but still running)
in RR simulation; we may need to mark them as deadline miss.
- web: replace & with &amp; various places
client/
rr_sim.cpp
html/
inc/
prefs.inc
results.inc
stats_sites.inc
ops/
update_profile_pages.php
user/
edit_forum_preferences.php
edit_passwd_form.php
hosts_user.php
pm.php
prefs_remove.php
profile_menu.php
top_hosts.php
top_teams.php
top_users.php
David 18 Feb 2009
- client: if "no more work" checked, don't request more work (duh!)
client/
work_fetch.cpp
tools/
make_project
David 18 Feb 2009
- client: adjust debts at least every minute.
This fixes a bug that can cause debts to NEVER get updated.
- client: added "abort_jobs_on_exit" feature
(available by --abort_jobs_on_exit cmdline
or <abort_jobs_on_exit> in cc_config.xml).
If set, when the client is exited by user request
(this includes signals on Unix)
it marks all pending jobs as aborted,
and does a scheduler RPC to all projects with jobs.
When these are completed the client exits.
This is useful when BOINC is being used on grids
where it is wiped clean after each run.
client/
client_state.cpp,h
cpu_sched.cpp
cs_cmdline.cpp
cs_prefs.cpp
cs_scheduler.cpp
log_flags.cpp
main.cpp
work_fetch.cpp
lib/
error_numbers.h
David 18 Feb 2009
- web tweaks
html/
inc/
host.inc
result.inc
user/
workunit.php
result.php
David 19 Feb 2009
- scheduler: make host.p_features available to app_plan()
db/
boinc_db.h
sched/
server_types.cpp
David 19 Feb 2009
- web: in lists of tasks, give the option of showing names instead of IDs
html/
inc/
host.inc
result.inc
user/
results.php
workunit.php
David 19 Feb 2009
- client: add more info to <work_fetch_debug> messages
client/
work_fetch.cpp
David 19 Feb 2009
- client: don't complain that master URLs differ if it's only in case
client/
cs_scheduler.cpp
Charlie 19 Feb 2009
- screensaver: Implement --test and --retry_connect command-line arguments
as requested by Rom.
clientscr/
ss_app.cpp
Charlie 20 Feb 2009
- screensaver: Implement new screensaver coordinator logic as requested by Rom:
If the coordinator cannot connect to the core client:
- coordinator retries connecting every 10 seconds
- coordinator launches the default graphics application with the
argument --retry_connect, so the default graphics app will continue
running and will also retry connecting every 10 seconds.
If the coordinator successfully connected to the core client, it launches the
default graphics application without the argument --retry_connect. If the
default graphics application can't connect, it will return immediately
with the exit code ERR_CONNECT. In that case, the coordinator assumes
the default graphics app was blocked by a firewall and so the coordinator
will run only project (science) graphics.
clientscr/
mac_saver_module.cpp
Mac_Saver_Module.h
screensaver.cpp,.h
screensaver_win.cpp,.h
ss_app.cpp
Charlie 20 Feb 2009
- lib: Fix build break on Windows.
win_build/
libboinc.vcproj
libboinc_staticcrt.vcproj
David 20 Feb 2009
- client: if a project is at max backoff for a resource,
stop accumulating debt if it's at or around zero.
This prevents other projects from being driven unboundedly negative.
- client: if the number of overworked projects exceeds the number
of device instances, clear debts; this indicates that an earlier
client was buggy and produced bad debt values.
client/
client_state.h
cpu_sched.cpp
sim.h
work_fetch.cpp,h
David 20 Feb 2009
- client: new work-fetch policy:
1) if an instance is idle, get work from highest-debt project,
even if it's overworked.
2) if resource has a shortfall, get work from highest-debt
non-overworked project
3) if there's a fetchable non-overworked project with no runnable jobs,
get from from the highest-debt one.
(each step is done first for GPU, then CPU)
Clause 3) is new.
It will cause the client to get jobs for as many projects as possible,
even if there is no shortfall.
This is necessary to make the notion of "overworked" meaningful
(otherwise, any project with long jobs can become overworked).
It also maintains as much variety as possible (like pre-6.6 clients).
Also (small bug fix) if a project is overworked for resource R,
request work for R only in case 1).
client/
work_fetch.cpp,h
David 20 Feb 2009
- client: remove the "debt repair" mechanism added earlier today.
There are situations where multiple projects can legitimately
have large negative LTD on a uniprocessor.
Instead...
- client: add <zero_debts> option to cc_config.xml
client/
log_flags.cpp,h
work_fetch.cpp,h
David 20 Feb 2009
- client: fix bug that can cause no GPU jobs to be scheduled
even when a GPU is free
client/
cpu_sched.cpp
Charlie 20 Feb 2009
- Update various source filed to GPL 3. Note: I've only updated those
files which I created or have been maintaining. There are many
others which still have the GPL 2.1 license.
clientgui/
mac/
browser_safari.mm
MacGUI.pch
SystemMenu.m
res/
macbadgemask.xpm
macdisconnectbadge.xpm
clientscr/
Mac_Saver_ModuleView.m
screensaver.cpp
mac_build/
buildcurl.sh
buildjpeg.sh
buildc-ares.sh
BuildMacBOINC.sh
buildWxMac.sh
Make_BOINC_Service.sh
Mac_SA_Insecure.sh
Mac_SA_Secure.sh
setupForBOINC.sh
mac_installer/
release_boinc.sh
release_GridRepublic.sh
make_GridRepublic.sh
samples/
example_app/
MakeMacExample.sh
2009-02-22 04:05:34 +00:00
David 20 Feb 2009
- add a few GPL 3 notices
clientsrc/
screensaver.cpp
lib/
coproc.h
boinc_fcgi.cpp,h
David 21 Feb 2009
- client: tweak the LTD calculation so that the largest debt
always tends towards zero
client/
work_fetch.cpp
David 22 Feb 2009
- client: print message if downloaded file has wrong size
- client: associate file xfer messages with a project; fixes #848
client/
cs_files.cpp
file_xfer.cpp
pers_file_xfer.cpp
David 22 Feb 2009
- client: more instances of showing project with message. Fixes #848
client/
app_start.cpp
app_graphics.cpp
file_xfer.cpp
cs_account.cpp
cs_scheduler.cpp
scheduler_op.cpp
app.cpp
app_control.cpp
Rom 22 Feb 2009
- WINSCR: Fix the BOINC text displayed is the screensaver control
panel applet
- WINSCR: Get rid of the 'Up to 5 second wait' for the data thread
to terminate. Force terminate the thread and clean up the
graphics app in a clean-up routine. Forcing the user to wait
when they return to the system isn't a good idea.
- WINSCR: Fix screensaver issue where the screensaver locks up
when the graphics application deadlocks for one reason or
another.
Create two new threads:
1. Monitor system for keyboard and mouse events.
2. Shuffle window z-order positions if needed.
The keyboard/mouse event monitor is isolated from either
the core client getting stuck in a loop and not returning
the results of an RPC or the window shuffling code which
can get stuck if the graphics application dead locks.
The window shuffle code is isolated due to the
BroadcastSystemMessage() API using something akin to
SendMessage() which waits for a return value from the
target windows winproc. If a graphics application
deadlocks for one reason or another it'll cause
the thread to stall. This isn't terminal and so we
just wait for the next time the data thread chooses
a new application and terminates the old one which
will cause the thread to resume.
This should resolve all outstanding issues with the
screensaver not exiting when the mouse or keyboard
is used.
clientscr/
boinc_ss.rc
screensaver.cpp
screensaver_win.cpp, .h
David 22 Feb 2009
- client: fix work-fetch bug that caused infinite fetch;
cleanup/reorganization of work fetch logic
client/
work_fetch.cpp,h
David 22 Feb 2009
- client: work-fetch bug fix: if we're fetching work for a starved
project, it most have no runnable jobs for ANY resource.
- client: work-fetch bug fix: when setting requests in the
shortfall case, don't request anything if project is backed off
or overworked for the resource.
client/
rr_sim.cpp
work_fetch.cpp,h
Charlie 22 Feb 2009
- screensaver: Code consolidation, fix bug terminating default graphics
application on screensaver exit.
clientscr/
screensaver.cpp
David 22 Feb 2009
- scheduler: include driver version in the CUDA description string
storing in the database;
- web: display the above
client/
cpu_sched.cpp
work_fetch.h
html/inc/
host.inc
lib/
coproc.cpp
Charlie 22 Feb 2009
- screensaver: Fix a bug I introduced during code consolidation.
clientscr/
screensaver.cpp
screensaver_win.cpp
Rom 24 Feb 2009
- WINSCR: Remove the progress indication code from the coordinator.
It is now handled by the default screensaver app.
- WINSCR: Clean-up some of the thread cleanup logic.
clientscr/
screensaver_win.cpp
Rom 25 Feb 2009
- WINSCR: Remove unneeded header files
- SCR: Shuffle headers around so that it'll build on both Windows and
Mac without having to put in duplicate entries.
clientscr/
screensaver.cpp
David 25 Feb 2009
- client: fix bugs in "abort_jobs_on_exit" feature:
- clear project backoffs when start abort sequence
- don't back off projects if in abort sequence
client/
client_state.cpp
main.cpp
scheduler_op.cpp
David 25 Feb 2009
- boinccmd: fix bug in --set_proxy_settings command
(it wasn't setting the "use_XXX" flags). Fixes #776
- client: you can now include a <proxy_info> element
in your cc_config.xml options.
TODO: the whole proxy info thing needs an overhaul:
- no separate "use_XXX" flags;
non-empty http_server_name implies using HTTP proxy, etc.
- merge PROXY_INFO and GR_PROXY_INFO classes
- use XML_PARSER for parsing
- no PROXY_INFO element in HTTP_OP; just use gstate.proxy_info
client/
boinc_cmd.cpp
http_curl.cpp
lib/
parse.h
proxy_info.cpp
Rom 25 Feb 2009
- MGR: Remove the /s parameter from the argument list on Linux
until we know it is supported. Fixes #615
clientgui/
BOINCGUIApp.cpp
- Added checks for net/*.h, arpa/*.h, netinet/*.h and code to figure out which of those files to include - Modified MAC address check to work on some non-Linux unixes. (mac_address.cpp) - Added suggested change to "already attached to project" checking. (ProjectInfoPage.cpp) - changed includes of standard c header files to their c++ equivalents (i.e. replaced <stdio.h> with <cstdio>) for namespace protection. - replaced "using namespace std;" with more explicit "using std::function" in several files. - Fixed bug in checking whether the os is OS/2 and added conditional OS_OS2 to the build environment. (boinc_platform.m4,configure.ac) - Changed build environment to not use -nostandardlibs unless we are using G++ and static linkage is specified. (configure.ac) - Added makefiles and package building files for solaris CSW package manager. - Fixed bug with attempting to find login name using logname. (configure.ac) - Added ifdef HAVE_* protection around some include files commonly found in sys. - Added support for unified binary for x86_64/i686-pc-solaris. (cs_platforms.cpp) - generate_host_cpid() now uses MAC address on non-linux unix. (hostinfo_network.cpp) - Macro BOINC_SET_COMPILE_FLAGS now doesn't check gcc only flags on non-gcc compilers. (boinc_set_compile_flags.m4) - Library compiles no longer depend upon the library extension or require the library to be prefixed with lib. - More fixes for fcgi builds. - Added declaration of "struct ether_addr" and ether_ntoa(). Have not yet implemented ether_ntoa() for machines that don't have it, or where it is buggy. (unix_util.h) - Added FCGI::perror() which calls FCGI_perror(). (boinc_fcgi.{h,cpp}) - Fixed library Makefiles so that all required headers get installed. svn path=/trunk/boinc/; revision=17388
2009-02-26 00:23:23 +00:00
- Added checks for net/*.h, arpa/*.h, netinet/*.h and code to figure out which of those files to include - Modified MAC address check to work on some non-Linux unixes. (mac_address.cpp) - Added suggested change to "already attached to project" checking. (ProjectInfoPage.cpp) - changed includes of standard c header files to their c++ equivalents (i.e. replaced <stdio.h> with <cstdio>) for namespace protection. - replaced "using namespace std;" with more explicit "using std::function" in several files. - Fixed bug in checking whether the os is OS/2 and added conditional OS_OS2 to the build environment. (boinc_platform.m4,configure.ac) - Changed build environment to not use -nostandardlibs unless we are using G++ and static linkage is specified. (configure.ac) - Added makefiles and package building files for solaris CSW package manager. - Fixed bug with attempting to find login name using logname. (configure.ac) - Added ifdef HAVE_* protection around some include files commonly found in sys. - Added support for unified binary for x86_64/i686-pc-solaris. (cs_platforms.cpp) - generate_host_cpid() now uses MAC address on non-linux unix. (hostinfo_network.cpp) - Macro BOINC_SET_COMPILE_FLAGS now doesn't check gcc only flags on non-gcc compilers. (boinc_set_compile_flags.m4) - Library compiles no longer depend upon the library extension or require the library to be prefixed with lib. - More fixes for fcgi builds. - Added declaration of "struct ether_addr" and ether_ntoa(). Have not yet implemented ether_ntoa() for machines that don't have it, or where it is buggy. (unix_util.h) - Added FCGI::perror() which calls FCGI_perror(). (boinc_fcgi.{h,cpp}) - Fixed library Makefiles so that all required headers get installed. svn path=/trunk/boinc/; revision=17388
2009-02-26 00:23:23 +00:00
Eric K 25 Feb 2009
- Added checks for net/*.h, arpa/*.h, netinet/*.h and code to figure out
which of those files to include
- Modified MAC address check to work on some non-Linux unixes.
(mac_address.cpp)
- Added suggested change to "already attached to project" checking.
(ProjectInfoPage.cpp)
- changed includes of standard c header files to their c++ equivalents
(i.e. replaced <stdio.h> with <cstdio>) for namespace protection.
- replaced "using namespace std;" with more explicit "using std::function" in
several files.
- Fixed bug in checking whether the os is OS/2 and added conditional OS_OS2
to the build environment. (boinc_platform.m4,configure.ac)
- Changed build environment to not use -nostandardlibs unless we are using
G++ and static linkage is specified. (configure.ac)
- Added makefiles and package building files for solaris CSW package manager.
- Fixed bug with attempting to find login name using logname. (configure.ac)
- Added ifdef HAVE_* protection around some include files commonly found in
sys.
- Added support for unified binary for x86_64/i686-pc-solaris.
(cs_platforms.cpp)
- generate_host_cpid() now uses MAC address on non-linux unix.
(hostinfo_network.cpp)
- Macro BOINC_SET_COMPILE_FLAGS now doesn't check gcc only flags on non-gcc
compilers. (boinc_set_compile_flags.m4)
- Library compiles no longer depend upon the library extension or require
the library to be prefixed with lib.
- More fixes for fcgi builds.
- Added declaration of "struct ether_addr" and ether_ntoa(). Have not yet
implemented ether_ntoa() for machines that don't have it, or where it is
buggy. (unix_util.h)
- Added FCGI::perror() which calls FCGI_perror(). (boinc_fcgi.{h,cpp})
- Fixed library Makefiles so that all required headers get installed.
version.h
configure.ac
api/
boinc_api.cpp
graphics2_unix.cpp
gutil.cpp
gutil.h
gutil_text.cpp
make_app_icon_h.cpp
Makefile.am
reduce_main.cpp
texfont.cpp
texture.cpp
tgalib.h
x_opengl.cpp
client/
app.h
app_start.cpp
client_types.h
cs_account.cpp
cs_benchmark.cpp
cs_cmdline.cpp
cs_platforms.cpp
cs_scheduler.cpp
gui_rpc_server.cpp
gui_rpc_server_ops.cpp
hostinfo_network.cpp
hostinfo_unix_test.cpp
log_flags.h
scripts/boinc-client.in
setprojectgrp.cpp
switcher.cpp
clientgui/
ProjectInfoPage.cpp
clientscr/
gfx_switcher.cpp
lib/
boinc_fcgi.cpp
boinc_fcgi.h
boinc_win.h
common_defs.h
coproc.cpp
crypt.h
diagnostics.cpp
filesys.cpp
filesys.h
gui_rpc_client.h
gui_rpc_client_ops.cpp
mac_address.cpp
Makefile.am
md5_file.cpp
mem_usage.cpp
mfile.cpp
msg_queue.cpp
msg_queue.h
network.cpp
parse.h
procinfo_mac.cpp
procinfo_unix.cpp
shmem.cpp
synch.cpp
unix_util.cpp
unix_util.h
util.cpp
m4/
boinc_platform.m4
boinc_set_compile_flags.m4
packages/
solaris/
CSW/
build_packages.sh
Makefile.am
boincclient/
boinc.1
boinc_client.1
boinc-client.conf
boinc_cmd.1
boinccmd.1
depend
Makefile.am
pkginfo.in
postinstall
preinstall
prototype.in
boincdevel/
depend
Makefile.am
pkginfo.in
prototype.in
boinclibs/
depend
Makefile.am
pkginfo.in
prototype.in
boincmanager/
boinc_manager.1
boincmgr.1
depend
Makefile.am
pkginfo.in
prototype.in
boincserver/
Makefile.am
sched/
census.cpp
db_purge.cpp
fcgiapp.h
file_deleter.cpp
file_upload_handler.cpp
handle_request.cpp
hr_info.cpp
main.cpp
Makefile.am
message_handler.cpp
sched_config.h
sched_locality.cpp
sched_send.cpp
sched_timezone.cpp
sched_util.cpp
server_types.cpp
time_stats_log.cpp
time_stats_log.h
transitioner.cpp
validator.cpp
tools/
dir_hier_move.cpp
dir_hier_path.cpp
kill_wu.cpp
poll_wu.cpp
updater.cpp
zip/
Makefile.am
David 25 Feb 2009
- client: if you put <host_venue> in global_prefs_override.xml,
it should select the venue from the network prefs.
Now it does.
client/
gui_rpc_server.cpp
cs_prefs.cpp
David 25 Feb 2009
- API: file descriptor leak in obscure case.
fixes #103
api/
texture.cpp
Charlie 25 Feb 2009
- MGR: Fix compiler warning.
- lib: Fix compiler error: Please do not use unmatched single quotes
(I changed don't to don`t in #warning statement to fix this.)
clientgui/
ProjectInfoPage.cpp
lib/
mac_address.cpp
David 25 Feb 2009
- scheduler: slight code cleanup
sched/
server_types.h
sched_*.cpp
handle_request.cpp
server_types.cpp
David 25 Feb 2009
- client: make timeout values into #defines
client/
(several).cpp
David 26 Feb 2009
- client: tag messages with project where possible; fixes #852
- client: show fetch share rather than run share in wfd message
client/
client_types.h
work_fetch.cpp
cs_prefs.cpp
cs_scheduler.cpp
cpu_sched.cpp
David 26 Feb 2009
- client: abort jobs that are unstarted and past deadline
- client: abort runaway jobs based on elapsed time instead of CPU time.
Specifically, abort jobs for which
elapsed time > WU.rsc_fpops_bound / app_version.flops
This policy works for
1) GPU jobs (which may use little CPU time)
2) jobs that run but because of bugs use little CPU time
(e.g., because they're sleeping)
whereas the old policy didn't.
client/
client_state.cpp,h
app.cpp,h
app_control.cpp
lib/
error_numbers.h
str_util.cpp
David 26 Feb 2009
- client: skip the above elapsed-time check for non-CPU-intensive jobs
client/
app_control.cpp
Rom 26 Feb 2009
- MGR: Remove the ability to display graphics on a remote computer,
or from a remote computer on *nix machines using v5 graphics.
fixes #674
clientgui/
ViewWork.cpp
David 26 Feb 2009
- client: fix bug where if a GPU job is running,
and a 2nd GPU job with an earlier deadline arrives,
neither job is executed ever.
Reorganized things so that scheduling of GPU jobs is
done independently of CPU jobs.
The policy for GPU jobs:
- always EDF
- jobs are always removed from memory, regardless of checkpoint
(GPU memory is not paged, so it's bad to leave an idle app in memory)
client/
app.cpp,h
app_start.cpp
client_state.h
cpu_sched.cpp
sched/
handle_request.cpp
David 26 Feb 2009
- client: shuffle the startup code to avoid showing wrong prefs info
on first-time startup.
- client: don't do an RPC until we've done CPU benchmarks.
We need the benchmark values to fill in app_version.flops
client/
client_state.cpp
cs_scheduler.cpp
David 26 Feb 2009
2009-03-02 17:57:57 +00:00
- screensaver: show correct info if CPU throttling;
show correct window title;
show "no projects" message.
2009-03-02 17:57:57 +00:00
api/
graphics2.h
graphics2_win.cpp
clientscr/
ss_app.cpp
David 26 Feb 2009
- boinccmd: make --get_messages output more readable
client/
boinc_cmd.cpp
Charlie 27 Feb 2009
2009-03-02 17:57:57 +00:00
- screensaver: remove from the coordinator error codes and messages
which will now be handled by default graphics app, add new error
codes for problems in default graphics app.
- Mac screensaver: improve logic to stop drawing BOINC logo when a
graphics app covers coordinator window.
clientscr/
mac_saver_module.cpp
Mac_Saver_Module.h
Mac_Saver_ModuleView.m, .h
screensaver.cpp, .h
screensaver_win.h
David 27 Feb 2009
2009-03-02 17:57:57 +00:00
- manager: fix roundoff error in Advanced Prefs; fixes #613
2009-03-02 17:57:57 +00:00
clientgui/
DlgAdvPreferences.cpp
Rom 27 Feb 2009
- MGR: Make CTRL-SHIFT-A the accelerator in the simple GUI that
switches back to the advanced view.
refs #147
clientgui/
sg_BoincSimpleGUI.cpp, .h
David 27 Feb 2009
- client: fix bug that could cause scheduler RPC
to ask for work inappropriately,
and tell user that it wasn't asking for work.
Here's what was going on:
There are two different structures with work request fields
(req_secs, req_instances, estimated_delay):
COPROC_CUDA *coproc_cuda
and
RSC_WORK_FETCH cuda_work_fetch.
WORK_FETCH::choose_project() copied from cuda_work_fetch to coproc_cuda,
but only if a project was selected.
WORK_FETCH::clear_request() clears cuda_work_fetch but not coproc_cuda.
Scenario:
- a scheduler op is made to project A requesting X>0 secs of CUDA
- later, a scheduler op is made to project B for reason
other than work fetch (e.g., user request)
- choose_project() doesn't choose anything,
so the value of coproc_cuda->req_secs remains X
- clear_request() is called but that doesn't change *coproc_cuda
Solution: work-fetch code no longer knows about internals of
COPROC_CUDA and is not responsible for settings its request fields.
The copying of request fields from RSC_WORK_FETCH to COPROC
is done at a higher level,
in CLIENT_STATE::make_scheduler_request()
Additional bug fix: estimated_delay wasn't being cleared in some cases.
client/
cs_scheduler.cpp
scheduler_op.cpp
work_fetch.cpp
David 27 Feb 2009
- client: RR sim FLOPS estimate for GPU jobs should reflect
fraction of time BOINC is running.
client/
rr_sim.cpp
work_fetch.cpp
David 1 Mar 2009
- client: if we're going to do a scheduler RPC for reasons
other than work fetch (e.g., user request, project request)
temporarily clear resource backoffs while deciding
whether to request work.
The backoffs are there only to delay RPCs,
and we're going an RPC anyway.
client/
work_fetch.cpp
David 1 Mar 2009
- web: link to 3rd-party signature sources on community prefs page
html/
inc/
stats_sites.inc
user/
edit_form_preferences_form.php
David 1 Mar 2009
- web: fix buggy changeset 17278
html/user/
edit_form_preferences_form.php
David 1 Mar 2009
- manager and GUI RPC: always show resource debt and backoff even if zero;
also show backoff interval
clientgui/
DlgItemProperties.cpp
lib/
gui_rpc_client.h
gui_rpc_client_ops.cpp
2009-03-02 17:57:57 +00:00
David 2 Mar 2009
- fix bugs in the above.
- GUI RPC: remove unused items from get_state RPC: host_info, time_stats,
net_stats, host_venue
NOTE: any change to a GUI RPC struct requires changing AsyncRPC.cpp.
This is undesirable.
client/
cs_statefile.cpp
clientgui/
AsyncRPC.cpp
lib/
gui_rpc_client_ops.cpp
David 2 Mar 2009
- Manager: scheduling params are not defined for non-CPU-intensive projects;
don't show them.
clientgui/
DlgItemProperties.cpp
Rom 2 Mar 2009
- Update to OpenSSL 0.9.8j for Win32 and Win64
openssl/
<Various Files>
David 2 Mar 2009
- scheduler: replace choose_download_url_by_timezone with
replace_download_url_by_timezone.
From Bernd M.
sched/
sched_timezone.cpp
sched_config.cpp,h
sched_send.cpp
Rom 2 Mar 2009
- Update to LibCurl 7.19.3 for Win32 and Win64
curl/
<Various Files>
David 2 Mar 2009
- scheduler/feeder: add <locality_scheduler_fraction> option;
lets you intermix locality and job-cache scheduling
From Bernd M.
2009-03-03 00:14:51 +00:00
- file_deleter: add --appid option
sched/
feeder.cpp
2009-03-03 00:14:51 +00:00
file_deleter.cpp
handle_request.cpp
sched_config.cpp,h
sched_send.cpp
David 2 Mar 2009
- scheduler: add <locality_scheduling_sticky_file>
and <locality_scheduling_workunit_file> options
From Bernd M.
sched/
sched_config.cpp,h
sched_locality.cpp
Charlie 2 Mar 2009
- client: Revise Apple idle time detection for compatibility with OS 10.6.
client/
hostinfo_unix.cpp
lib/
hostinfo.h
Charlie 3 Mar 2009
- Mac: Update libCurl to 7.19.4.
mac_build/
buildcurl.sh
HowToBuildBOINC_XCode.rtf
setupForBOINC.sh
boinc.xcodeproj/
project.pbxproj
Charlie 3 Mar 2009
- WINSCR: fix an error I introduced.
- Mac screensaver: logic to stop Data Management thread even if hung on
an RPC.
clientscr/
mac_saver_module.cpp
screensaver.cpp, .h
screensaver_win.cpp
David 3 Mar 2009
- scheduler: add locality_scheduling arg to add_result_to_reply();
eliminate the need to diddle around with config.locality_scheduling.
sched/
sched_array.cpp
sched_assign.cpp
sched_locality.cpp
sched_resend.cpp
sched_send.cpp,h