Message boards :
Number crunching :
Task prioritization.
Message board moderation
Author | Message |
---|---|
ProfessorBarnhardt Send message Joined: 19 Aug 03 Posts: 37 Credit: 2,285,937 RAC: 0 |
I'm currently using BOINC 7.6.6. I'm wondering if, in future versions, users will be able to prioritize tasks based on the deadline date ... or if the software will do that prioritization for users. You'd think that tasks closest to their deadline date would be run "before" others. But they don't - at least not on my machine. And I can't figure out what logic the software uses to select the order in which tasks are started. |
Darth Beaver Send message Joined: 20 Aug 99 Posts: 6728 Credit: 21,443,075 RAC: 3 |
Update your client it has been fixed |
rob smith Send message Joined: 7 Mar 03 Posts: 22202 Credit: 416,307,556 RAC: 380 |
When running normally BOINC runs tasks in the sequence they were received in. If BOINC detects that a task isn't going to run before it's deadline then it is promoted up the list, and it may run at higher priority. Most of the time BOINC does a good job, so doesn't need any intervention, although it has been known to do strange things if you have a large "extra days" setting, in which case it will sometimes go into a premature panic. Bob Smith Member of Seti PIPPS (Pluto is a Planet Protest Society) Somewhere in the (un)known Universe? |
HAL9000 Send message Joined: 11 Sep 99 Posts: 6534 Credit: 196,805,888 RAC: 57 |
I'm currently using BOINC 7.6.6. I'm wondering if, in future versions, users will be able to prioritize tasks based on the deadline date ... or if the software will do that prioritization for users. You'd think that tasks closest to their deadline date would be run "before" others. But they don't - at least not on my machine. And I can't figure out what logic the software uses to select the order in which tasks are started. If you want to force BOINC to run by deadline instead of FIFO then you can increase the value of Store at least X days of work in your settings. SETI@home classic workunits: 93,865 CPU time: 863,447 hours Join the [url=http://tinyurl.com/8y46zvu]BP6/VP6 User Group[ |
ProfessorBarnhardt Send message Joined: 19 Aug 03 Posts: 37 Credit: 2,285,937 RAC: 0 |
Darth Beaver wrote: Update your client it has been fixed Not in v7.6.22 (the latest version). I just updated to it. If anything, it's gotten worse - running tasks whose deadline is near the end of May when I have April tasks untouched. HAL9000 wrote: If you want to force BOINC to run by deadline instead of FIFO then you can increase the value of Store at least X days of work in your settings. Well, I don't really want to "force" anything. It just seems a bit idiotic to run a task deadlined for 5/22 when a task deadlined for 4/20 sits untouched. Hopefully, in the future, the BOINC R&D people will address the issue. |
HAL9000 Send message Joined: 11 Sep 99 Posts: 6534 Credit: 196,805,888 RAC: 57 |
Darth Beaver wrote: Deadlines are determined by how much estimated processing is required to complete the task. Tasks that require less processing time are given a shorter deadline. They do not have a shorter deadline because they are more important in some way. FIFO is pretty much a standard way to handle things. Not just BOINC but how much of the world actually functions. As I indicated you can tell BOINC to operate by deadline if you like. It does mean that if you have a batch of normal task & get more tasks that have a shorter deadline. Then BOINC would suspend the current tasks in progress and switch to the new tasks meditatively. Another option you may consider is to view only actives task in BOINC Manager. Then you wouldn't have to see tasks not being processed in the order you prefer. Given the speed that your computer completes tasks. I would expect tasks are finished long before running into deadlines. SETI@home classic workunits: 93,865 CPU time: 863,447 hours Join the [url=http://tinyurl.com/8y46zvu]BP6/VP6 User Group[ |
ProfessorBarnhardt Send message Joined: 19 Aug 03 Posts: 37 Credit: 2,285,937 RAC: 0 |
HAL9000 wrote: Given the speed that your computer completes tasks. I would expect tasks are finished long before running into deadlines. Perhaps. But less than an hour ago (while my computer was running a task with a 5/27 deadline), BOINC downloaded a task whose deadline was 4/21. So, it's pretty apparent the server doesn't even release tasks for work based on deadline dates ... much less prioritizes them so the tasks are completed in that order. BTW, 4 of the 8 tasks running right now have a "shorter" completion time than the 4/21 task most recently downloaded. Yet all 4 tasks are May tasks. Not just BOINC but how much of the world actually functions. We must live in a dysfunctional world (grin). Oh, well ... their project, not mine. It just seems a peculiar way to do things. |
HAL9000 Send message Joined: 11 Sep 99 Posts: 6534 Credit: 196,805,888 RAC: 57 |
HAL9000 wrote: As I just said in the previous post. Deadlines are determined by how much estimated processing is required to complete the task. SETI@home classic workunits: 93,865 CPU time: 863,447 hours Join the [url=http://tinyurl.com/8y46zvu]BP6/VP6 User Group[ |
Grant (SSSF) Send message Joined: 19 Aug 99 Posts: 13736 Credit: 208,696,464 RAC: 304 |
So, it's pretty apparent the server doesn't even release tasks for work based on deadline dates ... much less prioritizes them so the tasks are completed in that order. Because it's not necessary. All that is necessary is that work is returned before the deadline. Why make things more difficult & complicated, when there is no need or benefit in doing so? We must live in a dysfunctional world (grin). Oh, well ... their project, not mine. It just seems a peculiar way to do things. ? Pretty much every job I've had, work has been done in the order in which it has been received. If there was something more urgent, then it would get done in preference to existing jobs. Once done, back to the existing jobs. Doing some things before others- when it's not necessary- doesn't make much sense, it just results in more mucking about. Doing it that way would be dysfunctional to me. Grant Darwin NT |
Brent Norman Send message Joined: 1 Dec 99 Posts: 2786 Credit: 685,657,289 RAC: 835 |
The easy solution is to set a cache of 4 days + 0.01 days. You will never run out of work, and tasks will be reported in a timely fashion. |
rob smith Send message Joined: 7 Mar 03 Posts: 22202 Credit: 416,307,556 RAC: 380 |
Supporting Brent - I run 5 days plus 0.01 on my servers, and just sit back and watch the credits roll in. They rarely do anything strange when running SETI and other "long" deadline work, but do sometimes get upset when a project dumps me a hundred tasks with a two or three day deadline, and each task will take several hours to run, and so I have more work in the caches than can be run in the time available. One thing to consider. If running multiple projects is how much effort you want to put into each project - experience has shown that by setting you main project to 1000, then the next ones to a small number (say 10), the low priority ones to 1, and the those that are the real backstop projects to 0 gives a sensible share to the projects, whereas the more obvious 1000/500/100... tends to lead to lots of work running in "panic" mode, and some tasks timing out. Bob Smith Member of Seti PIPPS (Pluto is a Planet Protest Society) Somewhere in the (un)known Universe? |
HAL9000 Send message Joined: 11 Sep 99 Posts: 6534 Credit: 196,805,888 RAC: 57 |
The easy solution is to set a cache of 4 days + 0.01 days. Their system runs tasks in about 4 hours & has 8 cores. So that's about 48 tasks a day. Their cache seems to hold steady around 25 tasks. So they don't really ever have more than 12 hours of work on hand at any given time. That is without figuring in their GPU which runs tasks in about an hour. SETI@home classic workunits: 93,865 CPU time: 863,447 hours Join the [url=http://tinyurl.com/8y46zvu]BP6/VP6 User Group[ |
©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.