Changes between Initial Version and Version 1 of Ticket #266
- Timestamp:
- Jun 12, 2007, 1:24:17 PM (17 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ticket #266
- Property Keywords workunit added; work units removed
-
Property
Type
changed from
Enhancement
toTask
-
Ticket #266 – Description
initial v1 5 5 Boinc will need to be able to cope with huge multithreaded work units in the future (in version 7.0 or 8.0 I guess). 6 6 7 Quote 8 sending out multicore-ready models (via MPI) is something I've been toying with,esp for the higher-res models. although I'm not sure how BOINC will react to that, I suppose it couldn't stop our monitor job from launching a 2 or 4-CPU-usage model, but it would probably schedule other work to be done on these CPUs so we'd all be "fighting" for the same cores etc.7 Quote: 8 > sending out multicore-ready models (via MPI) is something I've been toying with, esp for the higher-res models. although I'm not sure how BOINC will react to that, I suppose it couldn't stop our monitor job from launching a 2 or 4-CPU-usage model, but it would probably schedule other work to be done on these CPUs so we'd all be "fighting" for the same cores etc. 9 9 10 10 [http://boinc.berkeley.edu/dev/forum_thread.php?id=1863&nowrap=true#10839] … … 18 18 Several ways to handle multithreaded jobs come to mind, all with different problems... 19 19 20 * No limit on threads, exclusive access to the machine for it's timeslot (and debt would be charged per physical core available). But if the work unit's thread usage fluctuates over time, that'd lead to wasted CPU time.20 * No limit on threads, exclusive access to the machine for it's timeslot (and debt would be charged per physical core available). But if the work unit's thread usage fluctuates over time, that'd lead to wasted CPU time. 21 21 22 * or reserve a number of cores but allow other jobs to run at the same time on the remaining cores (e.g., 1 job exclusively using 2 threads, + 2 jobs using 1 thread each on a 4 core box)22 * or reserve a number of cores but allow other jobs to run at the same time on the remaining cores (e.g., 1 job exclusively using 2 threads, + 2 jobs using 1 thread each on a 4 core box) 23 23 24 * or let multiple work units fight for CPU time (i.e., allow more threads of work than there are physical cores, and let the operating system sort it all out. 4 jobs using 4 cores, any number of active threads). Risk of CPU starvation?24 * or let multiple work units fight for CPU time (i.e., allow more threads of work than there are physical cores, and let the operating system sort it all out. 4 jobs using 4 cores, any number of active threads). Risk of CPU starvation? 25 25 26 26 The work-request process might need to consider memory size (i.e., don't simultaneously issue 4 5GB work units to a PC with 8GB and 4 cores since only one can practically run at a time).