CPU: not highest priority project

Questions and Answers : Preferences : CPU: not highest priority project
Message board moderation

To post messages, you must log in.

AuthorMessage
Erik Baird

Send message
Joined: 3 Jun 99
Posts: 5
Credit: 8,825,727
RAC: 0
United States
Message 1611475 - Posted: 10 Dec 2014, 1:29:37 UTC

09-Dec-14 18:15:16 | SETI@home | Not requesting tasks: don't need (CPU: not highest priority project; NVIDIA GPU: not highest priority project)

I have four projects running with equal priority. SETI did grab some work units after the new batches were uploaded, but I noticed it wasn't working on anything yesterday and today. When I forced an update, it returned the above message.

Why is SETI suddenly demanding to be the highest priority project before it will accept more work?
ID: 1611475 · 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 1611486 - Posted: 10 Dec 2014, 1:50:40 UTC - in response to Message 1611475.  

It's not demanding to be the highest priority. The message means that SETI hasn't built up enough debt to require fetching more work and that other projects have a higher debt that needs to be worked off first.
ID: 1611486 · Report as offensive
Erik Baird

Send message
Joined: 3 Jun 99
Posts: 5
Credit: 8,825,727
RAC: 0
United States
Message 1611493 - Posted: 10 Dec 2014, 1:58:42 UTC

It has nothing to work on; it should be getting more work units to keep up the minimum two days that I set in the preferences.
ID: 1611493 · 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 1611515 - Posted: 10 Dec 2014, 2:48:28 UTC - in response to Message 1611493.  

I see lots of tasks in progress from Rosetta, Einstein, and ATLAS. If those projects have a higher debt, they will be what gets the work fetch. The work fetch you set is global, not per project.
ID: 1611515 · Report as offensive
Erik Baird

Send message
Joined: 3 Jun 99
Posts: 5
Credit: 8,825,727
RAC: 0
United States
Message 1611569 - Posted: 10 Dec 2014, 5:43:54 UTC

Dunno what the debt is to which you're referring. My brief scan of the documentation seems to have it as an older term that was replaced by scheduling priority. The http://boinc.berkeley.edu/wiki/Preferences page claims that:

Resource share
If projects contend for resources, the amount allocated to a project is proportional to this number. The default is 100. Note: this is not a percentage. If a computer is attached to 2 projects, each with resource share 100, each project will get half the resources. If a project is given a resource share of 0 it will not receive any resources unless other projects are unable to provide tasks.

The lack of specificity on what in particular is the resource being shared leads me to think it is most likely processor time since each project has wildly different storage requirements. Therefore, if I set each project to have an equal share of work/ processor time, and that's what the (limited) documentation claims it does, then that is what I expect. If the documentation writers didn't intend that, then they need to find someone who actually understands English to write for them. If "not highest priority project" doesn't mean that, then that needs to be rewritten as well to cover which ever nuance they think they mean.

Anyways, I found a workaround. I suspended the other projects and told SETI to update; it happily downloaded a bunch of work units.
ID: 1611569 · 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 1611723 - Posted: 10 Dec 2014, 12:39:08 UTC - in response to Message 1611569.  

I understand your confusion and why you placed your expectation in such a way, however, understand that the documentation was written with brevity and simplicity in mind; it wasn't meant as an engineer's schematic.

Project debt is still used in work fetch. The new term might be called "scheduling priority", but the premise is the same.

Essentially, project debt allows the BOINC client to allow for the unreliability of science project's servers and infrastructure. If BOINC contacts a project like SETI for work and either the servers are down or the feeder has no workunits at the time of request, the BOINC client on your computer will keep downloading work from a different project to keep your system busy - and this will build up debt, as in order to honor resource shares as set by the user, BOINC is now giving more resources to another project because one was down.

In order to balance this out, BOINC tracks debt and builds it into work fetches and takes it into consideration. That is why you'll get a message stating "Not getting new work - don't need" (or whatever it is).

If you simply wait it out, BOINC will eventually pay back that debt once the problematic projects comes back online and is able to fulfill all work requests. Micromanagement of the BOINC client, such as manually suspending other projects (thus forcing BOINC to temporarily ignore debt), will only make the problem worse, since future work requests will try to re-balance the debt once you un-suspend those projects.
ID: 1611723 · Report as offensive
Profile Jord
Volunteer tester
Avatar

Send message
Joined: 9 Jun 99
Posts: 15184
Credit: 4,362,181
RAC: 3
Netherlands
Message 1611816 - Posted: 10 Dec 2014, 18:34:10 UTC - in response to Message 1611569.  

If the documentation writers didn't intend that, then they need to find someone who actually understands English to write for them. If "not highest priority project" doesn't mean that, then that needs to be rewritten as well to cover which ever nuance they think they mean.

Since it's a Wikipedia page, you can always step up and say you want to come write for it. There are a lot of pages in the BOINC Wiki that are out of date or in need of a touch up.

If you feel you're up to the job, contact dr. Anderson, whose email address can be found through the personnel page (in the other Wiki).
ID: 1611816 · Report as offensive
Erik Baird

Send message
Joined: 3 Jun 99
Posts: 5
Credit: 8,825,727
RAC: 0
United States
Message 1612045 - Posted: 11 Dec 2014, 3:36:00 UTC

OzzFan, thanks for the expanded description. I still think it's screwy behavior, but it would be nice if they actually explained it in detail in the user documentation. I'm sure it's in the technical descriptions somewhere, even if I don't particularly care to wade through that set. I can also appreciate the virtues of brevity in documentation; I've read plenty of stuff that packed a paragraph's worth of information into ten pages.

As far as volunteering to write or edit, I'll consider it. I'm not a technical writer, but I do spend a lot of time writing as part of my tech support job.
ID: 1612045 · Report as offensive
Profile Jord
Volunteer tester
Avatar

Send message
Joined: 9 Jun 99
Posts: 15184
Credit: 4,362,181
RAC: 3
Netherlands
Message 1612090 - Posted: 11 Dec 2014, 6:02:21 UTC - in response to Message 1611569.  

Resource share
If projects contend for resources, the amount allocated to a project is proportional to this number. The default is 100. Note: this is not a percentage. If a computer is attached to 2 projects, each with resource share 100, each project will get half the resources. If a project is given a resource share of 0 it will not receive any resources unless other projects are unable to provide tasks.

Yes, it's what I thought. Looking at the history of the page and that text, this is the original text that came copied over from the Trac Wiki. It's the text from 2008 and it works this way in the then used BOINC range, being BOINC 6.0 - 6.12, it worked with real debt -- long term debt and short term debt to decide which project was eligible to fetch work and how much.

BOINC 7.0 has had a whole new -- from the ground up rewritten -- scheduler and way of recording debt (called REC). If you want to sit through an evening of pondering, do read http://boinc.berkeley.edu/trac/wiki/ClientSchedOctTen which explains all about it (of sorts).

In short, where it was that BOINC 6 eventually managed to cache work from various projects and run it at the same time on your hardware, e.g. 4 projects, 4 different tasks on a 4 core processor; with BOINC 7.0 that's no longer the case. Although projects can cache work depending on if their priority is high enough, and there is work to be had from them, BOINC 7 will no longer run various projects at the same time. Well, it will if you micromanage again. But else, it'll be 4 tasks of project A, followed by 4 tasks of project B, followed by 4 tasks of project C, and that then depending on their priority.
ID: 1612090 · Report as offensive

Questions and Answers : Preferences : CPU: not highest priority project


 
©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.