Message boards :
Number crunching :
Why Isn't Cache Sise Linked to Resource Share?
Message board moderation
Author | Message |
---|---|
MikeSW17 Send message Joined: 3 Apr 99 Posts: 1603 Credit: 2,700,523 RAC: 0 |
Why Isn't Cache Sise linked to Resource Share? If I have 'Connect to network about every n days' (Cache Size) set to 3 days. And I have 3 projects A, B and C with respective Resource shares of 50, 30 and 20. Currently, as I connect to each project, each downloads enough work units for about 3 days. After all three are connected I now have 9 days work to do. I only wanted 3! Surely this is daft? Alternatively projects could get "cache * resouce share %", then: Project A would request 3 days * 50% = 1.5 days work, Project B would request 3 days * 30% = 0.9 days work, Project C would request 3 days * 20% = 0.6 days work, IMO this solves everything, I have 3 days work to cover outages, and it matches my resource share. Deadlines are unlikely to be missed. Seems the scheduler is battling to correct a problem that should not exist in the first place. So what am I missing, it seems so damn obvious? |
Ingleside Send message Joined: 4 Feb 03 Posts: 1546 Credit: 15,832,022 RAC: 13 |
<blockquote>Why Isn't Cache Sise linked to Resource Share? If I have 'Connect to network about every n days' (Cache Size) set to 3 days. And I have 3 projects A, B and C with respective Resource shares of 50, 30 and 20. Currently, as I connect to each project, each downloads enough work units for about 3 days. After all three are connected I now have 9 days work to do. I only wanted 3! </blockquote> The scheduling-server is already using your resource-shares when deciding on how much work to give you, so it can look like you'll get roughly 3 days from each project but the total expected cpu-time in all projects is 3 days not 9. The last wu given is so you'll fill your request, except if you get into problems with deadline. Examle: Project A has expected cpu-time 3 hours, project B 8 hours, project C 1 hour. Cache-setting 3 days = 72 hours. Project A will give... 3h/0.5 = 6h; 72h/6h = 12. So, you'll get 12 or 13 wu in project A. Project B will give... 8h/0.3 = 26.666h; 72h/26.666h = 2.7; So, you'll get 3 wu. Project C will give... 1h/0.2 = 5h; 72h/5h= 14.4; So, you'll get 15 wu. A: 13wu; 13*3h = 39h cpu-time B: 3wu; 3*8h = 24h cpu-time C: 15wu; 15*1h = 15h cpu-time A + B + C = 39h + 24h + 15h = 78h cpu-time. This is also run-time. So you'll get more than 72h, but only 6 hours more. Of course, if one of the projects is CPDN, you'll have much more work than 3 days, but this is a slightly different matter. ;) Note, if you've already got 3 days in project C, and when attachs to project B and afterwards project A you'll have much too much work, but later on you'll get roughly what you're asking for. Also note, if you've got many projects with example 1% resource-share, if you're not using v4.35 or later you'll get one wu from each project and will have no hope to return everything by deadline. BTW, the calculations is done on the scheduling-server, so while it can look like the client is asking for 3 days of work from each project, it will not get so much work. ;) |
©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.