Commit Graph

10843 Commits

Author SHA1 Message Date
David Anderson 2b2e7c5cf9 - API: remove support for BMP and TGA image files;
the code to parse these had no license info.
    Only JPEG is supported now.


svn path=/trunk/boinc/; revision=25976
2012-08-03 21:56:42 +00:00
Rom Walton 1799dd2620 - WIN: Make the example graphics application build again.
- WIN: Get rid of the linker warnings for both the default screensaver and
        the example graphics application

svn path=/trunk/boinc/; revision=25975
2012-08-03 21:12:49 +00:00
David Anderson 1189951953 - volunteer storage. Seems to be working, at least in simulation
svn path=/trunk/boinc/; revision=25974
2012-08-03 16:41:00 +00:00
Rom Walton e613459377 - VBOX: Do not perform the hardware virtualization check when the
guest VM is 64-bit.  64-bit guest vms require hardware virtualization
        and should fail without it.
    - VBOX: Implement the <copy_to_shared/> directive in the vbox_job.xml file.
        if <copy_to_shared>init_data.xml</copy_to_shared> is set, the wrapper will
        copy the init_data.xml file to the shared directory before the VM is launched.

svn path=/trunk/boinc/; revision=25973
2012-08-03 16:24:12 +00:00
Charlie Fenton 2157e5b89a Sample Graphics app: Switch from *.txf fonts to TrueType fonts
svn path=/trunk/boinc/; revision=25969
2012-08-03 08:59:32 +00:00
Rom Walton 832386c4e0 - SS: Update project files to use FreeType and FTGL on Windows.
api/
        ttfont.cpp, .h
    clientscr/
        ss_app.cpp
    win_build/
        boinc_ss.vcproj
        libgraphics2.vcproj

svn path=/trunk/boinc/; revision=25962
2012-08-03 01:18:20 +00:00
David Anderson c4b337d276 - scheduler: compile fixes for FCGI
svn path=/trunk/boinc/; revision=25955
2012-08-02 16:17:10 +00:00
Charlie Fenton 55cf688abe Mac: Update scripts for building branded installers to allow building with Xcode 4.3 under OS 10.7.x Lion
svn path=/trunk/boinc/; revision=25951
2012-08-02 11:20:22 +00:00
Charlie Fenton 79a201ce33 API, SCR: Switch from *.txf fonts to TrueType fonts in graphics apps, ensuring that all related files have no licensing issues
svn path=/trunk/boinc/; revision=25945
2012-08-02 07:21:03 +00:00
Charlie Fenton a49e933d7e API, SCR: Switch from *.txf fonts to TrueType fonts in graphics apps, ensuring that all related files have no licensing issues
svn path=/trunk/boinc/; revision=25944
2012-08-02 07:19:11 +00:00
Charlie Fenton 8624cfb5e9 API, SCR: Switch from *.txf fonts to TrueType fonts in graphics apps, ensuring that all related files have no licensing issues
svn path=/trunk/boinc/; revision=25941
2012-08-02 07:00:45 +00:00
Charlie Fenton 0a3bf2c1f4 API, SCR: Switch from *.txf fonts to TrueType fonts in graphics apps, ensuring that all related files have no licensing issues
svn path=/trunk/boinc/; revision=25940
2012-08-02 06:59:49 +00:00
Charlie Fenton 6acb88ca81 API, SCR: Switch from *.txf fonts to TrueType fonts in graphics apps, ensuring that all related files have no licensing issues
svn path=/trunk/boinc/; revision=25939
2012-08-02 06:53:11 +00:00
David Anderson da7e40f142 - use <cmath> instead of <math.h>. Seems to be needed on Debian.
svn path=/trunk/boinc/; revision=25938
2012-08-01 21:21:38 +00:00
David Anderson 405f567c81 - code cleanup: in foo.cpp, include foo.h first
svn path=/trunk/boinc/; revision=25933
2012-08-01 20:04:05 +00:00
David Anderson ab120dea9e - web: after post to a thread, show thread in user's chosen order
instead of newest first.


svn path=/trunk/boinc/; revision=25931
2012-08-01 17:57:56 +00:00
Rom Walton 136f06fa00 - MGR: Use the same fix for the simple gui that we used on the advanced
gui with regards to the menu on Ubuntu's interface.

svn path=/trunk/boinc/; revision=25919
2012-07-30 20:25:39 +00:00
Charlie Fenton 1aed0d60f2 Mac: create build scripts for FreeType-2.4.10 and FTGL-2.1.3-rc5 libraries
svn path=/trunk/boinc/; revision=25900
2012-07-27 12:29:16 +00:00
Charlie Fenton cad7de4458 Mac: create build scripts for FreeType-2.4.10 and FTGL-2.1.3-rc5 libraries
svn path=/trunk/boinc/; revision=25899
2012-07-27 11:45:46 +00:00
Charlie Fenton f43cd508e3 Mac: create build scripts for FreeType and FTGL
svn path=/trunk/boinc/; revision=25898
2012-07-27 11:43:54 +00:00
Charlie Fenton 479a1aa963 Mac: fix a typo in build script
svn path=/trunk/boinc/; revision=25897
2012-07-26 08:53:02 +00:00
David Anderson 6e816094bd - volunteer data storage: intermediate checkin
svn path=/trunk/boinc/; revision=25890
2012-07-25 21:41:32 +00:00
David Anderson d319139186 - client: improve "new version available" notice
svn path=/trunk/boinc/; revision=25888
2012-07-23 22:29:40 +00:00
David Anderson ac20215eb8 - volunteer storage: implement "vda status" command
svn path=/trunk/boinc/; revision=25887
2012-07-23 21:53:09 +00:00
David Anderson 555cecbcae - client: don't request work for backup project for a processor type
unless there are idle instances of that type
        

svn path=/trunk/boinc/; revision=25886
2012-07-22 06:18:24 +00:00
David Anderson 11c2fdc36d - client simulator: fix build breaks
svn path=/trunk/boinc/; revision=25885
2012-07-22 03:54:10 +00:00
David Anderson 8761ed75f7 - lib: fix typo
svn path=/trunk/boinc/; revision=25884
2012-07-22 03:45:47 +00:00
Rom Walton 8d9ed07c5e quick update
svn path=/trunk/boinc/; revision=25883
2012-07-18 15:18:08 +00:00
Rom Walton fc1cfc00e8 - client: Re-introduce the WM_QUERYSESSIONEND window message handler to
the power management window proc, it was removed during one of the Win9x
        code scrubs.  When we see it, inform the client it is time to shutdown.

    client/
        sysmon_win.cpp

svn path=/trunk/boinc/; revision=25882
2012-07-18 15:17:30 +00:00
Bernd Machenschalk 54147365bb API: fix Makefile.mingw
- allow to augment CFLAGS and CXXFLAGS
        - allow to at least set DEBUG flags externally, such that
            backtrace flags can be used
        - minor textual fixes (whitespace error, typo in comment)

svn path=/trunk/boinc/; revision=25881
2012-07-18 11:12:06 +00:00
Charlie Fenton 6f330ed430 lib: Adjust #include files as requested by Oliver Bock
svn path=/trunk/boinc/; revision=25880
2012-07-18 08:49:27 +00:00
David Anderson 8b67c32187 - client: if we get a job for which a GPU is missing,
keep the RESULT record so that we can report it to the scheduler.
		Otherwise we'll keep getting the same job if the project has
		<resend_lost_results> set.

svn path=/trunk/boinc/; revision=25879
2012-07-18 01:42:08 +00:00
David Anderson 028d4d9a36 - client: delete sticky files when reset project
svn path=/trunk/boinc/; revision=25878
2012-07-17 21:45:19 +00:00
David Anderson aedbf28981 - compile fix (from Oliver)
svn path=/trunk/boinc/; revision=25877
2012-07-17 16:42:06 +00:00
Charlie Fenton f0ed936d47 Mac: Minor corrections to documentation and sample code
svn path=/trunk/boinc/; revision=25876
2012-07-17 11:22:05 +00:00
David Anderson 98f6763c48 - web: make "jump to first unread" work for threads that
haven't been viewed before


svn path=/trunk/boinc/; revision=25875
2012-07-17 04:06:48 +00:00
David Anderson 9a84980792 - lib: treat MINGW32 like CYGWIN32 (in 1 place - should do everywhere?)
from Oliver


svn path=/trunk/boinc/; revision=25874
2012-07-17 03:59:12 +00:00
David Anderson 0335c357ab - web: use &middot; instead of | as a separator
svn path=/trunk/boinc/; revision=25873
2012-07-13 22:19:26 +00:00
David Anderson 6f98eae87d - web: after post to a thread, show a page of the most recent posts
(but don't change user's sort prefs)


svn path=/trunk/boinc/; revision=25872
2012-07-13 21:40:20 +00:00
David Anderson 075d544c9f - web: when posting to a thread, show a page of its most recent posts
- feeder: add --by_batch option: interleaves jobs from different batches.
    From Jack Harris.


svn path=/trunk/boinc/; revision=25871
2012-07-13 21:10:38 +00:00
David Anderson 1b8e8fbb7f - web: don't try to update thread last-read-time if not logged in
svn path=/trunk/boinc/; revision=25870
2012-07-12 22:43:23 +00:00
David Anderson 52b72d620e - web: make links to specific posts work with pagination
svn path=/trunk/boinc/; revision=25869
2012-07-12 19:01:34 +00:00
David Anderson 99a077c642 - web: make "jump to first unread" for with pagination
svn path=/trunk/boinc/; revision=25868
2012-07-12 18:07:06 +00:00
Charlie Fenton 17db492473 Mac: update sample code to allow building with Xcode 4.4 GM seed under OS 10.8 GM seed
svn path=/trunk/boinc/; revision=25867
2012-07-12 12:45:42 +00:00
Charlie Fenton d059de100f Mac: update sample code to allow building with Xcode 4.4 GM seed under OS 10.8 GM seed
svn path=/trunk/boinc/; revision=25866
2012-07-12 11:51:21 +00:00
David Anderson 5fc1577eea - web: forum fixes
svn path=/trunk/boinc/; revision=25865
2012-07-12 06:40:58 +00:00
David Anderson 490b740682 - web: improve forum pagination
svn path=/trunk/boinc/; revision=25863
2012-07-11 19:24:28 +00:00
Charlie Fenton 72007821b7 Mac: update sample code to allow building with Xcode 4.3 and to eliminate compiler warnings
svn path=/trunk/boinc/; revision=25862
2012-07-11 10:32:09 +00:00
David Anderson b162aa3d2b - user web: add "posts per page" pref for message boards;
get rid of existing funky page-limit prefs


svn path=/trunk/boinc/; revision=25859
2012-07-11 05:27:31 +00:00
David Anderson f3c8ab83e9 - web: show job status correctly for new exit codes
svn path=/trunk/boinc/; revision=25858
2012-07-10 20:21:12 +00:00
David Anderson 6a8075046b - Unix: include db/boinc_db_types.h in installed headers
- client: small code cleanup, no functional change


svn path=/trunk/boinc/; revision=25857
2012-07-10 17:28:04 +00:00
Charlie Fenton cd1ad97464 Mac: update build scripts, source files and Xcode project to allow building with Xcode 4.3 and Xcode 4.5
svn path=/trunk/boinc/; revision=25855
2012-07-10 09:28:17 +00:00
David Anderson 78f74661aa - distributed storage: move chunk_size to VDA_FILE.
Add some missing code.


