Message boards :
Technical News :
Advance (Jun 25 2009)
Message board moderation
Previous · 1 · 2 · 3 · 4
Author | Message |
---|---|
EPG Send message Joined: 3 Apr 99 Posts: 110 Credit: 10,416,543 RAC: 0 |
I do, if you check my sig, you can see, i do/did multiple projects.
But I advice EDF only for choosing for next work inside a project. All I asking why boinc use the "downloaded" order inside, i have no problem with the round-robin project selection. Example: 1 cpu, 1 project with wus that takes 2 days to compute, cache 5 days. We got wu A with deadline 10 days from now, and wu B with deadline 5 days from now. Wu A arrived first. And now we have to choose the next wu. Current Boinc would choose A then B, and the computer could finish it normally. But if we got a electric blackout for 3 days after the first day then it can't do it. Using EDF in this scenario would solve it. If there are multiple project on this comp. then "fifo goes into edf" maybe can solve it with debt, but edf would solve it without debt. |
John McLeod VII Send message Joined: 15 Jul 99 Posts: 24806 Credit: 790,712 RAC: 0 |
EDF only within a project does now work well either as some projectsm, including SETI, have tasks with varying computation requirements and deadlines. If you keep the queue topped off, and the queue is longer than the time for a single one of the long duration tasks, and you are unlucy enough to get a bunch of thw short duration short deadline tasks, then it is entirely possible that computation will not start on the long duration task until after it is too late for it to complete. Using FIFO when possible tends to clear out the long duration tasks when EDF is not absoloutely required in oreder to meet deadlines. There is a case for GPU tasks to run to completion, if possible, before a task switch as the cost of the task switch is very high. This does have a detrimental effect on the interesting assortment of work done on the computer, but in the case of GPU tasks, there are likely to be CPU tasks running as well, so this argument is less valid. If using FIFO only, even between projects, then the work fetch needs to be modified such that it does not fetch work from anywhere if there is enough work in the queue to fill it. The work would not be started for a long time anyway, so there is no need to download it. BOINC WIKI |
1mp0£173 Send message Joined: 3 Apr 99 Posts: 8423 Credit: 356,897 RAC: 0 |
If you really feel strongly about this, you can download the BOINC source code, compile it, and test it out. I went through the same process you're doing now. As a general rule, round-robin works best. The oldest work units make progress toward completion, and even if you download work with shorter deadlines, BOINC continues to work on tasks that are started. If BOINC finds that round-robin scheduling won't complete work on time, then throwing everything at the shortest deadlines will generally avoid trouble. This works because it handles the normal cases normally, and the exceptional cases exceptionally. |
Chelski Send message Joined: 3 Jan 00 Posts: 121 Credit: 8,979,050 RAC: 0 |
To get around BOINC limitation on the number of WUs, one work around is to let your PC live a double life with 2 separate BOINC instances, each linked to a unique computer name. Take some baby sitting to maintain but can be done. But unfortunately will effectively half the RAC. Did it for a while to feed BOINC to a PC that have a dead LAN connection, but at the end gave up coz the trouble required to change pc name, reboot, then only let BOINC connect, etc... |
1mp0£173 Send message Joined: 3 Apr 99 Posts: 8423 Credit: 356,897 RAC: 0 |
To get around BOINC limitation on the number of WUs, one work around is to let your PC live a double life with 2 separate BOINC instances, each linked to a unique computer name. Take some baby sitting to maintain but can be done. But unfortunately will effectively half the RAC. Did it for a while to feed BOINC to a PC that have a dead LAN connection, but at the end gave up coz the trouble required to change pc name, reboot, then only let BOINC connect, etc... If you run a computer half-time, BOINC will figure out how much time it actually runs (remember, BOINC works on computers that are used a few hours per day and then turned off when they aren't being used) and reduce the queue appropriately. So, if you take one computer and make it look like two computers running a half-day, the cache on each will be reduced by half. |
Sutaru Tsureku Send message Joined: 6 Apr 07 Posts: 7105 Credit: 147,663,825 RAC: 5 |
... Thanks a lot! :-) I have no knowledge about the 'Changeset area'. The Devs are now informed and will change BOINC? |
John McLeod VII Send message Joined: 15 Jul 99 Posts: 24806 Credit: 790,712 RAC: 0 |
... A changeset is a change to the program. In other words the code has been changed, not it has to be tested and released. DaveA is the lead developer. BOINC WIKI |
©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.