Commit Graph

2235 Commits

Author SHA1 Message Date
David Anderson 5b76909f04 scheduler: parse OpenCL/CPU descriptors, and add plan class for OpenCL/CPU/Intel 2013-08-26 23:32:32 -07:00
David Anderson b2e06e0704 Server: various fixes for "make install" 2013-08-24 20:36:49 -07:00
David Anderson f13c3d58ea fix bug in trickle handler framework; from Christian 2013-08-23 13:01:53 -07:00
David Anderson 628ba8f0ef Tweaks to deadline-extension trickle handler, from Christian 2013-08-23 09:45:45 -07:00
David Anderson 95d12b76e7 server: add code for extending deadlines via trickle-ups; from Christian 2013-08-23 00:34:37 -07:00
David Anderson ef82d5d9fb server: fix compile error on systems that don't define MAXPATHLEN 2013-08-22 17:01:45 -07:00
David Anderson 1c31f6feaa Condor: fix bug when 2 input files have same contents; fix error messages 2013-08-09 16:06:36 -07:00
Eric J Korpela 48d995061f Merge branch 'master' of ssh://boinc.berkeley.edu/boinc-v2 2013-08-08 11:31:27 -07:00
Eric J Korpela 60c7814250 SCHED: Removed claimed credit sanity check because GPU machines often have host
scales that cause it to fail. That prevents host_app_version PFCs not to be
updated for perfectly reasonable credit claims.  Since there is a max credit
granted this mechanism is unneccesary, anyway.
2013-08-08 11:23:30 -07:00
David Anderson b156e88208 scheduler: sample code for the SSE3 plan class must check for "pni" rather than "sse3"; clients report "pni" 2013-08-08 11:00:29 -07:00
Eric J Korpela 03e64f720b SCHED: Added "intel_gpu" to app_plan_uses_gpu() 2013-06-25 19:31:23 -07:00
Eric J Korpela 4e338e946e -SCHED: Added plan class spec plan class option "<need_amd_libs>" (similar to
"<need_ati_libs>".  Before this the default was to require AMD libraries unless
    need_ati_libs was set.  Now the default is to require neither.  This is
    necessary for MacOS compatibility (where there is no distiction).
   -SCHED: Changed intel gpu type search to match any string in the gpu_type
    beginning with "intel".  This was done because there have been
    inconsistencies in the code where "intel" vs "intel_gpu" is used.
2013-06-25 19:17:46 -07:00
Eric J Korpela 2c226d6ab2 SETI@home: made sending VLAR results to GPUs a run time sah_config.xml option 2013-06-19 14:40:53 -07:00
Eric J Korpela 244ba5bc85 SCHED: modified scheduled log output to use unsigned format for WU and RESULT
ids.  This allows IDs greater than 2^31 to be printed.
2013-06-19 10:15:08 -07:00
Eric J Korpela bd5658a833 Merge branch 'master' of ssh://boinc.berkeley.edu/boinc-v2 2013-06-09 19:18:33 -07:00
David Anderson 78f7610f6e remove dependency of boinc_api.h on str_replace.h (and hence config.h)
Any files that use strlcpy() or strlcat() must directly include str_replace.h
2013-06-06 17:31:46 -07:00
Eric J Korpela 679cca5f1f Merge branch 'master' of ssh://boinc.berkeley.edu/boinc-v2 2013-06-04 14:01:18 -07:00
Eric J Korpela b718037e79 - SCHED: Added code to reduce the number of times a app_version is sent
to host that has never successfully completed a result with that app_version.
2013-06-04 14:00:09 -07:00
Eric J Korpela d9d5b4b3b5 - SCHED: changes SETI@home feasibility to allow VLAR to go to ATI GPUs
with cal_target>15 and NVIDIA GPUs with compute capability>=3.0
2013-06-04 13:57:30 -07:00
David Anderson b9f0733c06 server: replace strcpy() with strlcpy() various places 2013-06-03 22:42:53 -07:00
David Anderson 846b8c7757 all components: change strcpy() to strlcpy() when possible.
This commit should cover the client and manager code.
2013-06-03 20:24:48 -07:00
David Anderson ba68f452a0 server: fix bug related to job-size matching
Problem: a workunit could error out with unsent results.
The feeder skips such results, but the size_regulator counts them
and doesn't so doesn't promote any new results.
Solution: the feeder scans for results even with workunit errors.
If marks these results as state OVER, outcome DIDNT_NEED
2013-05-24 20:11:14 -07:00
David Anderson cde42fcbcc server: parse product_name in scheduler request, store in DB
This will let projects see what kind of device each Android host is,
possibly helping with app debugging.
2013-05-23 23:30:42 -07:00
David Anderson 64ccb6afbf scheduler: fix bug that prevented Intel GPUs from getting work 2013-05-23 09:48:43 -07:00
David Anderson 4a90705107 db_purge: add --mod N R option to allow multiple instances. From Kevin Reed 2013-05-22 21:13:24 -07:00
David Anderson bf96878fe8 scheduler: comparison function for score-based scheduling was backwards 2013-05-22 10:20:54 -07:00
David Anderson fa43e0fe6e scheduler: enforce job limits in score-based scheduling 2013-05-21 20:14:39 -07:00
Eric J Korpela 225dc6534a - SCHED: Modified the SETI@home version of wu_is_infeasible_custom() to allow
very low angle range (VLAR) results to go to newer AMD/ATI GPUs.
2013-05-21 09:20:53 -07:00
David Anderson 8e2524f55f Unix build: Makefile changes for "make install", from Steffen Moeller
"make install" followed by make_project should now work
2013-05-20 15:19:13 -07:00
David Anderson 9049737d1f validator: retry if transient failure
check_set() wasn't returning "retry" properly in the case where
one of the calls to init_result() return ERR_OPEN_DIR
(treated as a transient failure, since it can be caused by a failed NFS mount)
2013-05-20 13:01:10 -07:00
David Anderson 7472e29495 fix Clang warning 2013-05-20 13:00:22 -07:00
David Anderson 5827ff2a68 transitioner: fix bugs when size matching is used. 2013-05-20 10:25:58 -07:00
Eric J Korpela fa11c320db Merge branch 'master' of ssh://boinc.berkeley.edu/boinc-v2 2013-05-19 11:14:31 -07:00
Eric J Korpela 6c76ddd45c - SCHED: Fixed problem that prevented proper driver version checking in cuda and
nvidia plan classes in plan_class_spec.xml
- SCHED: Scheduler was not using properly estimated performance when assigning
  work.  It was using theoretical performance to choose version and actual
  preformance to determine how long it would take.  I've changed that to start
  with theoretical performance and converge to actual performance as
  host_app_version pfc_n increases.
- SCHED: Added some additional app version selection debugging output.
2013-05-19 11:08:36 -07:00
David Anderson 24998d0a7d scheduler: fix bug that could permanently disconnect clients
The scheduler sends <no_rsc_apps> flags for processor types for which
the project doesn't have app versions.
Problem: if the project doesn't have app versions for any processor types
(e.g. because everything was temporarily deprecated)
and it sends all the flags,
7.0.x clients may never contact the scheduler again.
Solution: check whether we have app versions for any of the client's processor types.
If not, don't send the no_rsc_apps flags.
2013-05-17 11:38:24 -07:00
David Anderson 66589cbc5a file upload handler: handle zero-length files correctly 2013-05-15 11:04:39 -07:00
Eric J Korpela fd5c8c6e82 - Added scheduler config boolean option <estimate_flops_from_hav_pfc> which
allows projected_flops to be calculated from host_app_version pfc rather
  than elapsed time.  This is valuable if result elapsed times are highly
  variable and dependent on input.
2013-04-30 16:30:27 -07:00
Eric J Korpela 8998f7d21e Added missing '\n' in plan_class_spec debugging output. 2013-04-25 16:33:22 -07:00
Eric J Korpela 84fc11cb3a Updated sample plan classes to show newer features. 2013-04-25 13:43:30 -07:00
Eric J Korpela ca40cdac33 Added "<without_opencl>" boolean to plan_class_spec to make it possible to
restrict an ATI/AMD CAL app to GPUs and drivers that don't support OpenCL.
2013-04-25 13:28:41 -07:00
Eric J Korpela 24353261c4 Fixed problems with FCGI compiles introduced in recent checkins. 2013-04-25 12:46:22 -07:00
David Anderson 0c430ce1fa Add support for multi-size apps
See http://boinc.berkeley.edu/trac/wiki/MultiSize
The components of this include:
- DB changes:
    add size_class to workunit and result
    n_size_classes to app; >1 means multi-size
- size_regulator daemon program: change results states
    from INACTIVE to UNSENT carefully
- size_census program; writes quantile info in flat files
- transitioner: when creating results for multi-size apps,
    set server state to INACTIVE
- sched shmem (feeder): read quantile info from flat files,
    store in shared memory
- scheduler (score-based scheduling): for multi-size apps,
    add component to score function for size class.
- show_shmem: show result size class
- make_work (and other callers of count_unsent_results()):
    count both INACTIVE and UNSENT
- create_work: add --size_class cmdline option

Also:
- if get MySQL errors in upgrade, don't rewrite db_version
2013-04-25 00:27:35 -07:00
David Anderson 8740e9a2b5 - web: update text for finding data directory 2013-04-24 19:15:06 -07:00
David Anderson 8846a15571 - sample work generator: maintain a buffer of N unsent jobs
for the given app, not total.  From Jon Sonntag.
2013-04-20 13:49:51 -07:00
David Anderson 478900c321 - web/scheduler: add project preference for not getting Intel GPU jobs 2013-04-20 12:25:55 -07:00
David Anderson eac1264656 - scheduler: send <no_rsc_apps> elements to post-7.0.40 clients 2013-04-19 00:11:24 -07:00
David Anderson aa07305eeb - GUI RPC: add "project_dir" field to PROJECT struct.
GUIs can look for image files (stat_icon etc.) in this directory.
2013-04-18 12:43:17 -07:00
David Anderson 7abfe40063 - scheduler: add optional <host_summary_regex> element to plan_class_spec.xml.
This regular expression is matched against the "host summary" string
    stored in host.serialnum.
    You can use this, e.g., to allow only particular GPU models.
2013-04-15 12:00:14 -07:00
Eric J Korpela 9f1205f627 Merge branch 'master' of ssh://boinc.berkeley.edu/boinc-v2 2013-04-10 18:23:31 -07:00
Eric J Korpela 61609281c1 - added opencl_driver_revision to OPENCL_DEVICE_PROP and PLAN_CLASS_SPEC. This
was necessary because ATI is releasing OpenCL drivers that don't work.
2013-04-10 18:20:22 -07:00