Resource Share

From Unofficial BOINC Wiki

Jump to: navigation, search

[edit] Summary

The Resource Share is an allocation by you of the processing power of your computer to be applied towards the BOINC Powered Project. This setting is not a percentage. If you are only doing work for one Project it does not matter what the value is in this setting. When you join your second and subsequent Projects this value and the value in the other Project(s) are totaled up and then used to create a proportion that indicates the amount of time to be allocated to each of those Projects.

In the BOINC Client Software, the amount of time that the Participant wishes to allocate to a specific Project. In BOINC the Participant has an available resource in CPU Time and can allocate part of this time to a specific Project and another part to a different Project. The allocation, or Resource Shares, will always add up to 100% of the available resource, which in this case is the "Idle" CPU Time.

  • We must stress at this point that the Resource Share numbers are not a percentage. The numbers used for each Project make up a total, and the individual project's Resource Share number reflects that project's smaller part of the total Resource Share.

The addition of more Projects and / or computers simply changes the individual project's Resource Share at the local level.

Resource Share is allocated on a per Project per computer basis. So any particular computer will not be starved of work, it just may be unbalancing the overall average of work being done. Remember that the computer only knows about the Resource Shares of the Projects that it is attached to.

[edit] Examples

  1. For example, if you were working on 2 Projects, and had set the Resource Shares to 50 (Project "A") and 100 (Project "B"), the long term average work on the two Projects should be 1/3 and 2/3. Therefore if the Recent CPU time spent on work for project "A" was 30 and for Project "B" was 90, the first Project that the client would request work from is "A", as it has less than 1/3 of the recent CPU usage.
  2. Assume Projects A, B, and C have Resource Shares of 100 each.
    1. If computer 1 is attached to Projects A, B, and C, computer 1 will divide its time 1/3 to each project.
    2. If computer 2 is attached to Projects A and B, computer 2 will divide its time 1/2 to each project.
    3. Things can be just as convoluted if computer 3 is attached to A, B, and C, but does not have enough RAM for Project C, it will only get work from Projects A and B, and therefore divide it's time 1/2 to each.
      • Even if a computer cannot get work from the preferred Project, it will get work from someplace eventually. If you are attached to enough Projects and have a reliable network connection, you don't need a Work Buffer.
  3. If we join 2 Projects and have both Resource Share settings at 100, then:
  4. If we join 3 Projects and have all Resource Share settings at 100, then:
  5. If we join 4 Projects and have all Resource Share settings at 100, then:
  6. If we join 4 projects and have Project "A" at 400, Project "B" at 300, Project "C" at 200, and Project "D" at 100:

Examples courtesy of: John McLeod VII, Paul D. Buck and JKeck.

[edit] Also See

Personal tools