svn path=/trunk/boinc/; revision=25854
2012-07-07 19:44:48 +00:00
Charlie Fenton f64cb7d62f Mac: update build scripts to work with Xcode 4.3 for Lion and later
svn path=/trunk/boinc/; revision=25850
2012-07-06 12:11:28 +00:00
David Anderson 68f9880615 - client: remove "device" entry from CUDA_DEVICE_PROP,
and change types of mem-size fields from int to double.
    These fields are size_t in NVIDIA's version of this;
    however, cuDeviceGetAttribute() returns them as int,
    so I don't see where this makes any difference.
- client: fix bug in handling of <no_rsc_apps> element.
- scheduler: message tweaks.
    Note: [foo] means that the message is enabled by <debug_foo>.



svn path=/trunk/boinc/; revision=25849
2012-07-05 20:24:17 +00:00
Charlie Fenton 2355cf200d Mac: update script which builds our installer to work with Xcode 4.3 for Lion and later
svn path=/trunk/boinc/; revision=25847
2012-07-05 12:02:16 +00:00
David Anderson f9a9c3090f - Client (Win): in file_size(), use _stat64() instead of stat().
Otherwise it doesn't work for files >= 2GB
	- Client: TIME_STATS::trim_stats_log() wasn't working because
		it's called in the constructor of TIME_STATS,
		which is called before we've done a chdir() to the data dir.

	Note: for this reason, no disk access should be done in constructors
	of global objects.  A quick scan found no instances of this.

svn path=/trunk/boinc/; revision=25846
2012-07-03 22:36:59 +00:00
Charlie Fenton bcf10a7421 Mac client: Update Xcode project for compatibility with Xcode 4.3.2 and Xcode 4.5
svn path=/trunk/boinc/; revision=25843
2012-07-03 07:36:55 +00:00
Charlie Fenton 687c8e1a5d Mac: fix build break.
svn path=/trunk/boinc/; revision=25842
2012-07-03 07:31:06 +00:00
David Anderson eacd1d870b - Unix build: fix problem with Debian automated builds; from Steffen M
svn path=/trunk/boinc/; revision=25839
2012-07-02 19:49:06 +00:00
David Anderson 8d8662adb2 - more code cleanup
svn path=/trunk/boinc/; revision=25838
2012-07-02 19:31:34 +00:00
David Anderson 19458ba4de - Compile fixes for Fedora core 17. From Christian B. Fixes #1194.
- Fix various #include issues.

CODING STYLE LAW (minimal inclusion principle):
    If foo.cpp requires <blah.h>,
    #include <blah.h> in foo.cpp, NOT foo.h


svn path=/trunk/boinc/; revision=25837
2012-07-02 18:51:02 +00:00
David Anderson 430f6a0813 - client: in the job scheduler, there's a check to prevent
overcommitting the CPUs if an MT is scheduled.
    Skip this check for GPU jobs.


svn path=/trunk/boinc/; revision=25835
2012-07-02 17:58:33 +00:00
David Anderson 89578050f7 - When the client makes a scheduler RPC without requesting work,
and there's a simple reason
    (e.g. the project is suspended, no-new-tasks, downloads stalled, etc.)
    show it in the event lot.
    If the reason is more complex, don't try to explain.


svn path=/trunk/boinc/; revision=25827
2012-07-02 03:43:05 +00:00
David Anderson fc2af21221 - client: add missing end tag for <pci_info>. Doh!
- validator: add some sanity-checking for credit,
    to prevent granting 1e38 credit.
    max_granted_credit now defaults to the equivalent of 1 TeraFLOP-year.
    Instances that exceed this are not counted in the credit
    calculation, and a critical-mode log message is written
- wrapper: remove wall_cpu_time; not used anymore


svn path=/trunk/boinc/; revision=25825
2012-06-29 22:24:07 +00:00
David Anderson 1776a244ae - web: when showing a batch, recompute and update its fraction done
- feeder: don't enumerate results for WUs with nonzero error_mask
- scheduler: in slow_check(), make sure the WU error_mask is still zero


svn path=/trunk/boinc/; revision=25822
2012-06-29 06:53:48 +00:00
David Anderson f3eb1d350e - client: when estimating FLOPS for an anonymous-platform app version
for which no estimate has been supplied by user,
    use (CPU speed)*(cpu_usage + 10*gpu_usage)
    (add the 10*)


svn path=/trunk/boinc/; revision=25821
2012-06-29 05:17:01 +00:00
Charlie Fenton 413ff778b9 Mac client: Update wxMac build script for partial compatibility with OS 10.8 and XCode 4.5
svn path=/trunk/boinc/; revision=25819
2012-06-28 09:32:56 +00:00
David Anderson 6b5bb0a3e6 - Unix build tweak
svn path=/trunk/boinc/; revision=25818
2012-06-28 06:27:37 +00:00
David Anderson 3fee87fd62 - Unix build: remove "if" around AC_PROG_OBJCXX;
apparently this is needed for Gentoo build.
    You may need a recent automake for this to work.
    Fixes #1193.


svn path=/trunk/boinc/; revision=25805
2012-06-27 06:02:10 +00:00
David Anderson d5d9921f5c - Unix build tweaks. Fixes #1193 (I think)
svn path=/trunk/boinc/; revision=25804
2012-06-27 05:03:16 +00:00
David Anderson f8c1665722 - client: keep track of the fraction of time that
1) a network connection is available and
    2) network communication is allowed and
    3) CPU computation is allowed
- If an app version is marked as needs_network,
    use the above fraction in estimating its rate of progress
- replace "core client" with "client" in comments.
- scheduler: message tweaks


svn path=/trunk/boinc/; revision=25803
2012-06-26 20:30:56 +00:00
Charlie Fenton f940e11dff Mac client: build libssl.a and libcrypto.a from openssl 1.0.1c and static link them
svn path=/trunk/boinc/; revision=25797
2012-06-26 07:54:38 +00:00
Charlie Fenton 3be6e7ab11 Mac client: Upgrade to curl 7.26.60 and c-ares 1.9.1
svn path=/trunk/boinc/; revision=25795
2012-06-26 07:24:07 +00:00
David Anderson c5ed9d7db6 - Unix build: fix for Mac OS X (from Oliver)
svn path=/trunk/boinc/; revision=25794
2012-06-25 23:24:49 +00:00
David Anderson 07d867b33f - Unix build: fix typo
svn path=/trunk/boinc/; revision=25793
2012-06-25 23:22:13 +00:00
David Anderson 8c71f6d59a - scheduler: add support for Intel GPUs, and restructure things
to make it easier to add other GPU types in the future


svn path=/trunk/boinc/; revision=25792
2012-06-25 23:09:45 +00:00
David Anderson c9f3c16f86 - client: AMD GPU detection addition (from [P3D] Crashtest)
svn path=/trunk/boinc/; revision=25790
2012-06-22 18:23:09 +00:00
Charlie Fenton 40eee78d8b Mac: Code sign the BOINC installer and uninstaller if we have a valid code signing identity
svn path=/trunk/boinc/; revision=25788
2012-06-22 09:46:26 +00:00
David Anderson fd0983b991 - web: server status page should show elapsed time, not CPU time
svn path=/trunk/boinc/; revision=25785
2012-06-22 07:35:54 +00:00
Charlie Fenton 78ea295d9a Mac: Fix displayed names of BOINC installer, uninstaller, etc.
svn path=/trunk/boinc/; revision=25783
2012-06-22 04:28:45 +00:00
David Anderson 9f6fa7c1ad - API, Linux: increase timer thread stack size from 16K to 32K.
Apparently new use of MAXPATHLEN can cause overflow.
    Fixes #1191


svn path=/trunk/boinc/; revision=25781
2012-06-21 19:13:49 +00:00
David Anderson cc642f7947 - web: fix BOINCStats link for host details
svn path=/trunk/boinc/; revision=25780
2012-06-21 17:03:47 +00:00
David Anderson 3b26791411 - fix configure error on Linux.
I think the AC_PROG_OBJCXX should be limited to Mac somehow


svn path=/trunk/boinc/; revision=25779
2012-06-21 03:53:50 +00:00
Charlie Fenton 29a3bf449e Mac: Update XCode project with new source files
svn path=/trunk/boinc/; revision=25778
2012-06-20 07:42:00 +00:00
David Anderson 126a54c3d9 - client: AMD GPU detection addition (from [P3D] Crashtest)
svn path=/trunk/boinc/; revision=25777
2012-06-20 03:30:13 +00:00
David Anderson 133430fa3b - client: for NVIDIA, make an array of the PCI info
for all usable GPUs


svn path=/trunk/boinc/; revision=25775
2012-06-18 21:09:16 +00:00
David Anderson 5cf6321b67 - win compile fixes
svn path=/trunk/boinc/; revision=25774
2012-06-18 20:49:26 +00:00
David Anderson b050deecf7 - client: compile fixes
svn path=/trunk/boinc/; revision=25773
2012-06-18 20:41:37 +00:00
David Anderson 2ccefde745 - client: rename coproc_detect.cpp to gpu_detect.cpp
svn path=/trunk/boinc/; revision=25772
2012-06-18 20:14:21 +00:00
David Anderson 5e61c29cc3 - client: split GPU detection code into separate files
svn path=/trunk/boinc/; revision=25771
2012-06-18 20:12:30 +00:00
David Anderson 5e87181d81 - client: it's possible for a host to get app versions for
a given app that have different platforms and different version #s.
    The client was erroneously deleting the one w/ the lower version
    when it was no longer in use.
    Fix: in garbage collection, consider one version to supercede another
    only if they have the same platform


svn path=/trunk/boinc/; revision=25770
2012-06-18 17:57:33 +00:00
Charlie Fenton 4d244f0cc4 Mac installer: Create or delete Login Items and set screensaver properly when installing for multiple users on OS 10.7, 10.8
svn path=/trunk/boinc/; revision=25763
2012-06-18 11:11:44 +00:00
Charlie Fenton 4d398df9d8 Mac installer: Fix bugs I introduced on May 3 and May 6
svn path=/trunk/boinc/; revision=25762
2012-06-16 15:03:11 +00:00
David Anderson 0cc0370f02 - client, GUI RPC: detect and export the PCI bus, device, and domain #s.
- scheduler: increase #GPU limit from 8 to 64


svn path=/trunk/boinc/; revision=25761
2012-06-15 20:49:11 +00:00
David Anderson 4dc940653c - client:
- added the definitions for the new Windows 7/2008r2 preSP1
            and Windows 8/2012 SKUs based on the winnt.h
            from the Windows 8 RC SKD (also added as proof)
        - added the detection for some more Windows SKU
        - Updates provided by Teamwork of Planet3Dnow.de to coproc_detect.cpp
            - added CAL_TARGET_ID 21 as : AMD Radeon HD 78x0 series (Pitcairn)
        (from [P3D] Crashtest)

svn path=/trunk/boinc/; revision=25760
2012-06-14 18:45:58 +00:00
David Anderson e9362c80ff - scheduler: send <dont_use_dcf> only if client is 7.0.28 or later.
svn path=/trunk/boinc/; revision=25759
2012-06-14 17:14:52 +00:00
Charlie Fenton 7add13f1af client: if available, use GPU model name from CAL for OpenCL model name
svn path=/trunk/boinc/; revision=25757
2012-06-13 23:14:12 +00:00
David Anderson 3a2328b10d - scheduler: remove <dont_use_dcf/> from scheduler reply for now;
the 7.0.25 client has a bug that causes jobs
    to run EDF if this flag is present.


svn path=/trunk/boinc/; revision=25755
2012-06-13 17:40:39 +00:00
Rom Walton f04f6b3eae - Make things build again on Mac OSX 10.8 using the autoconf
framework.
      (From Oliver Bock)
      
    /
        configure.ac  

