Joined: 21 Sep 17
recently I upgraded to the new BOINC client and decided to also use the virtual box installation (Host-System is a Win7 x64). (Now running BOINC Manager 7.8.2 with vbox 5.1.26)
Computer is an i5-2400 with 4GB RAM and Win7 x64.
Projects involed are LHC // ATLAS and probably other tasks requiring/running in a Virtual Box.
BOINC is set to run only when system is idle and recently I am running in to issues that waking the system up again is often hardly possible.
Now I find that the created virtual boxes (VB) always start with 3500MB of memory setting. This is a problem because the Host only has 4GB total RAM and thus when I try to re-awaken the system it takes like 30min before it actually gets "usable" again as it seems the VB is eating up all the memory and it takes that long to "clean" it up.
When I manage to set the running VB to 2048MB memory allocation then wait until the system goes into BOINC-state and try to re-awaken it again, it works fast (within a few seconds).
Now the problem is - that whenever a new task is applied it creates a new VB and it has AGAIN the default setting of 3500 MB RAM.
I already edited the projects xml e.g. \BOINC_Data\projects\lhcathome.cern.ch_lhcathome\ATLAS_2017_01_09.xml
so it reads 2048 MB
But still whenever e.g. an ATLAS task is startet the VB starts with 3500MB allocation...
So my question is, how and where can I change the default value with which VBs for the calculation task are created. And how can I make sure the setting is not overridden somehow ?
I hope somebody can help me with this issue, otherwise I will have to go back to the defaul client with no VB.
I have also created a topic on that behalf on the LHC-Section:
From there I learned that it may be that the BOINC Manager is not aware that the VBox it creates for a certain project is breaking the system. Or that I cannot predetermine the size of an allowed VirtualBox upon creation. It seems it always reset to the 3500MB as a "minimum" for some reason.
For the time now I have disabled LHC and Atlas tasks - since if the numbers are correct they would require >2GB RAM in the virtual box. And since the BOINC Manager seems to be unable to properly limit the VBox RAM size (and thus would automatically skip task which are too large to fit in the box), as otherwiese it happens that the system is nearly unable to resume to a normal operating state after mouse movement within a few seconds.
Joined: 21 Sep 17
It seems that there is a settings problem with virtual boxes considering the memory limits somehow:
"Boinc does not limit an application's memory to anything, it just adds up the memory reports of different applications and compares that to the value of memory limit set in your preferences. When a new task is about to start it decides if that application still fits in the memory. I think that Boinc doesn't even check the free memory but only relies to the settings i.e. if Boinc is allowed to use 70% of memory it will try to use it whether any memory is actually free or not. And to make things worse the used memory that an application reports to Boinc isn't what the application is actually using, only an estimate made by the server/programmer/scientist who has submitted the application/task.
If I am wrong about what I wrote above, please somebody correct me."
That means if I allow a global setting which is larger than what the virtual box creates - it will always create the virtual box. But due to some excess of memory usage the client still kicks off more tasks which causes the system to get very unresponsive when trying to awake it.
Remember my System has 4GB total RAM with BOINC set to utilize up to 90% when system is idle...90% of 4000MB would be ~3600MB which is larger then the virtual box seemingly needs (3500 MB)
BUT still strange that even when I edit the projects .xml to a lower memory value for the vbox (e.g. 2048MB) then the actually created vboxes still have the default 3500MB size ??
Copyright © 2017 University of California. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.