PDA

View Full Version : BOINC won't download work even when the CPU or GPU is idle



Slicker
06-13-12, 04:35 PM
Scenerio: You have your cache set to 1 day. You have one day's worth of "Project X" tasks. They have a two week deadline. You decide to participate in a challenge for Project Y that will run for 3 days. You suspend Project X and attach to Project Y assuming that after the challenge, you will switch back to Project X and complete the work prior to the deadline. But, BOINC won't download any work. It doesn't make sense, right?

A change to recent versions of BOINC was that, by downloading the tasks, you agree to complete the tasks. So, since BOINC has a full cache, even though Project X is suspended, you can't get any more work for other projects if your cache is already full because BOINC wants you to complete the work you already have.

To get work for Project Y, you will have to either:
a) set Project X to no new tasks and let it complete all the other work so that it will then get work from Project Y when it finishes the work for Project X, or
b) abort the tasks for Project X, set it to no new tasks, and get work for Project Y right away, or
c) detach from Project X, or
d) increase your cache size such that even with all the suspended work, you can get more. This will only work so long as BOINC thinks it can get the Project X work done prior to the deadline and doesn't want to run some of it in high priority mode which keep it from downloading any new work. BOINC is pretty dumb with its time estimates (e.g. 6 hour task with a 7 day deadline and it runs at high priority because it thinks it will take 30 hours which is still 8 times less time than the deadline). So, a, b, or c will probably work better.

Rattledagger
06-14-12, 08:38 AM
Scenerio: You have your cache set to 1 day. You have one day's worth of "Project X" tasks. They have a two week deadline. You decide to participate in a challenge for Project Y that will run for 3 days. You suspend Project X and attach to Project Y assuming that after the challenge, you will switch back to Project X and complete the work prior to the deadline. But, BOINC won't download any work. It doesn't make sense, right?

A change to recent versions of BOINC was that, by downloading the tasks, you agree to complete the tasks. So, since BOINC has a full cache, even though Project X is suspended, you can't get any more work for other projects if your cache is already full because BOINC wants you to complete the work you already have.
Huh? :confused:

Well, I've not seen anything to this problem, had no problem running the various projects during the pentathlon, for so doing SIMAP, even all the time was sitting with 30+ days of suspended CPDN-work...

Mike029
06-14-12, 08:53 AM
Same thing happened to me and I just aborted all the wu's. I thought it was DiRT that was being a pita.

Duke of Buckingham
06-14-12, 09:32 AM
That happened to me with Seti@home Beta, everytime a tasks was about to finnish, the system stop using the CPU and the GPU. So I had to restart the system. I am giving a time for S@H Beta solve their issues.

Dirty give a lot of errors with the 5770. I was at six tasks to get million but will have to wait. I don't know if it is the Boinc 7.0.28 that I am using or the projects, I would like to know for shure.

Slicker
06-14-12, 10:53 AM
The made the change because before, when people had a full cache of work for project A, joined project B and then suspended the project A (e.g. for a challenge), it would download another full cache of work for project B which meant that they would never finish it all before the deadlines. That assumes that the cache size was more than half the number of days until deadline. So, the solution was that if the cache is full, don't download any more work even if the work in the cache is for a suspended project. So, whenever there are multi-project challenges, people will now be aborting tasks prior to the challenge instead of resuming the tasks after the challenge. Another instance where protecting us from ourselves ends up with an even worse situation that existed before.

Rattledagger
06-14-12, 12:23 PM
The made the change because before, when people had a full cache of work for project A, joined project B and then suspended the project A (e.g. for a challenge), it would download another full cache of work for project B which meant that they would never finish it all before the deadlines. That assumes that the cache size was more than half the number of days until deadline. So, the solution was that if the cache is full, don't download any more work even if the work in the cache is for a suspended project. So, whenever there are multi-project challenges, people will now be aborting tasks prior to the challenge instead of resuming the tasks after the challenge. Another instance where protecting us from ourselves ends up with an even worse situation that existed before.
Hmm.... tries a couple tests...

Let's see, 26 days worth of unstarted CPDN-work (per core), with deadline in 3 days time, suspends project...

Allows work, cache-settings 1 + 1, SETI is asked for 2 days of work, gives "no work available".
Einstein@home gives-out roughly 1.6 days worth of work per core.
Suspends Einstein, allows WCG, asks for 2 days of work, gives-out much work, but not sure if enough for 2 days.
Suspends WCG, allows LHC, asks for 2 days of work, doesn't have any.

So no, sorry, but I didn't manage to reproduce your reported behaviour with the current alpha-client, v7.0.28. Now, this does of course not rule-out if your reported behaviour was true for v7.0.25 but has already been changed again. Or, it's possibly only a problem with GPU in the mix (tested on computer without GPU).

somanyroads
10-23-12, 11:02 AM
Has this been fixed in versions after 7.0.28, I don't see any more posts on this subject. Have two nvidia GPUs; one on POEM, one on Collatz. Have exclude-GPU-lines in cc_config. If I manually download WUs by temporarily suspending one project at a time, they will both run on their respective GPUs. If one project runs out of work, Boinc 7.0.28 will not automatically download more work for that project, the other GPU project has to be manually suspended. Are there some specific settings in Boinc that need to be adjusted?