svn path=/trunk/boinc/; revision=25754
2012-06-12 15:43:41 +00:00
Bernd Machenschalk 579ed0bd92 - API: fix #2 for C-mode compilation of boinc_api.h
app_ipc.h didn't cleanly compile in C-mode either,
had to fix this, too.

svn path=/trunk/boinc/; revision=25753
2012-06-11 12:51:30 +00:00
Bernd Machenschalk 4c5014416d - API: fix for C-mode compilation of boinc_api.h
moved app_ipc.h inclusion outside __cplusplus                                                                                                                                                                                  
        since it contains important C mode prototypes                                                                                                                                                                                  
        (boinc_resolve_filename() etc.)

svn path=/trunk/boinc/; revision=25752
2012-06-10 13:44:01 +00:00
David Anderson 54078e92c4 - fixes of various (non-critical) fd and memory leaks.
Fixes #1188.  From Julien.
- fix bugs in setting scheduler output buffer size
- code formatting


svn path=/trunk/boinc/; revision=25750
2012-06-10 05:38:34 +00:00
David Anderson 751fdd97ca - scheduler: add <min_cal_target>, <max_cal_target>
to plan class XML spec options;
    lets you specify a range of ATI GPU models to use


svn path=/trunk/boinc/; revision=25749
2012-06-07 21:08:47 +00:00
David Anderson f08ca99ff3 - scheduler: add max_results_accepted config option.
Limits mem usage by the scheduler, can prevent crashes.


svn path=/trunk/boinc/; revision=25748
2012-06-07 18:34:53 +00:00
David Anderson 0492e0c2b8 - scheduler: add <need_ati_libs> option
svn path=/trunk/boinc/; revision=25747
2012-06-07 03:39:37 +00:00
Bernd Machenschalk 470c505d78 - scheduler: minor fixes to plan_clas_spec:
- consistently accept both 'ati' and 'amd' for AMD/ATI plan classes
      - in OpenCL plan classes always use device memory reported via OpenCL
        (might be different e.g. from what's available/reported via CUDA)
      - comment formatting

svn path=/trunk/boinc/; revision=25744
2012-06-06 10:05:00 +00:00
Bernd Machenschalk ac24fafb4c - scheduler: moved client version check to be last of the checks
performed for a particular app version. It is not necessary
        to tell the user to upgrade the client just to suite the needs of
        a particular app version if this app version requires resources
        that the host dosn't have or didn't request work for.

        Actually I don't think it's good to tell the user he needs to
        upgrade the client if there is only one particular app version
        that requires a more recent one than he has. I think that the
        purpose of the g_wreq->outdated_client flag was checking the                                                                                                                                     
        min_core_version in the project configuration. For this the                                                                                                                                      
        flag and the notice/message that it triggers is still ok. But                                                                                                                                    
        in the app version checks setting this flag leads to misleading                                                                                                                                  
        messages in most cases, so I commented that out for now.

        I'm not sure, though, that both of these measurements are needed.

svn path=/trunk/boinc/; revision=25742
2012-06-06 09:11:41 +00:00
David Anderson c94ca443c1 - scheduler: add example plan_class_spec.xml
- scheduler: change gpu_type from "ati" to "amd" in plan class spec


svn path=/trunk/boinc/; revision=25741
2012-06-06 06:05:14 +00:00
David Anderson 567fdc45fc - scheduler: add Vbox stuff to plan_class_spec
svn path=/trunk/boinc/; revision=25739
2012-06-06 04:45:12 +00:00
David Anderson b0fd55bf87 - scheduler: debug plan_class_spec a little.
Add an #ifdef'd main program in plan_class_spec.cpp,
    and a makefile, for testing purposes.


svn path=/trunk/boinc/; revision=25738
2012-06-06 03:47:13 +00:00
David Anderson b05f02e5aa - small code cleanup
svn path=/trunk/boinc/; revision=25737
2012-06-05 20:13:19 +00:00
David Anderson 158aab8d5c - DB: add project_state and description fields to batch table.
Both are for use by project.
- job submission file sandbox: don't delete physical file
    when delete sandbox entry.
    We'll have to figure out how to garbage-collect physical files.
- LAMMPS job submission:
    use the 50th-percentile host,not 0th


svn path=/trunk/boinc/; revision=25734
2012-06-05 05:57:55 +00:00
David Anderson 8d284f2b17 - scheduler: if we truncate the # of results accepted
(like we're doing in SETI@home)
    don't resend lost results since we don't know what they are


svn path=/trunk/boinc/; revision=25733
2012-06-05 03:48:05 +00:00
David Anderson 69a595329d - scheduler: various fixes to plan_class_spec.cpp; from Bernd
- admin web: don't include the project's stylesheet,
    which may assume a layout not used by admin pages


svn path=/trunk/boinc/; revision=25731
2012-06-03 17:31:00 +00:00
Rom Walton 11f509e2bf - MGR: Wait until there is valid data in the list box before processing
the OnProjectSelected() event.
        
    clientgui/
        ProjectInfoPage.cpp

svn path=/trunk/boinc/; revision=25729
2012-05-30 19:44:14 +00:00
David Anderson 127f22e841 - feeder: if we purge a stale job, and it's commited to an HR class,
un-commit it since that's probably the reason why it's stuck
    (and it may never get unstuck)


svn path=/trunk/boinc/; revision=25726
2012-05-29 06:32:11 +00:00
David Anderson 07501af2bc - web: allow users with admin privileges to abort or retire batches
svn path=/trunk/boinc/; revision=25725
2012-05-29 05:59:23 +00:00
David Anderson 4ee93b2da2 - fix tools/manage_privileges script
svn path=/trunk/boinc/; revision=25724
2012-05-29 05:48:25 +00:00
David Anderson 62d12c946e - user web: job submission home page has
1) links to job submission pages for relevant apps
    2) links to Admin pages for relevant apps


svn path=/trunk/boinc/; revision=25723
2012-05-29 04:47:48 +00:00
David Anderson 965faa3b71 - web RPC: in am_set_info, if both GET and POST args are present, use POST
svn path=/trunk/boinc/; revision=25721
2012-05-27 07:53:57 +00:00
David Anderson 44c75becca - admin web: fix revalidated script
svn path=/trunk/boinc/; revision=25720
2012-05-27 06:26:10 +00:00
David Anderson e43f04c52a - web RPC: make am_set_info available by POST as well as GET,
since its args can be too long for a URL


svn path=/trunk/boinc/; revision=25718
2012-05-26 21:53:03 +00:00
David Anderson e7a7a4e1a2 - web: increase size of thread title input field to 80
svn path=/trunk/boinc/; revision=25717
2012-05-26 20:09:39 +00:00
David Anderson 22af0334b9 - web: don't truncate thread titles
svn path=/trunk/boinc/; revision=25716
2012-05-26 20:08:24 +00:00
David Anderson 0a686c5195 - fix typos in two PHP scripts
svn path=/trunk/boinc/; revision=25715
2012-05-26 05:18:04 +00:00
David Anderson 761fb3f4c1 - admin web: add a function for "revalidating" a given set of jobs.
This reruns validation for instances that are successful
    but marked as invalid or inconclusive.
    Use this if you changed your validator to be more permissive,
    and you want to grant credit for instances that were
    originally marked as invalid.


svn path=/trunk/boinc/; revision=25714
2012-05-25 23:49:17 +00:00
David Anderson a596560a17 - server: rename fix_venue.php to fix_prefs.php
svn path=/trunk/boinc/; revision=25713
2012-05-25 20:41:07 +00:00
David Anderson e82d605554 - server: make fix_venue.php work faster
svn path=/trunk/boinc/; revision=25712
2012-05-25 20:39:37 +00:00
David Anderson 9bba5f4349 - get rid of BOINC_SOCKLEN_T stuff; just use socklen_t
svn path=/trunk/boinc/; revision=25709
2012-05-23 23:19:38 +00:00
David Anderson d41f79588d - server daemons: add daemon_sleep(n), which sleeps for n secs
but checks for the "stop_daemons" trigger file every 1 sec.
    Use this instead of sleep() in daemons.
    This will speed up bin/stop.


svn path=/trunk/boinc/; revision=25708
2012-05-23 18:11:59 +00:00
David Anderson d2d9110584 - add script to repair damaged user.global_prefs fields
- compile warning fixes


svn path=/trunk/boinc/; revision=25707
2012-05-23 00:25:19 +00:00
Rom Walton 351b9f9b79 - MGR: Fix menu redraw issue under Ubuntu's new interface.
fixes #1180
      (From Huibert)

    clientgui/
        AdvancedFrame.cpp

svn path=/trunk/boinc/; revision=25702
2012-05-21 15:17:11 +00:00
David Anderson 13f51d42e5 - API: add boinc_network_usage();
lets an application report its network usage to BOINC,
    and hence take it into account with monthly limits etc.
- API: get rid of deprecated boinc_ops_per_cpu_sec(),
    boinc_ops_cumulative(), and
    boinc_set_credit_claim();
- admin web: update manage_apps.php;
    add the ability to set homogeneous app version


svn path=/trunk/boinc/; revision=25700
2012-05-20 23:02:12 +00:00
Rom Walton 27138f6e75 - MGR: Fix build breaks
clientgui/
        AccountManagerInfoPage.cpp
    clientgui/
        ProjectListCtrl.cpp, .h

svn path=/trunk/boinc/; revision=25699
2012-05-19 01:20:02 +00:00
Charlie Fenton cc3942131e VBOX: Fix Mac compiler warnings
svn path=/trunk/boinc/; revision=25698
2012-05-19 01:12:33 +00:00
David Anderson 1aea1fb0f3 - client: show <vbox_window> option in log,
and give warning if include this while in sandbox mode
- web: update URLs for BOINCstats

svn path=/trunk/boinc/; revision=25697
2012-05-18 22:13:36 +00:00
Rom Walton 70c92e317a - MGR: Remove the visuals in the wizard for multi-core and opencl. This area
will get a bunch of work in a future commit.
        
    clientgui/
        ProjectInfoPage.cpp, .h
    clientgui/res/
        openclicon.xpm (deleted)
        multicore.xpm (deleted)

svn path=/trunk/boinc/; revision=25696
2012-05-18 18:33:06 +00:00
David Anderson c8c85f4a75 - vboxwrapper: don't run headful if client is sandboxed (it won't work).
svn path=/trunk/boinc/; revision=25695
2012-05-18 18:24:58 +00:00
David Anderson 023031a497 - scheduler: add a lot more debug messages if <debug_array> is set
svn path=/trunk/boinc/; revision=25694
2012-05-18 18:13:04 +00:00
David Anderson 138c8f5f7d - web: fix PHP warnings by calling date_default_timezone_set().
Set it to the timezone specified by the constant TIMEZONE
    (in project.inc) or "UTC" if none specified.
- web: fix bugs in submit.php

