How does BOINC choose which WU to run?

Questions and Answers : Getting started : How does BOINC choose which WU to run?
Message board moderation

To post messages, you must log in.

AuthorMessage
Profile Cyntech
Avatar

Send message
Joined: 17 Apr 02
Posts: 21
Credit: 1,259,030
RAC: 0
Australia
Message 933408 - Posted: 15 Sep 2009, 1:30:53 UTC

Just a quick query;

How does BOINC choose which work unit to run when it starts a new unit?


ID: 933408 · Report as offensive
OzzFan Crowdfunding Project Donor*Special Project $75 donorSpecial Project $250 donor
Volunteer tester
Avatar

Send message
Joined: 9 Apr 02
Posts: 15691
Credit: 84,761,841
RAC: 28
United States
Message 933431 - Posted: 15 Sep 2009, 2:46:06 UTC

Due to varying workunit sizes from several projects, each with varying deadlines, the default method is First In, First Out. If BOINC calculates that a workunit may miss a deadline for some reason, it will switch to Earliest Deadline First mode (in BOINC Manager, it will say "Running, High Priority") until BOINC estimates that all dangers of missing a deadline have passed, then it will switch back to FIFO.

There is no way to force one method over the other.
ID: 933431 · Report as offensive
Aurora Borealis
Volunteer tester
Avatar

Send message
Joined: 14 Jan 01
Posts: 3075
Credit: 5,631,463
RAC: 0
Canada
Message 933442 - Posted: 15 Sep 2009, 3:34:16 UTC

To expand on what OzsFan said...

If you have more than one project, Boinc determines which project to run next based on how much work has been done for each projects and tries to maintain the resource share of the projects. It does this using a system of debt. It regularly check on these values and determines if it need to give time to another project.

For more detail on Boinc inner workings see Work Scheduler.
ID: 933442 · Report as offensive
John McLeod VII
Volunteer developer
Volunteer tester
Avatar

Send message
Joined: 15 Jul 99
Posts: 24806
Credit: 790,712
RAC: 0
United States
Message 933485 - Posted: 15 Sep 2009, 11:06:15 UTC

Within a single project the default is First In First Out.

Between projects on a CPU the default is Round Robin modified by resource share. Between projects on a GPU the default is First In First Out.

There is a high priority mode that kicks in if a task in a project is in danger of being late if run in the default order. In this case, the earliest deadline task from the set of projects with tasks that are in deadline trouble is run. If there is more than one CPU, each CPU will be scheduled into this mode independently. Similarly for GPUs.


BOINC WIKI
ID: 933485 · Report as offensive

Questions and Answers : Getting started : How does BOINC choose which WU to run?


 
©2024 University of California
 
SETI@home and Astropulse are funded by grants from the National Science Foundation, NASA, and donations from SETI@home volunteers. AstroPulse is funded in part by the NSF through grant AST-0307956.