Message boards : Number crunching : boinc manager does not 'realise' that computer is busy
Author | Message |
---|---|
GarageFarm.net Send message Joined: 21 Apr 10 Posts: 19 Credit: 17,915,923 RAC: 0 |
I have bunch of computers that I want to do something useful when not busy with my computational tasks, but quite often my program have to fight for processor power no matted what I will put in CPU usage setting (3-6% or more) this is more than annoying, cos now I need to log in to each PC remotely and shut down BOINC before I will start my work. :( 6.10.43 |
dcdc Send message Joined: 3 Nov 05 Posts: 1832 Credit: 119,891,919 RAC: 1,902 |
put 100% and uncheck 'do work while computer is in use'. |
Murasaki Send message Joined: 20 Apr 06 Posts: 303 Credit: 511,418 RAC: 0 |
Have you tried reducing the amount of memory you allow BOINC to use? If your memory is flooded with BOINC calculations it will take time to clear and switch to the new application no matter how much or little time you allow the CPU. |
Mod.Sense Volunteer moderator Send message Joined: 22 Aug 06 Posts: 4018 Credit: 0 RAC: 0 |
Wow! RAC of 15,000! Whatever you are doing, it is working! Looks like many of your machines have 12GB of memory and 16 CPUs! Interesting that the machine with 18GB has twice the RAC of the others. Does it have the same BOINC configuration and general runtime patterns as the others? No doubt you have paid to have 60 CPUs with some other purposes in mind. What you describe does tend to sound like a memory contention issue. You aren't actually waiting for BOINC to stop running, you are waiting to swap out enough memory to run your desired application. BOINC has a number of settings (too many?) that can help. It really depends upon your usage of the machines though. How frequently you will step in to use it, how many CPUs you will require while using it, memory requirements of the other applications... the other things that will weigh on any recommendations are whether you value BOINC credits over responsiveness, or the other way around. If you limit how much memory BOINC is allowed to use, this may bring you better responsiveness, but will tend to idle some CPUs when approaching the limit. You could also force idle CPUs by setting the CPU% or the % of the number of CPUs to use, but could still potentially run in to memory contention even with less then 1 task per CPU running. You can also schedule hours of the day when BOINC is allowed to run. If your machines are basically committed to other tasks during the business day, this would be the approach I would suggest. Another idea would be to allocate some resource share to a project that typically has tasks with lower memory requirements. This would tend to keep CPUs 100% busy, but use less memory then your apparent 100% Rosetta state now. If you allocate a 25% resource share to a project that only needs a few MB to run that could essentially free up about a GB to help other applications run. Then you could establish a lower memory limit for BOINC and still avoid idle CPUs. If you could share more about how you use these machines, perhaps more specific suggestions could be made. Rosetta Moderator: Mod.Sense |
GarageFarm.net Send message Joined: 21 Apr 10 Posts: 19 Credit: 17,915,923 RAC: 0 |
Wow! RAC of 15,000! Whatever you are doing, it is working! Thx guys for all answers. First a bit of background, I am in the process of setting up commercial renderfarm. At the moment its just my 3D program (I am using it for no more than 2hrs a day) and Rosetta. The fastest computer (the one that you mentioned (with double of RAC)) have 30% faster processors, it is the only one with graphic card (ATI 4870) and it is on the project for about month now, when others (render nodes) are a bit slower, does not have graphic cards (I do not count 8MB Maxtor on the board) and all of them are for about one week on the 'system', so RAC is not there yet. :) I have tried to 1st solution (100% and uncheck work when computer in use), but it is not working any better. I mean some of the computers giving up computational tasks but some just keep on working, so my renderer its getting only 50%. What might be important, I have not worked out how to get my program to run normal priority, it is low too (as BOINC is), but well... I am not sure if that is be a problem. I am quite sure that is not low issue, I am attaching image with memory use when doing Rosetta. At all tests that I did so far my progs is using no more than 1GB of memory, it is actually good way to monitor if Rosetta is shutting itself down, if memory use goes down that means I have access to all 16 processors* at full speed. If it is memory than too bad cos I am not so interested in doing another projects, I am fine to pay for electricity (it is a lot) if I am helping in something valuable as disease research, looking for galaxies is not worth £150+ a month in bills. :) Generally how I am using it now is, every so often I am sending computational task over network to render slave application running on each node, job gets pick up and after 1-120 minutes is finished and send back. I am limiting time so the thing is if my program is fighting with Rosetta for CPU power, I am sacrificing quality. :( Well I want to help like a lot, but my job have priority and if I will not set it up I will have do much less Rosetta (I will stick to manual set-up, just leave it on whenever I am not working. * - It is actually 2 processors with 8 HT cores in total, so not 16 real processors. :) |
mikey Send message Joined: 5 Jan 06 Posts: 1896 Credit: 9,387,844 RAC: 9,807 |
I have tried to 1st solution (100% and uncheck work when computer in use), but it is not working any better. I mean some of the computers giving up computational tasks but some just keep on working, so my renderer its getting only 50%. This does not work like you think it does, what it does is run Boinc at 100% but only for the slice of time you tell it too. I know that is not what most people think but if you put 100% on that line, then the Boinc runs the pc for 100% 100% of the time. But if you put 50% on the line then Boinc runs the pc at 100% for only 50% of the time. It is better to leave it set to 100% and change the times that Boinc is allowed to run, say not between 8am and 5pm. What might be important, I have not worked out how to get my program to run normal priority, it is low too (as BOINC is), but well... I am not sure if that is be a problem. Boinc always runs at the lowest priority and even if you change it, thru a right click in the Task Manager, it returns to that lowest priority when it starts a new unit. Actually there are times it will run at a higher priority but that is when you are running into deadline issues. BUT maybe you could do that with your program, raising its priority just above Boincs. |
GarageFarm.net Send message Joined: 21 Apr 10 Posts: 19 Credit: 17,915,923 RAC: 0 |
OOK, my program is not rendering in low priority any more but rosetta@home is not giving up easily... still fighting for processor power. ;( Is there a way to switch it on and aff from command line? I can do it remotely on all computers at once, that might work ok for now. |
Chilean Send message Joined: 16 Oct 05 Posts: 711 Credit: 26,694,507 RAC: 0 |
That is one impresive RAC. But anyways, does rosetta "really" fight for CPU power, or is it that your desired application doesnt take full advanatge of the power avalible? For example, whenever I play non-cpu intesnive games, rosetta takes about 50% of the cpu, w/o affecting game performance. If I do play a cpu intensive game, then the games takes up about 90-100% of the cpu, and roseeta takes w/e theres left. Correct me if Im wrong... but if your rendering app is on normal priority then rosetta shouldnt affect the performance of it (unless you have a memory issue, in which apparently you dont). |
GarageFarm.net Send message Joined: 21 Apr 10 Posts: 19 Credit: 17,915,923 RAC: 0 |
For example, whenever I play non-cpu intesnive games, rosetta takes about 50% of the cpu, w/o affecting game performance. If I do play a cpu intensive game, then the games takes up about 90-100% of the cpu, and roseeta takes w/e theres left. ...well looks like it does, I have 50%/50% but I will investigate further tomorrow :) |
Chilean Send message Joined: 16 Oct 05 Posts: 711 Credit: 26,694,507 RAC: 0 |
For example, whenever I play non-cpu intesnive games, rosetta takes about 50% of the cpu, w/o affecting game performance. If I do play a cpu intensive game, then the games takes up about 90-100% of the cpu, and roseeta takes w/e theres left. A good way to find out, is to monitor the CPU usage while you are running your desired app, WITHOUT BOINC running and see how much CPU it uses at any given time, then compare that to when BOINC and your desired app are running. I mean it doesnt make sense that a low priority thread takes up CPU from a normal priority thread :S Edit: BTW, nice graphics you have on your website. Is this hobby-based? It remembers me when I first learned how to use photoshop properly... lol just check out my signature... what didnt I make in photoshop haha. |
P . P . L . Send message Joined: 20 Aug 06 Posts: 581 Credit: 4,865,274 RAC: 0 |
Hi GarageFarm.net Have a look at this page, it might be what you looking for try it on one rig first to see if it does work the way you want. For starters you will have to work out how much time it takes each rig to do the rendering work and adjust it after that. Edit // about half way down the page under options. http://boinc.berkeley.edu/wiki/Client_configuration <exclusive_app> BOINC will suspend computing whenever the executable is running (e.g., a game). Multiple applications can be specified. Good luck. |
GarageFarm.net Send message Joined: 21 Apr 10 Posts: 19 Credit: 17,915,923 RAC: 0 |
thx guys, looks like ill be able to sort it out, my computers will be busy rendering whole day today but I will read the guide. The graphics design is my main job, the website is very outdated, the latest pictures there are from 2006, most is much older. It should get updated soon. Cheers Tomek |
mikey Send message Joined: 5 Jan 06 Posts: 1896 Credit: 9,387,844 RAC: 9,807 |
OOK, my program is not rendering in low priority any more but rosetta@home is not giving up easily... still fighting for processor power. ;( If you do a right click on the Boinc icon in the taskbar you will see a snooze button, click on it and Boinc will snooze/stop crunching for 2 hours. |
GarageFarm.net Send message Joined: 21 Apr 10 Posts: 19 Credit: 17,915,923 RAC: 0 |
Hi, it is me again. :) What actually means in preferences: 'when computer is in use'? Does it mean if keyboard and mouse are active or if processor is busy doing something? Cheers Tomek |
Greg_BE Send message Joined: 30 May 06 Posts: 5691 Credit: 5,859,226 RAC: 0 |
Hi, it is me again. :) Look at the next line down "'In use' means mouse/keyboard activity in last" (set value here) |
GarageFarm.net Send message Joined: 21 Apr 10 Posts: 19 Credit: 17,915,923 RAC: 0 |
...so, to put it simply there is no way to tell the boinc to give up when some CPU hungry application starts? :( |
Greg_BE Send message Joined: 30 May 06 Posts: 5691 Credit: 5,859,226 RAC: 0 |
...so, to put it simply there is no way to tell the boinc to give up when some CPU hungry application starts? :( What you can try is if you have fixed hours you run your rendering, then go into the computing preferences part of the user page and tell boinc to run only between x hr and y hr. Or you can also specify the number of cores it can use overall per machine. See the line that says On multiprocessors, use at most (x) processors. Since you are running quads, maybe you can limit Boinc to 2 cores and continue to do your rendering. You can set these options on 1 or all your machines. I also just saw this line: Use at most Enforced by version 5.6+ 100 percent of CPU time. That is my setting but you could lower yours. These are permanent options until you reset them to something else. You can do some of these settings also in Boinc Manager under the Advanced menu then Preferences. I see all this talk about priority levels, but I am not versed in how to make that happen. So all I can suggest is you try altering the above options until you get something you feel suits your needs. Boinc manager will adjust the number of tasks you receive and run according to these preferences. |
Mod.Sense Volunteer moderator Send message Joined: 22 Aug 06 Posts: 4018 Credit: 0 RAC: 0 |
Newer BOINC Manager versions allow you to name specific programs that BOINC should suspend operations when any of them are running. There is also a setting where you can set a % of CPU and if BOINC detects more then that much occurring in non-BOINC applications, then it will suspend until CPU usage is back below the threshold. You could also schedule hours of day. And yes, BOINC calculations are always done at low priority. So long as the application that kicks in runs at a higher priority that should help avoid conflict as well (but can easily lead to memory contention). Rosetta Moderator: Mod.Sense |
Chilean Send message Joined: 16 Oct 05 Posts: 711 Credit: 26,694,507 RAC: 0 |
...so, to put it simply there is no way to tell the boinc to give up when some CPU hungry application starts? :( I just remembered a feature in the newest BOINC that suspends any BOINC project activity when the CPU usage is above an X% (set by you of course) used by other apps. I found it really annoying as the default is 25% (meaning if your CPU is being used by more than 25% BOINC snoozes). But this could work like a charm in your case. |
GarageFarm.net Send message Joined: 21 Apr 10 Posts: 19 Credit: 17,915,923 RAC: 0 |
6.10.56 tada!!!!!!!!!!!!! It is working, I am updating clients on all machines. Thank you guys very much! |
Message boards :
Number crunching :
boinc manager does not 'realise' that computer is busy
©2025 University of Washington
https://www.bakerlab.org