svn path=/trunk/boinc/; revision=25693
2012-05-18 17:57:14 +00:00
David Anderson 87fcaea0ce - web: show "run beta apps?" project pref if the project
has any beta applications
        (don't require project to specify this in project_specific_prefs.inc)

svn path=/trunk/boinc/; revision=25692
2012-05-18 17:48:50 +00:00
David Anderson b2a4cd4d91 svn path=/trunk/boinc/; revision=25691 2012-05-18 17:38:16 +00:00
Rom Walton 93750d6264 - MGR: Fix the icon we use to represent OpenCL.
- client: Update the stock all_project_list.xml file we send out
        with new client software.

    clientgui/res/
        openclicon.xpm
    win_build/installerv2/redist/
        all_projects_list.xml

svn path=/trunk/boinc/; revision=25679
2012-05-15 17:50:59 +00:00
Rom Walton 62dc78ecf3 - Normalize the way E@H returns OpenCL information to the client
software.
        
    doc/
        get_platforms.inc

svn path=/trunk/boinc/; revision=25678
2012-05-15 17:29:53 +00:00
Rom Walton bd8cee05e6 - MGR: Add OpenCL icon to the ProjectInfo wizard page.
clientgui/
        ProjectInfoPage.cpp, .h
    clientgui/res/
        openclicon.xpm
    clientgui/res/templates/
        openclicon.png
    lib/
        diagnostics.cpp

svn path=/trunk/boinc/; revision=25676
2012-05-15 16:42:39 +00:00
David Anderson 71e93caf85 - scheduler: revision of app_plan_spec mechanism.
Not debugged, but it compiles now.


svn path=/trunk/boinc/; revision=25675
2012-05-14 19:49:12 +00:00
David Anderson 7f3fd1f45e - LAMMPS script: chdir back to html/user, else page_head() breaks
svn path=/trunk/boinc/; revision=25674
2012-05-14 06:54:38 +00:00
David Anderson 245aa70cf9 - web: use gmdate() instead date() to avoid time zone warning
svn path=/trunk/boinc/; revision=25673
2012-05-12 15:13:43 +00:00
Rom Walton 63483b5bb7 - VBOX: When the system confirms our port number request or assigns us a
new port number to work with convert it from network byte order 
        (big endian) to the host byte order (little endian on x86/x64 processors).

    samples/vboxwrapper/
        vbox.cpp

svn path=/trunk/boinc/; revision=25671
2012-05-11 18:53:36 +00:00
Bernd Machenschalk 003700930e scheduler: don't try to send_file_deletes() with an incomplete request
svn path=/trunk/boinc/; revision=25670
2012-05-11 09:45:02 +00:00
David Anderson ceef77edfc - diagnostics lib:
- store file sizes as double rather than int
    - if we're appending to log files, initialize the
        size variables to the current size
    - check return value of fprintf, only increment size if it's +
    - when rotate log file, reset size var to zero


svn path=/trunk/boinc/; revision=25669
2012-05-10 19:47:51 +00:00
Charlie Fenton c251286db5 MGR: Eliminate QuickDraw calls for OS 10.8 compatibility
svn path=/trunk/boinc/; revision=25667
2012-05-10 08:56:58 +00:00
Rom Walton 1751c5d698 - lib: Fix a bug where information that was meant for stdout was
being written to stderr instead.
    - lib: Keep track of the rough estimate of stdout and stderr by
        incrementing internal variables instead of doing a stat on
        each log write.  stat() on Windows is converted to a FindFirstFile()
        call which in turn looks up the file size information in the
        directory structure file system entry.  The directory structure 
        information is only updated periodically.  This lead to larger
        than expected log file for both the manager and core client.
        
        This has the added advantage of reducing the overall number of
        file I/O operations when logging information.
        
    lib/
        diagnostics.cpp

svn path=/trunk/boinc/; revision=25666
2012-05-09 23:22:37 +00:00
David Anderson f022b566de - Win compile fixes
svn path=/trunk/boinc/; revision=25665
2012-05-09 20:06:54 +00:00
David Anderson ed414c26f0 - compile fix
svn path=/trunk/boinc/; revision=25664
2012-05-09 20:03:15 +00:00
David Anderson 32a08d27d9 - C++ code: use MAXPATHLEN for char arrays that hold paths
svn path=/trunk/boinc/; revision=25659
2012-05-09 16:11:50 +00:00
Bernd Machenschalk 8b5b765bb7 scheduler: get app_version info for validator items
svn path=/trunk/boinc/; revision=25658
2012-05-09 08:04:21 +00:00
Bernd Machenschalk 84a53855ad scheduler: don't override avg_ncpus per default
svn path=/trunk/boinc/; revision=25657
2012-05-08 12:51:20 +00:00
Bernd Machenschalk f57f4634df scheduler: no functional change, just got rid of DOS linebreaks
svn path=/trunk/boinc/; revision=25656
2012-05-08 12:31:37 +00:00
Bernd Machenschalk 91c3ddda93 lib: added function secs_to_hmsf() which converts (double) seconds
to a string 0h00m00s00

svn path=/trunk/boinc/; revision=25655
2012-05-07 15:41:34 +00:00
David Anderson 4d1063728b - web: if user.has_profile = 0 but there actually is a profile,
update user.has_profile


svn path=/trunk/boinc/; revision=25654
2012-05-07 06:46:36 +00:00
David Anderson 1d43879c0a - client: fix bug where coproc name could be set incorrectly when:
a) there are multiple GPU vendors
    b) one of them is detected via OpenCL but not "native" (CUDA/CAL)


svn path=/trunk/boinc/; revision=25653
2012-05-06 10:25:14 +00:00
Charlie Fenton bb84a36d83 Mac installer: changes for OS 10.8 compatibility
svn path=/trunk/boinc/; revision=25651
2012-05-06 08:22:37 +00:00
Charlie Fenton bf0a467ba4 Mac installer: changes for OS 10.8 compatibility
svn path=/trunk/boinc/; revision=25645
2012-05-03 11:33:03 +00:00
David Anderson 9ecf34dfce svn path=/trunk/boinc/; revision=25634 2012-05-02 12:04:14 +00:00
Charlie Fenton 01b6037e77 Mac: Update XCode project with new source files
svn path=/trunk/boinc/; revision=25632
2012-04-30 23:55:12 +00:00
Charlie Fenton 633f461d01 lib: Fix compile break on Mac
svn path=/trunk/boinc/; revision=25631
2012-04-30 23:53:57 +00:00
David Anderson d89b665ae0 - client: if an app version needs OpenCL/CUDA/CAL,
make sure that the GPU supports it
    (fix bug where sometimes, e.g. CUDA detection fails
    but OpenCL succeeds, and we have a CUDA app).


svn path=/trunk/boinc/; revision=25630
2012-04-30 21:38:25 +00:00
David Anderson 331114d961 - client: minor code shuffle
svn path=/trunk/boinc/; revision=25627
2012-04-30 21:12:35 +00:00
David Anderson bbfbef0fe8 - client: code cleanup. Move RESULT and PROJECT to separate files
svn path=/trunk/boinc/; revision=25621
2012-04-30 21:00:28 +00:00
David Anderson 3b363f9a87 - web RPC: include rpc_time in XML host description
- client: if acct mgr sends us an account with no authenticator,
    show an error message instead of trying to attach


svn path=/trunk/boinc/; revision=25608
2012-04-30 18:46:50 +00:00
Rom Walton 7e3026abfa - WINSCR: Use the DefProcHandler function when processing WM_CLOSE/WM_DESTROY
window messages.  In effect, let Windows do the default thing.  This removes
        the hacks which kept the screensaver running with old versions of
        Microsoft's keyboard/mouse driver software installed.
        
    clientscr/
        screensaver_win.cpp, .h

svn path=/trunk/boinc/; revision=25607
2012-04-27 20:50:27 +00:00
David Anderson 42c909ae03 - scheduler: change ET_RATIO_LIMIT to 250
svn path=/trunk/boinc/; revision=25606
2012-04-27 06:17:59 +00:00
David Anderson e06a11174c - web: put <nobr> around username | log in
svn path=/trunk/boinc/; revision=25605
2012-04-27 06:10:08 +00:00
David Anderson 6888468d6d - scheduler: call get_reliability_and_trust() and get_prefs_info()
in send_work_setup(), so that they run before lost jobs are resent.
    Otherwise lost jobs could get sent using an app version
    that's prohibited by prefs


