Questions and Answers : Windows : Rosetta remaining in memory
Author | Message |
---|---|
Kage_ Send message Joined: 1 Dec 05 Posts: 2 Credit: 197,551 RAC: 0 |
For some reason I am unable to get Rosetta to unload from memory when it's not in use. I have the latest 5.10.45 version installed and the pref to to remain in memory is set to NO. I have servers that run Boinc from 5p to 8a and when they stop processing Rosetta needs to unload to free up the memory. I just checked one of my servers and the four instances of Rosetta combined were taking up over a gig of memory. This has been an ongoing problem with Rosetta and I would like to keep running it, but if I can't figure out how to get it to unload when idle I'm going to have to drop this project. Any suggestions? |
Mod.Sense Volunteer moderator Send message Joined: 22 Aug 06 Posts: 4018 Credit: 0 RAC: 0 |
I believe the preference is about remaining in memory when suspended. Are the tasks properly suspending to honor your time of day preference?? When you want to run less then full time CPU, you need to select "run based on preferences" from the activities pulldown menu in the advanced view. If it is any consolation, so long as the tasks are not running, they really only take space in your swap file (so "virtual") not "actual" memory. And allowing the tasks to stick around in virtual memory will preserve all of the work that has not been checkpointed yet, and shouldn't impact the rest of using that machine... so might be a good idea anyway. Rosetta Moderator: Mod.Sense |
Kage_ Send message Joined: 1 Dec 05 Posts: 2 Credit: 197,551 RAC: 0 |
I believe the preference is about remaining in memory when suspended. Are the tasks properly suspending to honor your time of day preference?? All of my clients are set to run based on prefs. It may only reside in the swap file, but it still shows that it's consuming the memory in the task manager. When I stop the boinc process it shuts down the Rosetta processes and releases the memory. |
Mod.Sense Volunteer moderator Send message Joined: 22 Aug 06 Posts: 4018 Credit: 0 RAC: 0 |
The task manager doesn't differentiate between memory consumed in the swap file and actual physical memory. ...or is that what the "paged pool" number is?? Anyway, if the tasks are properly suspending and no longer consuming CPU, if they still show as consuming actual memory, it would probably just mean that nothing else has run on that machine that forced the pages out to the swap file. In other words, the machine hasn't had any other use for that memory. Rosetta isn't actually in control of what is in memory and what is not. BOINC and Windows are. Do you see the same result on the latest available BOINC version? Rosetta Moderator: Mod.Sense |
PaperDragon Send message Joined: 22 Mar 06 Posts: 17 Credit: 2,461,169 RAC: 0 |
Have you checked to make sure 'Local preferences' are not active for the servers? In advanced view, select 'Advanced' on the menu bar. The select 'Preferences...' If you look at the 'disk and memory usage' tab, the check box at the bottom of the window should be unchecked. Pressing the 'Clear' button at the top of the preferences will deleted the local preferences. |
Bradley Send message Joined: 8 Oct 06 Posts: 2 Credit: 201,762 RAC: 0 |
I am having a similar problem as Kage with Rosetta on my Windows XP laptop; Rosetta's "memory consumption" often approaches 1/2 GB when the process is suspended due to activity. The process seems to be properly suspended, in that it does not use the CPU during these times, but the memory consumption remains. Whether this value refers to my "actual" memory or swap space, I can't confirm; however, there is a significant decrease in my computer's performance due to this memory use. Killing Rosetta's process generally speeds up my performance dramatically and stops the Window's "Virtual Memory Low" messages I get otherwise (which may suggest that Rosetta actually is in virtual memory..). I have confirmed that my preferences are to suspend work while the computer is in use and to not leave applications in memory while suspended. BOINC is set to "Run based on preferences." PaperDragon, I can't seem to find those advanced local preferences. The only options I can find in the BOINC client itself seem to be network settings. |
Mod.Sense Volunteer moderator Send message Joined: 22 Aug 06 Posts: 4018 Credit: 0 RAC: 0 |
Bradley, your last completed Windows task shows BOINC version 5.4.11... this is quite old. In fact I believe it is prior to the ability to set some of those preferences from within the GUI. So that is why you aren't seeing them. Unless you've edited XML files directly, your machine should be using the General Preferences for the venue of that host. As long as your available disk space allows it, you might consider increasing the size of your page file to avoid the low virtual storage warnings, until the root cause can be tracked down. You should also download the current BOINC version and install it to see if they have corrected the problem in the current BOINC client. Rosetta Moderator: Mod.Sense |
Pepo Send message Joined: 28 Sep 05 Posts: 115 Credit: 101,358 RAC: 0 |
Back to the topic: Kage_ wrote: For some reason I am unable to get Rosetta to unload from memory when it's not in use. I have the latest 5.10.45 version installed and the pref to to remain in memory is set to NO. I have servers that run Boinc from 5p to 8a and when they stop processing Rosetta needs to unload to free up the memory. I just checked one of my servers and the four instances of Rosetta combined were taking up over a gig of memory. Sorry to say so, but actually "everything's all right", or, "as intended". And in your situation I've no idea how to solve it with recent stock client (except installing an older one). And yes, some rosetta WUs consume fair amount of memory. Starting with Boinc 5.8.2 more than a year ago, a change was introduced into the code to better support applications, which do not checkpoint. Usually if the "keep in memory" was off, any application being preempted or suspended for any reason was unloaded from memory, including these which do not checkpoint. If some application did not checkpoint at all or would be able to checkpoint much later, have han no chance to finish. Thus upon being preempted, such application without any recent checkpoint was implicitely being kept in memory. I thing this is also the case of your Rosettas. At the morning 8am, Boinc should suspend all applications, but the Rosettas did possibly checkpoint that far in the past (understand: "not recently") that the client decides to keep them in memory in order not to loose the crunched data. I do not know how to force the client throwing such aps out anyway. I hope Boinc will soon support something like "suspend each running app after the next checkpoint and then stay idle". Peter |
Bradley Send message Joined: 8 Oct 06 Posts: 2 Credit: 201,762 RAC: 0 |
My continued experiences with Rosetta/BOINC seem to support Pepo's conclusion: despite upgrading my BOINC client (my previous version was embarrassingly old), I continue to have memory issues akin to what has been discussed in this thread. These issues occur on some activity suspensions but not others. Perhaps whether or not my WU's have checkpointed "recently" determine whether or not Rosetta is kept in memory. |
Pepo Send message Joined: 28 Sep 05 Posts: 115 Credit: 101,358 RAC: 0 |
...I continue to have memory issues akin to what has been discussed in this thread. These issues occur on some activity suspensions but not others. Perhaps whether or not my WU's have checkpointed "recently" determine whether or not Rosetta is kept in memory. If I understand the code correctly, then checkpointed "recently" means something like "during the last 10 wall clock seconds". But it will be for sure kept in memory if it did not yet checkpoint at all. For a prof, you could add <checkpoint_debug>1</checkpoint_debug> flag to your BOINC/cc_config.xml file, or if it does not exist yet, create it with this content: <cc_config> To get information about the tasks being preempted and kept in memory, you could add the <cpu_sched>1</cpu_sched> flag there, to be able to compare the checkpoint and suspend times. Peter |
Questions and Answers :
Windows :
Rosetta remaining in memory
©2024 University of Washington
https://www.bakerlab.org