EDIT: Never mind, after a while reading forum threads from other sites it appears that work fetch is a known issue when excluding GPUs.

http://boinc.berkeley.edu/dev/forum_thread.php?id=7796

Mike029
10-23-12, 11:24 AM
Has this been fixed in versions after 7.0.28, I don't see any more posts on this subject. Have two nvidia GPUs; one on POEM, one on Collatz. Have exclude-GPU-lines in cc_config. If I manually download WUs by temporarily suspending one project at a time, they will both run on their respective GPUs. If one project runs out of work, Boinc 7.0.28 will not automatically download more work for that project, the other GPU project has to be manually suspended. Are there some specific settings in Boinc that need to be adjusted?

I was running into the same problem. Another thing that would happen is that the one gpu would sit idle till the other finished all it's work then Boinc, on one project, would dl'd a bunch of wu's and BOTH gpus would crunch only that project. effectivly ignoring the exclude gpu line. I know it's something I'm doing wrong. :confused:

coronicus
10-24-12, 12:05 PM
Ok let me give you my situation with this messed up scheduler on 7.28

I7 2600k OC with HD7970 closes to CPU but its reported as GPU 1 and HD6950 farthest from CPU reported as GPU 0

10/23/2012 8:09:51 AM | | OpenCL: ATI GPU 0: Cayman (driver version 1084.2 (VM), device version OpenCL 1.2 AMD-APP (1084.2), 2048MB, 2016MB available)
10/23/2012 8:09:51 AM | | OpenCL: ATI GPU 1: Tahiti (driver version 1084.2 (VM), device version OpenCL 1.2 AMD-APP (1084.2), 3072MB, 3032MB available)

Setting the network tasks to 10 days (see poem why i did this)

CPU simap
Downloads 300WU reporting 4d 18hours worth of work but will keep that number constant meaning once one WU is complete another is downloaded to replace it (should be 400 WU so go figure that one so unless simap changes its 50 per core deal im not sure why im limited to 300 but thats not a big issue at moment but will be once i start bunkering for simap in a few days)

Dirt HD7970 (exclusion on the HD6950)
<exclude_gpu>
<url>http://boinc.freerainbowtables.com/distrrtgen/</url>
<device_num>0</device_num>
</exclude_gpu>

Downloads 57 WU reporting 9 hours worth of work but will keep that number constant meaning once one is complete another is downloaded to replace it

Poem HD6950 (exclusion on the HD7970)
<exclude_gpu>
<url>http://boinc.fzk.de/poem/</url>
<device_num>1</device_num>
</exclude_gpu>

Downloads 24 WU but will not download anymore WU until all WU are completed.

5532 Poem@Home 10/24/2012 10:45:49 AM Sending scheduler request: Requested by user.
5533 Poem@Home 10/24/2012 10:45:49 AM Not reporting or requesting tasks

So what happens is when the last 3 are running they will have slightly dif times to end leaving the gpu to go from 3 task to 2 task then to 1 task after which once the last task is complete and reports, it will download 24WU
(Only if i set it to 10 days worth of work any lower the task will be much less like 1 day i think was only like 5 task or something like that and also i was very lucky that the 10 days gave me a divisson of 3 giving me 8 rounds of Poem)

So something is seriously wrong with the scheduler's calculation.. I need to find were these calculation are made and have not been lucky with any of the mods i have made. If anyone has insight to were these numbers are stored im hoping to override them but i have a feeling its buried deep in boinc.

FYI i was only able to get this to partialy work with one setting in the cc_config.xml

<report_results_immediately>1</report_results_immediately>

with this setting atleast it should force that one project with completed WU to get more when reporting its last completed WU.. I hope that helps some of you although i havent run into an issue were i couldnt get any work at all.

edit: had exclude comments above in the wrong spot

Rattledagger
10-24-12, 03:01 PM
Ok let me give you my situation with this messed up scheduler on 7.28
Try v7.0.36, it's got various improvements to work-requests.

somanyroads
10-24-12, 05:27 PM
EDIT: Never mind, after a while reading forum threads from other sites it appears that work fetch is a known issue when excluding GPUs.

http://boinc.berkeley.edu/dev/forum_thread.php?id=7796

From the above link:

Message 45919 - Posted: 8 Oct 2012 | 15:43:50 UTC - in response to Message 45916.

"Yes, as noted in the OP this nasty bug does not affect machines running 1 ATI and 1 NVIDIA GPU. As we've confirmed it DOES affect any machines with 2 or more ATI GPUs OR 2 or more NVIDIA GPUs. That includes machines with 1 NVIDIA and 2 ATIs, etc.

The only workaround available at this point seems to be running BOINC 7.0.2 and either dump GPU WUs as they pile up or micromanage the systems constantly. Not good but everything after 7.0.2 has this nasty flaw. Hopefully we'll get a fix soon..."

Don't like going backwards, but maybe I'll try 7.0.2, unless someone knows otherwise. Hope POEM and Collatz run on 7.0.2. The exclude command looks to be good in 7.0+