svn path=/trunk/boinc/; revision=25604
2012-04-26 21:40:20 +00:00
David Anderson 88b19afae1 - compile fix
svn path=/trunk/boinc/; revision=25602
2012-04-26 06:56:02 +00:00
David Anderson 72368a6b20 - A first attempt to fix the bug where apps die with exit(1)
(whereas they didn't do this w/ older clients).
    On Windows, the client uses TerminateProcess(h, 1) to kill processes;
    the 1 is the exit code the process will appear to have.

    So instead, add a "will_restart" bool arg to the various kill
    functions, and if set use 0 (= STATUS_SUCCESS),
    otherwise use EXIT_ABORTED_BY_CLIENT.

    Note: in principle this shouldn't make any difference
    for quitting tasks,
    since handle_exited_app() checks for task state QUIT_PENDING
    and ignores the exit code in that case.
    The only place I can see where it would make any difference
    is when we kill a process because it hasn't been handling
    queued shared-memory messages for 180 seconds.

- client: add more info to the message about an exited app

- client: function return values (ERR_*) are different from
    process exit codes (EXIT_*).
    But in many places we were using return values as exit codes.
    Fix these.
    Also, break out the different types of limits a job can exceed
    (time, disk, memory) into difference exit codes.


svn path=/trunk/boinc/; revision=25601
2012-04-26 05:28:45 +00:00
David Anderson db44fa1371 - client: enforce <no_gpus> in config file not just at startup,
but also when config file is re-read.


svn path=/trunk/boinc/; revision=25600
2012-04-25 18:14:28 +00:00
David Anderson 813470f08d - Bad logic in Win code:
if you have
        *pbuf = HeapAlloc(...)
    then you need
        if (*pbuf == NULL)
    not
        if (pbuf == NULL)
- various code cleanups from 
- Makefile.am: don't include clientgui/res; nothing to make there

from Steffen Moeller


svn path=/trunk/boinc/; revision=25599
2012-04-25 07:09:14 +00:00
David Anderson 6591272c80 - client: fix crashing bug that happened when a scheduler reply
had a parse error, and it included project files.
    While parsing the scheduler reply we'd add FILE_REFs to
    PROJECT::project_files,
    but wouldn't link them to FILE_INFOs since this is done
    only if the reply parses correctly.
    The next garbage_collect() would dereference these NULL pointers.

    Solution: parse the FILE_REFS into SCHEDULER_REPLY::project_files.
    Copy this to PROJECT::project_files only if the reply parses.


svn path=/trunk/boinc/; revision=25598
2012-04-25 05:51:26 +00:00
David Anderson 9d25481174 - scheduler: fix bug that tried to open plan class spec file
on each request.
- client: when showing how much work a scheduler request returned,
    scale by availability (as is done to show the amount of the request)
- client in account manager request, <not_started_dur> and
    <in_progress_dur> are in wall time, not run time
    (i.e. scale them by availability)

Note: there's some confusion in the code between runtime and wall time,
    where in general wall time = runtime / availability.
    New convention: let's use "runtime" for the former,
    and "duration" for the latter.

svn path=/trunk/boinc/; revision=25597
2012-04-25 04:10:29 +00:00
David Anderson 6041cb40f9 - update_versions: eliminate PHP warnings when no version.xml file
svn path=/trunk/boinc/; revision=25596
2012-04-24 19:24:31 +00:00
Rom Walton f6ac59104b - WINSETUP: Fix long standing installer bug where we were attempting
to add the boinc_master account to the boinc_admins group when
        installing in the non-service install mode.  boinc_master is only
        created during service installs.  This was causing a setup failure
        on Windows 8. As far as I can tell it should have also been failing
        on Win7 and WinVista.
        
    win_build/installerv2/redist/Windows/src/boinccas/
        boinccas.rc
        CACreateBOINCGroups.cpp
    win_build/installerv2/redist/Windows/Win32/
        boinccas.dll
        boinccas95.dll
    win_build/installerv2/redist/Windows/x64/
        boinccas.dll
        boinccas95.dll

svn path=/trunk/boinc/; revision=25594
2012-04-24 17:05:56 +00:00
David Anderson b6b02aedf4 - client: fix bug that caused a project's jobs to all be run EDF
if the project has the <dont_use_dcf> flag set.

svn path=/trunk/boinc/; revision=25593
2012-04-24 06:07:36 +00:00
Rom Walton 27520b8ac0 - client: fix function prototypes for CUDA detection.
client/
        coproc_detect.cpp

svn path=/trunk/boinc/; revision=25591
2012-04-23 20:38:25 +00:00
David Anderson d65cf2cb8a - client: fix bug that could erroneously cause a GPU to
be "blocked by config file".


svn path=/trunk/boinc/; revision=25590
2012-04-22 06:28:47 +00:00
David Anderson 643c731411 - client: if we're contacting a project to ask it for work
of a particular processor type,
    ask it for work of other types only if we're below
    max buffer for those types.


svn path=/trunk/boinc/; revision=25589
2012-04-20 23:51:20 +00:00
Rom Walton b1c957d5b6 - MGR: Show() does not restore the window state from a minimized state. Use
maximize(false) to handle that situation.
        
    clientgui/
        BOINCBaseFrame.cpp
        BOINCGUIApp.cpp

svn path=/trunk/boinc/; revision=25588
2012-04-20 21:08:21 +00:00
David Anderson ce47c7aa6c - client/server: remove assert()s from message log code
svn path=/trunk/boinc/; revision=25587
2012-04-20 19:33:31 +00:00
David Anderson b07ce4aebb - client: add <suspend_debug> log flag
svn path=/trunk/boinc/; revision=25586
2012-04-20 18:50:10 +00:00
David Anderson 0f3491baa7 - client: add <suspend_debug> log flag
svn path=/trunk/boinc/; revision=25585
2012-04-20 17:46:27 +00:00
David Anderson f12e82917f - back end: print error messages instead of numbers in several places
svn path=/trunk/boinc/; revision=25584
2012-04-20 17:23:07 +00:00
Rom Walton e3571aab9c - Update copyrights.
client/win/
        boinc_cli.rc
        boinc_cmd.rc
        boinc_log.rc
    clientctrl/
        boincsvcctrl.rc
    clientgui/
        BOINCGUIApp.rc
        DlgAbout.cpp
    clientscr/
        boinc_ss.rc
        boinc_ss_opengl.rc
    clienttray/
        boinc_tray.rc

svn path=/trunk/boinc/; revision=25583
2012-04-19 20:43:35 +00:00
David Anderson 9c154484ee - fix many problems with validator_test
svn path=/trunk/boinc/; revision=25582
2012-04-19 08:47:38 +00:00
David Anderson c34093e374 - web: don't show account keys on account page;
rewrite the page explaining and showing account keys.
- client: remove <std_debug> log flag
- client: remove <zero_debts> config option


svn path=/trunk/boinc/; revision=25581
2012-04-19 07:36:47 +00:00
David Anderson 66b20e1138 - scheduler: handling of allow_multiple_clients flag from client
was wrong.  From Bernd.


svn path=/trunk/boinc/; revision=25579
2012-04-17 23:23:22 +00:00
David Anderson 8208a3b72f - scheduler: add a program that targets remaining jobs in a batch
to a particular user (e.g. for cloud execution).
    From Derrick Kondo.


svn path=/trunk/boinc/; revision=25576
2012-04-17 21:50:13 +00:00
David Anderson fca2956408 - scheduler: fix bug in assigned-job logic (from Derrick Kondo)
- client: only send active tasks in get_simple_gui_info GUI RPC


svn path=/trunk/boinc/; revision=25575
2012-04-17 21:39:55 +00:00
David Anderson f4d985c659 - client: add PID to random stuff used to make host CPID,
in case running multiple clients on same host


svn path=/trunk/boinc/; revision=25559
2012-04-14 04:48:20 +00:00
Wenjing Wu ccad62b912 - wrapper: when reading fraction-done file, read the last line
(or at least the last double).
    This accommodates a particular application (LAMMPS)
    that can only append to this file.
- CAS@home stuff


svn path=/trunk/boinc/; revision=25557
2012-04-13 09:44:01 +00:00
Wenjing Wu bd3d4fee43 - CAS@home stuff
svn path=/trunk/boinc/; revision=25556
2012-04-13 05:45:16 +00:00
Charlie Fenton cff3533f86 web: separate Intel-only from Universal (PowerPC & Intel) clients on download-all page
svn path=/trunk/boinc/; revision=25551
2012-04-12 22:24:51 +00:00
Wenjing Wu dfc84b1916 - add script for canceling jobs
- CAS@home stuff


svn path=/trunk/boinc/; revision=25550
2012-04-12 12:20:16 +00:00
Wenjing Wu 6c02937500 - CAS@home stuff
svn path=/trunk/boinc/; revision=25548
2012-04-12 07:30:45 +00:00
David Anderson 8b9c871002 - API: fix C compile error
- initial checkin of remote job stuff for app from ICT


svn path=/trunk/boinc/; revision=25543
2012-04-10 06:11:19 +00:00
David Anderson 759c23ed27 - server: create a harness for testing validator code.
If you link your functions (init_result(), compare_results(),
    cleanup_result()) with validate_test.cpp,
    you'll get a program that you can run as
        validate_test file1 file2
    and it will compare the two files
    (this works only for validators that expect 1 file per result).

    I added a makefile, sched/makefile_validator_test,
    that you can use for this.
- server: shuffle code so that the above doesn't need to
    link MySQL libraries
- client: if we fetch a master file and it contains no scheduler URLs,
    show a message of class INTERNAL_ERROR
- client/scheduler: make CUDA_DEVICE_PROP.totalGlobalMem a double,
    and remove dtotalGlobalMem.
    Although NVIDIA reports RAM size as a size_t,
    there's no reason to store it as an integer after that.


svn path=/trunk/boinc/; revision=25542
2012-04-10 00:32:35 +00:00
David Anderson 86f50ba080 - admin web: when resetting app statistics,
clear elapsed time stats as well as PFC stats


svn path=/trunk/boinc/; revision=25530
2012-04-05 11:01:38 +00:00
David Anderson aed704e61b - client: don't write deviceHandle to NVIDIA XML description.
Um, pointers don't have any meaning outside the process


svn path=/trunk/boinc/; revision=25528
2012-04-02 22:41:28 +00:00
David Anderson 36529da919 - client: change some unsigned int to size_t in our versions
of NVIDIA APIs.  This apparently caused crashes
    (in app, not client, which I don't understand) for Einstein@Home.
    From Steffen Moller.


svn path=/trunk/boinc/; revision=25527
2012-04-02 21:31:02 +00:00
Charlie Fenton 45ec33f653 MGR: Revert my changes of 18 March to Mac Task Bar Icon; always call the same instance of CTaskBarIcon::SetIcon()
svn path=/trunk/boinc/; revision=25523
2012-03-31 12:34:43 +00:00
David Anderson c22ac04ad0 - scheduler: don't max with min_work_buffer() in estimating
job turnaround time.
    min_work_buffer doesn't necessarily reflect network disconnect periods
- client simulator: compile fixes


svn path=/trunk/boinc/; revision=25521
2012-03-30 21:39:22 +00:00
Charlie Fenton f0e8e42170 Fix typo
svn path=/trunk/boinc/; revision=25512
2012-03-29 11:58:38 +00:00
Charlie Fenton 7e0c4dd431 client: Fix idle detection during fast user switching
svn path=/trunk/boinc/; revision=25511
2012-03-29 11:56:09 +00:00
Charlie Fenton c53d4ca9f2 Mac uninstaller: Use Directory Services to find the user names of all human users instead of stepping through the entries in the /Users directory.
svn path=/trunk/boinc/; revision=25508
2012-03-29 09:42:32 +00:00
Charlie Fenton 9268bde449 Mac installer: When checking for duplicate group membership entries, count only whole words
svn path=/trunk/boinc/; revision=25506
2012-03-29 08:24:21 +00:00
David Anderson fb20906923 - scheduler: ignore app_version.max_core_version if it's zero
svn path=/trunk/boinc/; revision=25505
2012-03-29 07:58:47 +00:00
David Anderson 44ccd78293 - client/scheduler: fix error in NVIDIA peak flops calculation
svn path=/trunk/boinc/; revision=25501
2012-03-28 17:29:48 +00:00
David Anderson 7f3b3584d0 - scheduler: zero host.nsame_ip_addr if IP addr differs from previous
svn path=/trunk/boinc/; revision=25500
2012-03-27 21:22:00 +00:00
David Anderson 39f5dc7e58 - client: fix bug in reading reason for temporary exit
- lib: fix a valgrind warning


svn path=/trunk/boinc/; revision=25499
2012-03-27 20:52:25 +00:00
David Anderson ea4613214a - client: fix bug where if we sent app a <quit> message,
and it timed out and we killed it, we'd treat it as a job error.
    (This was a major bug).
- API: remove BOINC_STATUS::suspend_request.
    I meant to do this before.


svn path=/trunk/boinc/; revision=25498
2012-03-27 19:23:26 +00:00
David Anderson f317329321 - client: fix typo that prevented GPU jobs from running
if CPUs were filled with EDF jobs


svn path=/trunk/boinc/; revision=25497
2012-03-27 17:20:47 +00:00
David Anderson 63c279cef2 - client/server: set cores/proc for NVIDIA compute capability 3.0 to 192
Why can't NVIDIA provide an API for this?????


svn path=/trunk/boinc/; revision=25496
2012-03-27 03:50:16 +00:00
David Anderson 0e0c7f758b - web: add script for replacing blank user names with the user ID
svn path=/trunk/boinc/; revision=25494
2012-03-26 22:45:14 +00:00
David Anderson 6498b0bba2 - client: set PROJECT::last_upload_start whenever an upload starts,
not just when a result becomes ready to upload.
    Fix bug where a scheduler RPC to report results is done
    even though uploads are active.
- client: cpu_sched_debug enables messages about not scheduling jobs
    because of insufficient RAM
    

svn path=/trunk/boinc/; revision=25493
2012-03-26 22:01:31 +00:00
David Anderson 8ebe90fbe3 - client: report results if CPU suspend pending in next 30 min
svn path=/trunk/boinc/; revision=25492
2012-03-26 20:28:23 +00:00
David Anderson d3f2d6318f - scheduler: enforce app_version.max_core_version
svn path=/trunk/boinc/; revision=25491
2012-03-26 19:26:12 +00:00
David Anderson 1ab6eaf277 - compile fix for redhat, from Steffen Moller
svn path=/trunk/boinc/; revision=25487
2012-03-26 01:32:21 +00:00
Rytis Slatkevičius 2bb7957386 Fix previous commit
svn path=/trunk/boinc/; revision=25486
2012-03-24 14:55:58 +00:00
David Anderson 24761958fd - client/server: estimate FLOPS for NVIDIA GPUs with
compute capability 3.x.
    Not sure if the parameters are right
    (128 cores/proc, 2 flops/clock)
    but they're better than nothing.
- web: don't allow user names that have leading or trailing white space,
    or HTML tags, or are empty


svn path=/trunk/boinc/; revision=25485
2012-03-24 06:31:03 +00:00
David Anderson ec0ca2615d - scheduler: fix bug that could cause zero credit for
the first few jobs of a new application
    (in wu_estimated_pfc(), only multiply by app.min_avg_pfc
    if it's nonzero).


svn path=/trunk/boinc/; revision=25484
2012-03-23 21:47:06 +00:00
David Anderson bf393ad913 - client: if a job calls boinc_temporary_exit() 100 times, abort it.
Otherwise it could keep doing it forever
    (e.g. if there's not ever enough available GPU RAM)


svn path=/trunk/boinc/; revision=25483
2012-03-23 21:09:44 +00:00
David Anderson 9caa637a4d - server: is_project_dir() was checking that cgi-bin is a directory.
This doesn't work if it's a symlink to a dir.
    Check for that too.


svn path=/trunk/boinc/; revision=25480
2012-03-23 17:45:04 +00:00
David Anderson adab6254bc Update Translation
svn path=/trunk/boinc/; revision=25477
2012-03-23 16:25:19 +00:00
Rom Walton d2155c4488 - VBOX: Do not treat the timeout error as a fatal error when attempting
to delete stale snapshots.  Slower machines can take longer than
        45 seconds to complete the deletion of old snapshots.

    samples/vboxwrapper/
        vbox.cpp

svn path=/trunk/boinc/; revision=25474
2012-03-22 19:00:37 +00:00
Rom Walton fc818a027f - VBOX: Detect another form of out of memory error from VirtualBox.
Reschedule the job for some time in the future when there might
        be enough memory.
    - VBOX: Resume the VM's execution after the creation of the snapshot
        but before we attempt to delete the previous, now stale, snapshot.
    - VBOX: Treat the 'livesnapshotting', 'deletingsnapshotlive', and
        'deletingsnapshotlivepaused' states as online states.
        
    samples/vboxwrapper/
        vbox.cpp
        vboxwrapper.cpp

svn path=/trunk/boinc/; revision=25473
2012-03-22 18:10:42 +00:00
Rom Walton 97fe7c2667 - VBOX: Before attempting to take the snapshot for a VM, pause it first.
This changes the snapshot type from a live snapshot to an online
        snapshot.  Presumably difference might make it easier to do and
        prevent the VM from asserting.
        
    samples/vboxwrapper/
        vbox.cpp, .h

svn path=/trunk/boinc/; revision=25472
2012-03-21 23:17:07 +00:00
Rom Walton 7710c0cfc8 - VBOX: We don't need to display the state of the VM before startup.
- VBOX: Change the snapshot naming scheme by removing the quotes and
        prefixing the checkpoint time with 'boinc_'.  Hopefully this will
        prevent the VM from asserting during the snapshot process.

    samples/vboxwrapper/
        vbox.cpp, .h

svn path=/trunk/boinc/; revision=25471
2012-03-21 22:13:06 +00:00
David Anderson fc8191220f - client: change timeout for job quit/abort from 60 back to 15
(time between sending app a quit/abort message
    and, if not exited yet, killing it)
- client: if app has reported an "other PID"
    (e.g., vboxwrapper reports the VBoxHeadless PID)
    then include it (along with descendants) in the
    list of processes we kill when killing the job.


svn path=/trunk/boinc/; revision=25470
2012-03-21 20:30:14 +00:00
Rom Walton f7e7a065de - VBOX: Introduce the use of VM snapshots as a form of checkpoint.
- Perform snapshots at most once every ten minutes.
        - Client suspend/resume messages behave the same.
        - Client no heartbeat/quit messages cause the wrapper to just
          poweroff the VM.
        
        On startup check to see if the last checkpoint time is greater than 0,
        if so, start from the most recent snapshot.
    - VBOX: If we receieve the status message of no heartbeat or quit, set
        the temporary delay to 5 minutes.  If the wrapper is terminated during
        the middle of a snapshot, hopefully this will give VirtualBox enough
        time to complete the snapshot.  Restarting the BOINC job should then
        poweroff the VM and restore from the last snapshot.
    
    samples/vboxwrapper/
        vbox.cpp, .h
        vboxwrapper.cpp

svn path=/trunk/boinc/; revision=25469
2012-03-21 20:03:47 +00:00
David Anderson e7e52a57ad - client: set file ownership and permissions after an async verify.
This was presumably the cause of the recent Einstein@home problem.
- client: set file ownership and permissions after an async copy.
- client: set file ownership and permissions after a
    regular (non-async) copy.

    The latter 2 bugs would affect a VM app that copies
    its executable to slot/x/shared


svn path=/trunk/boinc/; revision=25468
2012-03-21 18:36:00 +00:00
Bernd Machenschalk 75a2116f2e - scheduler: fix hu.peak_flops and hu.projected_flops caclculation
in plan_class_spec by using coproc_pref() and capped_host_fpops()
        (moved coproc_perf() to sched_customize.h to make it available
        in plan_class_spec.cpp, and cleaned up includes)


svn path=/trunk/boinc/; revision=25467
2012-03-21 12:40:18 +00:00
Rom Walton 1cb76d2d5a - client: Initialize buffer which is used to hold the temporary exit reason.
If somebody didn't populate the reason when calling boinc_temporary_exit
        the buffer contained junk.

    client/
        app_control.cpp

svn path=/trunk/boinc/; revision=25466
2012-03-21 01:26:05 +00:00
David Anderson ad232b2869 - client: report completed results if a time-of-day network suspend is
scheduled within the next 30 minutes


svn path=/trunk/boinc/; revision=25465
2012-03-20 19:37:04 +00:00
Rom Walton 5972bf2c8f - VBOX: On successful completion, create the same output file that
the CernVMWrapper would.  This allows both wrapppers to work with
        the same BOINC job generation system.

    samples/vboxwrapper/
        vbox.cpp

svn path=/trunk/boinc/; revision=25463
2012-03-20 18:19:56 +00:00
Rom Walton 64bdde4745 - VBOX: Make it explicily clear what the result of a start/stop
request was.  Hopefully this will give us insight into whether
        the core client is terminating the wrapper or something else is
        going on.
    - VBOX: Shorten the command execution timeout to 45 seconds.
    - VBOX: Don't attempt to re-execute the close/savestate commands.

    samples/vboxwrapper/
        vbox.cpp

svn path=/trunk/boinc/; revision=25462
2012-03-20 17:55:56 +00:00
David Anderson 2a0f17c990 - scheduler: if we can't resend a job (e.g. it's for an app
for which the anonymous-platform client doesn't have a version)
    mark it as sent so the transitioner can do its thing


svn path=/trunk/boinc/; revision=25461
2012-03-20 04:36:14 +00:00
David Anderson b312669349 - client: if an app process exits because of a signal,
don't show the "no finish file" message;
    not sure why this was there in the first place.
- client: if an app process exits because of a signal,
    show the signal correctly


svn path=/trunk/boinc/; revision=25459
2012-03-19 23:37:08 +00:00
David Anderson d677f2c1cd - scheduler: fix a bug in assigning deadlines to resent jobs.
From Kevin.
    NOTE: Kevin also reported a bug that resulted in
    way too large (e.g. year) deadlines.


svn path=/trunk/boinc/; revision=25458
2012-03-19 22:46:00 +00:00
David Anderson 9a77dcc71f - wrapper: fix bug that reported wildly wrong CPU time
svn path=/trunk/boinc/; revision=25457
2012-03-19 20:42:03 +00:00
David Anderson 3782dca107 - client: Don't include VBox executive processes as non-BOINC CPU time.
On some systems they use significant CPU time while VMs are running.
    TODO: do this only if we're actually running a VBox app


svn path=/trunk/boinc/; revision=25455
2012-03-19 20:13:28 +00:00
David Anderson dfd34e631f - client: job scheduling policy tweak:
if CPUs are fully committed (e.g. with EDF jobs)
    allow GPU jobs but only up to CPU usage of ncpus+1


svn path=/trunk/boinc/; revision=25454
2012-03-19 17:39:26 +00:00
Rom Walton 884a397457 Quick Updates
svn path=/trunk/boinc/; revision=25446
2012-03-18 23:28:12 +00:00
Charlie Fenton 5a5a9f5975 Add missing checkin logs for tagging 7.0.20 and 7.0.21
svn path=/trunk/boinc/; revision=25444
2012-03-18 12:39:07 +00:00
Charlie Fenton 49fda2e686 MGR: Fix a Mac-only bug which sometimes failed to show the snooze icon
svn path=/trunk/boinc/; revision=25443
2012-03-18 12:35:09 +00:00
David Anderson 22f6512135 - client: changes to job scheduling policy:
- fix bug that could greatly overcommit CPUs
        if there are several EDF jobs and several non-EDF GPU jobs.
    - don't overcommit CPUs if any job is MT (MT means avg_ncpus > 1).
        For example, on a 4-CPU machine we will run:
            a 0.5-CPU GPU job and 4 1-CPU jobs
            but not
            a 0.5-CPU GPU job and 1 4-CPU job

svn path=/trunk/boinc/; revision=25442
2012-03-18 05:50:47 +00:00
David Anderson 673788e273 - client: use %g to format job resources (#CPUs, #GPUs).
This suppresses trailing zeroes and (if integer) the .


svn path=/trunk/boinc/; revision=25441
2012-03-17 17:50:11 +00:00
David Anderson 37535d48e9 - client: small changes to make client compile on Android,
and to report the platform as "arm-android".
    From Carl Christensen.
- Add a script for building BOINC and library dependencies on Android
    From Peter Hanappe.


svn path=/trunk/boinc/; revision=25440
2012-03-16 21:48:35 +00:00
Rom Walton 25142dda02 - VBOX: Give the VM process a short priority boost when responding
to a quit request.  On older XP machines it might speed up the memory
        dump to disk.
    - client: Increase the quit request timeout from 10 seconds to 60 seconds for
        machines running VMs and slow disk drives.  It should give the VM enough
        time to gracefully shutdown and not give boinc reason to kill the wrapper.

    client/
        app.h
    samples/vboxwrapper/
        vbox.cpp, .h
        vboxwrapper.cpp

svn path=/trunk/boinc/; revision=25433
2012-03-16 01:04:43 +00:00
David Anderson 73474ac408 - scheduler: when HR is being used,
make per-HR slot allocation an option rather than the default.
    Kevin reported that slot allocation wasn't working for WCG.
    The default is now no slot allocation,
    and use the regular result enumeration function
    rather than the once that scans the entire table.
    The config flag for enabling slot allocation is <hr_allocate_slots/>.


svn path=/trunk/boinc/; revision=25432
2012-03-15 19:50:10 +00:00
David Anderson d0847d098b - client: when killing a task, don't delete its shmem or change its state.
These mess up the logic for dealing with exited processes.


svn path=/trunk/boinc/; revision=25431
2012-03-15 07:32:32 +00:00
David Anderson 3a69f2d102 - client: on each scheduler RPC,
make sure that files flagged as executable in the reply,
    and that are present, are actually executable.


svn path=/trunk/boinc/; revision=25430
2012-03-15 05:59:01 +00:00
David Anderson c12bd58870 - scheduler: fix FCGI compile
svn path=/trunk/boinc/; revision=25429
2012-03-14 23:31:15 +00:00
Charlie Fenton 79e3e16786 client: On Mac only, update ATI available RAM after getting ATI total RAM size from OpenGL
svn path=/trunk/boinc/; revision=25428
2012-03-14 22:51:02 +00:00
David Anderson 4ce9d9e212 - scheduler: code cleanup for the above
svn path=/trunk/boinc/; revision=25427
2012-03-14 22:42:38 +00:00
David Anderson a16032dee5 - scheduler: add an alternative way of defining app plan functions
that uses an XML configuration file;
    see http://boinc.berkeley.edu/trac/wiki/AppPlanConfig
    From Bernd.


svn path=/trunk/boinc/; revision=25426
2012-03-14 19:53:16 +00:00
Rom Walton a52651bf56 - VBOX: Use the boinc_temporary_exit API properly. Wait for 5 minutes
before allowing another attempt to start the VM when the hypervisor
       cannot allocate enough memory.
    - VBOX: Print out a trace statement about the suspend/resume directive
       from the vboxwrapper perspective.  This in conjuction with the
       BOINC API trace statements should provide a better idea with
       what is going on.
       
    samples/vboxwrapper
        vboxwrapper.cpp

svn path=/trunk/boinc/; revision=25424
2012-03-14 18:54:03 +00:00
Charlie Fenton 2919c802cd client: When comparing ATI model names from OpenCL and IOKit on a Mac, substitute "AMD" for "ATI"
svn path=/trunk/boinc/; revision=25422
2012-03-14 09:05:10 +00:00
Charlie Fenton 6286e4d9db MGR: fix French translations of Remaining (estimated)
svn path=/trunk/boinc/; revision=25421
2012-03-14 07:43:54 +00:00
David Anderson b155c668fc - transitioner: don't clear a WU's HR and HAV class if there are
timed-out instances; they could still be returned.


svn path=/trunk/boinc/; revision=25420
2012-03-14 07:08:05 +00:00
David Anderson 5c8cdc3957 - scheduler: do homogeneous app version check before rereading WU
as well as after.


svn path=/trunk/boinc/; revision=25419
2012-03-14 06:56:48 +00:00
Charlie Fenton e46189a816 VBOX: Fix typo in Mac wrapper name (1686 -> i686)
svn path=/trunk/boinc/; revision=25412
2012-03-13 02:07:32 +00:00
Charlie Fenton 500334af77 client: call some Mac coproc_detect debugging code only if coproc_debug flag is set
svn path=/trunk/boinc/; revision=25410
2012-03-13 01:02:46 +00:00
Charlie Fenton e04221efac client: fix compile errors
svn path=/trunk/boinc/; revision=25409
2012-03-13 00:46:49 +00:00
David Anderson 061f4c3647 - client: message tweak
svn path=/trunk/boinc/; revision=25407
2012-03-12 23:11:42 +00:00
David Anderson c703b68090 - server: allow <db_host> to include a :port
svn path=/trunk/boinc/; revision=25405
2012-03-12 21:45:29 +00:00
Rom Walton f52ce7153e - VBOX: If a VM fails to start because the machine is low on memory,
temporarily exit so BOINC can reschedule it for a later time.
        If the problem doesn't go away it'll just time out eventually anyway.
        
    samples/vboxsamples/
        vboxwrapper.cpp

svn path=/trunk/boinc/; revision=25404
2012-03-12 17:16:51 +00:00
Rom Walton 85fce1d29a - VBOX: Only attempt to reset throttle values if the VM is in
a running state, otherwise controlvm throws an error.
        
    samples/vboxsamples/
        vboxwrapper.cpp

svn path=/trunk/boinc/; revision=25403
2012-03-12 15:45:09 +00:00
Bernd Machenschalk 731c551284 scheduler: remove lock file when scheduler caught SIGTERM
svn path=/trunk/boinc/; revision=25402
2012-03-12 09:10:42 +00:00
David Anderson 0d04385623 - forgot to add files
svn path=/trunk/boinc/; revision=25401
2012-03-11 01:52:41 +00:00
David Anderson 67d6ab7cf2 - storage: add some code
svn path=/trunk/boinc/; revision=25400
2012-03-11 01:51:07 +00:00
Rom Walton 8f8caec6e7 - VBOX: Allow the CPU execution cap to be set back to 100% after it had
alreadly been set lower.

    samples/vboxwrapper/
        vbox.cpp
        vboxwrapper.cpp

svn path=/trunk/boinc/; revision=25399
2012-03-09 22:56:19 +00:00
David Anderson d5347f0ff1 - web: allow a project to specify 2 stylesheets
svn path=/trunk/boinc/; revision=25398
2012-03-09 21:40:57 +00:00
Rom Walton f2f9ec8dc3 - VBOX: Setting the CPU Execution Cap should be done with the controlvm
command after the VM has entered a running state instead of using
        modifyvm.
        
    samples/vboxwrapper/
        vbox.cpp

svn path=/trunk/boinc/; revision=25397
2012-03-09 19:53:34 +00:00
David Anderson dfacf7d1c1 - API: remove BOINC_STATUS::suspend_request;
it's an implementation thing, not intended for export.
    Fix a related bug.


svn path=/trunk/boinc/; revision=25396
2012-03-09 19:46:49 +00:00
Rom Walton 4848da29ec Quick Updates
svn path=/trunk/boinc/; revision=25395
2012-03-09 03:07:34 +00:00
Rom Walton 702c78d8c8 - VBOX: Parse the vboxmanage error code for *nix as well.
- VBOX: Switch to using status.suspend_request instead of status.suspend
        when determining when to suspend/resume a VM.  status.suspended is
        now only changed when direct_process_action is set to true.

    samples/vboxwrapper/
        vboxwrapper.cpp
        vbox.cpp

svn path=/trunk/boinc/; revision=25394
2012-03-09 03:05:48 +00:00
David Anderson fe2f589ae2 - API: fix various bugs related to process control and critical sections.
- client: code cleanup (no functional change)



svn path=/trunk/boinc/; revision=25393
2012-03-08 22:42:44 +00:00
Rom Walton 1e8d806df1 - Tag for 7.0.20 release, all platforms
boinc_core_release_7_0_20

    /
        configure.ac
        version.h

svn path=/trunk/boinc/; revision=25385
2012-03-06 15:32:21 +00:00
David Anderson 6da0094f84 - LAMMPS: fix code formatting
svn path=/trunk/boinc/; revision=25383
2012-03-06 04:53:38 +00:00
Bernd Machenschalk 83df8f360b scheduler: fix/augment file_deleter usage message
svn path=/trunk/boinc/; revision=25379
2012-03-05 13:19:47 +00:00
David Anderson 7558829e4a - web: open BBCode instructions in new window (or tab).
Otherwise, on IE, you lose the text you already entered
    when you go back.


svn path=/trunk/boinc/; revision=25378
2012-03-04 20:37:10 +00:00
David Anderson 3f5c03d813 - LAMMPS job submission: set rsc_fpops_bound to 20 times rsc_fpops_est
svn path=/trunk/boinc/; revision=25377
2012-03-04 05:29:14 +00:00
David Anderson d5bf5c46e3 - Manager: in Project Properties page,
show if a GPU type is excluded by configuration
- client: don't fetch work for a resource type if all instances
    of that type are excluded
- web: don't use filter_var(, FILTER_SANITIZE_STRING)
    to strip HTML tags from a string.
    This escapes singles quotes also.
    Use strip_tags() instead.


svn path=/trunk/boinc/; revision=25375
2012-03-04 04:58:41 +00:00
David Anderson dbed92fbe2 - Manager: small code cleanup
svn path=/trunk/boinc/; revision=25374
2012-03-04 04:50:40 +00:00
Charlie Fenton 9e7a58e6de Mac installer: Utility shell script creates users & groups boinc_master and boinc_project with IDs at 501 or above
svn path=/trunk/boinc/; revision=25372
2012-03-03 08:58:54 +00:00
Charlie Fenton abfdc4deda Mac installer: Utility shell script creates RealName field for users boinc_master and boinc_project and sets it to empty string
svn path=/trunk/boinc/; revision=25371
2012-03-03 08:50:11 +00:00
Rom Walton d2939100d5 - Tag for 7.0.19 release, all platforms
boinc_core_release_7_0_19

    /
        configure.ac
        version.h

svn path=/trunk/boinc/; revision=25367
2012-03-02 18:42:38 +00:00
David Anderson 64a371173b - client: fix crashing bug when there is 1 instance of a resources.
I'm not sure how this every worked.


svn path=/trunk/boinc/; revision=25362
2012-03-02 03:56:26 +00:00
Rom Walton 2030f3ca23 - VBOX: Implement an exponential backoff scheme of sleeping between
commands if a session lock error has been detected.  Cap the overall
        delay to 30 seconds total for a single command.
    
        Experiments performed by jujube(T4T) suggest changing the sleep interval
        to an exponential style backoff would increase our chances of recovering in
        situations where the previous lock is held by a previous instance of
        vboxmanage whos instance data hasn't been cleaned up within vboxsvc yet.
    
    client/
        vbox.cpp

svn path=/trunk/boinc/; revision=25359
2012-03-01 04:23:08 +00:00
Charlie Fenton 6688c21c11 client: On Mac only, get ATI RAM sizes from OpenGL
svn path=/trunk/boinc/; revision=25358
2012-03-01 02:35:45 +00:00
David Anderson 4a50b2b2e2 - wrapper: compute final CPU time correctly for multi-process apps
- storage stuff


svn path=/trunk/boinc/; revision=25356
2012-02-29 20:58:45 +00:00
David Anderson 127e905e0d - storage stuff. Getting there.
svn path=/trunk/boinc/; revision=25355
2012-02-29 07:22:59 +00:00
David Anderson 516e5ad798 - storage stuff
svn path=/trunk/boinc/; revision=25354
2012-02-29 01:11:28 +00:00
Charlie Fenton 17bfefda26 MGR: Change strings in Simple View to match changes in Advanced View: "Remaining" -> "Remaining (Estimated)", "Home page"
svn path=/trunk/boinc/; revision=25352
2012-02-28 11:58:30 +00:00
David Anderson f18ffd6fe7 - VDA: add some log messages
- scheduler: add VDA
- client, web: change default prefs to min_buf=.1 days, max_buf=.5 days
- scheduler: app plan function for vbox requires 7.0+ client


svn path=/trunk/boinc/; revision=25351
2012-02-28 06:57:28 +00:00
Rytis Slatkevičius 433770dc16 change antique_file_deleter logic not to delete files that still have workunit records
svn path=/trunk/boinc/; revision=25350
2012-02-27 18:35:07 +00:00
Bernd Machenschalk 9cb28dd25c scheduler: Another feature for debugging the scheduler.
Previously (little known) the scheduler could be hacked to preserve
  the sched_request.xml and sched_reply.xml in own directories
  (you had to modify the initial value of use_files in sched_main.cpp).
  This feature could now be switched on and off on the fly just by
  changing the project config.
  When there is an (existing) directory configured as
  <debug_req_reply_dir>, each schduler instance will write three
  files in there: PID_C_sched.log, PID_C_sched_request.xml and (if all
  goes well) PID_C_sched_reply.xml. PID is the process id of this
  scheduler instance, C is an internal counter within the process if
  FCGI is used. The sched.log will contain nothing else than the
  pid and the IP address of the client. This should allow for
  identifying the scheduler instance responsible for a given
  apache error log message ("premature end of script headers") when
  a scheduler crashed. sched_request.xml (obviously) is the scheduler
  request, and if the scheduler doesn't crash in between, there will
  also be the reply to the client kept in sched_reply.xml
  Remove the <debug_req_reply_dir> tag from the project config
  to turn this feature off.

svn path=/trunk/boinc/; revision=25349
2012-02-27 13:12:24 +00:00
Bernd Machenschalk 3fa88ac1e3 scheduler: the scheduler (stderr) log is buffered to keep the output of
one instance together in the scheduler.log when multiple instances are
  running. Currently the buffer has a fixed size of 32768 charaters.
  On one hand with much debug output this buffer may turn out to be
  too small. OTOH the log of this instance is completely lost in case
  of a crash, which doesn't help with debugging. Thus make the
  scheduler log buffer size configurable using the tag
  <scheduler_log_buffer> in project config. The default value is
  still the old size (32768), set it to 0 to disable buffering
  completely, e.g. for debugging.

svn path=/trunk/boinc/; revision=25348
2012-02-27 12:40:43 +00:00
Bernd Machenschalk d6290ac541 fix typo in previous commit (patch was using old parser)
svn path=/trunk/boinc/; revision=25347
2012-02-27 12:26:46 +00:00
Bernd Machenschalk 5bb86f79b8 scheduler: allow to configure userids for which the scheduler should
not scan the host table. This was previously hardcoded for
  Einstein@home to prevent some users with many (identical) hosts
  from flooding the DB with slow queries. Now add
  <dont_search_host_for_userid>userid</dont_search_host_for_userid>
  to the project config (in config.xml) for each such userid.

svn path=/trunk/boinc/; revision=25346
2012-02-27 12:08:25 +00:00
Bernd Machenschalk df439c128b validator: output the version string even when not in project directory
svn path=/trunk/boinc/; revision=25345
2012-02-27 11:54:02 +00:00
Bernd Machenschalk 7de8d05277 - db_purge: record result and workunit name in index file
svn path=/trunk/boinc/; revision=25344
2012-02-27 11:08:14 +00:00
David Anderson dc4584156d - scheduler: when choosing the best app version,
by default we skip app versions that use a resource
    for which work has not been requested.
    This is determined by the "check_req" arg to get_app_version().
    This flag is cleared whenever we want to send a job
    regardless of whether a requested resource can be used:
    namely, when resending lost jobs, and when sending assigned jobs.

    Fix a bug that could skip unrequested versions even
    when check_req is false.

    NOTES:

    1) The current semantics aren't right.
    When check_req is false, we selected the fastest of all app versions,
    including those for which no work is requested.
    Instead, we should select the fastest of the versions
    for which work is requested if there are any;
    otherwise, select the fastest version.

    2) The mechanism isn't implemented for anonymous platform.
    It should be.

    3) If we've cached an answer (including NULL) for a given
    value of check_req, that answer may be wrong for a different value.


svn path=/trunk/boinc/; revision=25342
2012-02-25 03:54:23 +00:00
David Anderson ce52c9cf3e - storage stuff
svn path=/trunk/boinc/; revision=25341
2012-02-24 22:55:11 +00:00
David Anderson d0413886fa - storage stuff
svn path=/trunk/boinc/; revision=25340
2012-02-24 21:13:00 +00:00
David Anderson 08d7dcd6d9 - client: amend checkin of 18 Feb to not request work if
work buffer is above upper limit


svn path=/trunk/boinc/; revision=25335
2012-02-24 16:42:38 +00:00
Rom Walton e5d3476e77 - MGR: Rename the "Remaining" column to "Remaining (Estimated)" in the
Advanced GUI/Work view.
        
    clientgui/
        ViewWork.cpp

svn path=/trunk/boinc/; revision=25334
2012-02-24 14:29:21 +00:00
Charlie Fenton 52aa4a1515 Fix typo
svn path=/trunk/boinc/; revision=25330
2012-02-24 12:56:46 +00:00
Charlie Fenton d9abdc1953 Mac installer: Create RealName field for users boinc_master and boinc_project and set it to empty string
svn path=/trunk/boinc/; revision=25329
2012-02-24 12:55:13 +00:00
Charlie Fenton 6877e674df MGR: Update <organization_help_url> in Progress Through Processor's skin file again as requested by Matt Blumberg on 17 February 2012
svn path=/trunk/boinc/; revision=25323
2012-02-24 06:53:40 +00:00
David Anderson 000dbadc3d - install antique file deleter as periodic task (24 hours)
when create new project


svn path=/trunk/boinc/; revision=25322
2012-02-24 03:26:30 +00:00
David Anderson a8f883d2fa - server: split out the "antique file deletion" feature of
file_deleter.cpp into a separate program,
    since it blocks normal file deletion while it's running.
    From Bernd.
- storage stuff


svn path=/trunk/boinc/; revision=25321
2012-02-24 03:09:56 +00:00
Charlie Fenton df9357b456 client: When available, use total RAM value from CAL for all ATI OpenCL GPUs, not only for the "best" GPU
svn path=/trunk/boinc/; revision=25319
2012-02-23 00:42:04 +00:00
Charlie Fenton 4a8d57ec95 API: fix compile error on Mac
svn path=/trunk/boinc/; revision=25318
2012-02-23 00:37:30 +00:00
David Anderson dd6779a7be - client: fix an instance of
sprintf(buf, "%s...", buf)
    on Unix


svn path=/trunk/boinc/; revision=25317
2012-02-23 00:06:43 +00:00
David Anderson 7c3bc68a05 - API, client, and Manager: add an optional "reason" argument to
boinc_temporary_exit(),
        explaining why the app is exiting.
        Convey this to the client, and then to the Manager,
        and display it there and in the log.

    clientgui/
        MainDocument.cpp
    lib/
        gui_rpc_client_ops.cpp
        gui_rpc_client.h
    api/
        boinc_api.cpp,h
    client/
        client_types.cpp,h
        app.h
        app_control.cpp

svn path=/trunk/boinc/; revision=25315
2012-02-22 22:56:05 +00:00
David Anderson 2ed1cfbbb2 - scheduler and create_work: fix bugs that caused targeted jobs
to be sent to non-targeted hosts.
    The feeder was erroneously putting targeted jobs
    in the shared mem cache.
    Changes:
    - The feeder only enumerates jobs for which
        workunit.transitioner_flags is zero.
        NOTE: this field is nonzero iff the job is assigned.
    - create_work: when creating an assigned jobs,
        set workunit.transitioner_flags appropriately


svn path=/trunk/boinc/; revision=25314
2012-02-22 22:13:08 +00:00
David Anderson c2ff0d9719 - scheduler: tell the user if we're not sending work because
VirtualBox is not installed


svn path=/trunk/boinc/; revision=25313
2012-02-22 21:21:15 +00:00
David Anderson 14c5493c69 - client: change the job scheduling policy for MT jobs.
The old policy avoided running an N-CPU job unless N CPUs were free.
    This could result in idle CPUs for long periods; for example:
    on a 4-CPU machine, suppose you have a long 1-CPU job in EDF mode,
    and some 4-CPU jobs.
    3 CPUs will be idle until the 1-CPU job finishes.
    Furthermore, the work fetch mechanism won't try to get
    jobs (possibly non-MT) from other projects,
    because the RR simulation doesn't reflect the scheduling
    policy's exclusion principle.

    The change: schedule jobs until ncpus_used >= ncpus.
    E.g. in the above situation run the 1- and 4-CPU jobs together.
    In extreme cases we might run 3 1-CPU jobs and the 4-CPU job.
    This will degrade the performance of the 4-CPU job,
    but that's probably better than having idle CPUs.


svn path=/trunk/boinc/; revision=25312
2012-02-22 21:11:41 +00:00
David Anderson c4d1229830 - scheduler: in version selection, when deciding which version is fastest,
we multiple projected FLOPS by a normal random var
    with mean 1 and stddev 0.1.
    Make the stddev configurable; in particular it can be zero.


svn path=/trunk/boinc/; revision=25311
2012-02-22 19:51:09 +00:00
Rom Walton 594ab7a80d - Vbox: Include date component in log messages to ease debugging long
running VM tasks.
        
    samples/vboxwrapper/
        vbox.cpp
        vboxwrapper.cpp, .h

svn path=/trunk/boinc/; revision=25308
2012-02-21 22:31:50 +00:00
David Anderson d03f697456 - storage stuff
svn path=/trunk/boinc/; revision=25307
2012-02-21 20:55:09 +00:00
Charlie Fenton f5a7d78e85 Mac installer: Update copyright notice from 2009 to 2012
svn path=/trunk/boinc/; revision=25306
2012-02-21 01:22:59 +00:00
Charlie Fenton 89778d8751 Tag for 7.0.18 release, all platforms
svn path=/trunk/boinc/; revision=25303
2012-02-21 00:43:05 +00:00
Charlie Fenton ef811a917b client: Fix OpenCL NVIDIA GPU enumeration bug I introduced with last checkin
svn path=/trunk/boinc/; revision=25301
2012-02-21 00:17:42 +00:00
David Anderson 015a70e757 - client: define a "arrived-first" order on results
in which the tiebreaker is MD5 of name.
    That way the order is stable
    (it doesn't change from one run of the client to the next)
    and it doesn't grep results with similar names
    (and hence for the same app).
    This ordering is used for
    1) the order of display in the manager
    2) the job scheduler's notion of FIFO


svn path=/trunk/boinc/; revision=25300
2012-02-20 22:31:40 +00:00
David Anderson f3df549482 - scheduler: fix a couple of assigned-job bugs
(need "where" at start of enumerate() clause!)


svn path=/trunk/boinc/; revision=25299
2012-02-20 21:54:31 +00:00
David Anderson 05c82a1405 - Manager: compile fix
svn path=/trunk/boinc/; revision=25298
2012-02-20 21:43:56 +00:00
David Anderson 721493bf29 - Manager/Client: fix bugs in GUI RPC that prevented
updates to proxy info from being saved by client


svn path=/trunk/boinc/; revision=25297
2012-02-20 21:32:26 +00:00
David Anderson fa11d48f1d - client: message tweaks
- scheduler: fix crash when use <enable_assignment>


svn path=/trunk/boinc/; revision=25296
2012-02-20 19:59:36 +00:00
Rom Walton 3d0f96ac77 - Tag for 7.0.17 release, all platforms
boinc_core_release_7_0_17

    /
        configure.ac
        version.h

svn path=/trunk/boinc/; revision=25294
2012-02-20 16:03:52 +00:00
David Anderson 995047c74f - client: fix bug in notices where, after a notice is deleted,
the notices tab refreshes once/second forever after

svn path=/trunk/boinc/; revision=25292
2012-02-20 06:29:46 +00:00
David Anderson a6bf5aecf3 - client: tweak to work-fetch policy:
if we're making a scheduler RPC to a project for reasons
    other than work fetch,
    and we're deciding whether to ask for work, ignore hysteresis;
    i.e. ask for work even if we're above the min buffer
    (idea from John McLeod).


svn path=/trunk/boinc/; revision=25291
2012-02-18 23:19:06 +00:00
Charlie Fenton 71e75ee57e client: Fix OpenCL NVIDIA GPU detection when CUDA is not present
svn path=/trunk/boinc/; revision=25289
2012-02-18 11:41:08 +00:00
Charlie Fenton d2c2252479 Mac: Fix back trace to work under OS > 10.5
svn path=/trunk/boinc/; revision=25286
2012-02-18 00:46:42 +00:00
David Anderson 61e169f270 - server: add volunteer data archival to the build system
svn path=/trunk/boinc/; revision=25285
2012-02-17 19:16:49 +00:00
David Anderson 24d386e511 - db_purge: when deleting a workunit record,
delete any assignments that refer to it


svn path=/trunk/boinc/; revision=25284
2012-02-17 18:26:36 +00:00
Rom Walton 3431257465 - Tag for 7.0.16 release, all platforms
boinc_core_release_7_0_16

    /
        configure.ac
        version.h

svn path=/trunk/boinc/; revision=25282
2012-02-17 17:41:57 +00:00
Charlie Fenton d8bff2cb64 MGR: Fix a Mac-only bug which showed Event Log if About BOINC is selected from task bar menu when BOINC is hidden
svn path=/trunk/boinc/; revision=25281
2012-02-17 13:59:57 +00:00