climateprediction.net home page
Virtualisation (running CPDN inside virtual PCs)

Virtualisation (running CPDN inside virtual PCs)

Message boards : Number crunching : Virtualisation (running CPDN inside virtual PCs)
Message board moderation

To post messages, you must log in.

AuthorMessage
Jim1348

Send message
Joined: 15 Jan 06
Posts: 637
Credit: 26,751,529
RAC: 653
Message 47005 - Posted: 11 Sep 2013, 21:35:41 UTC
Last modified: 11 Sep 2013, 21:36:37 UTC

The problem for me is BOINC's miserable Recent Estimated Credit (REC) system, which won't run CPDN until BOINC wants to run it, not when I want to run it. I have explained the problem here in one typical scenario, but there are undoubtedly others.
http://boinc.berkeley.edu/dev/forum_thread.php?id=8511&postid=49943#49943

I have no problem in supplying one core of the i5-3550 to CPDN, but I would really have to devote all the available cores to CPDN to get it running on a predictable basis.
ID: 47005 · Report as offensive     Reply Quote
DadX

Send message
Joined: 30 Aug 06
Posts: 27
Credit: 1,481,548
RAC: 768
Message 47006 - Posted: 12 Sep 2013, 1:05:36 UTC - in response to Message 47005.  
Last modified: 12 Sep 2013, 1:05:57 UTC

I've solved this problem by running BOINC in a Ubuntu VM (Oracle Virtual Box). The VM gets one processor, the CPDM task get 98% of that processor. Sure there's a performance hit but all my boxes are value machines and some quite old, so I'm not looking at big credit numbers from CPDN at the best of times. Actually I just created this setup two weeks ago so I'm only giving CPDM 20% of the processor until the CPDM task on the host OS completes.
ID: 47006 · Report as offensive     Reply Quote
Jim1348

Send message
Joined: 15 Jan 06
Posts: 637
Credit: 26,751,529
RAC: 653
Message 47007 - Posted: 12 Sep 2013, 2:17:08 UTC - in response to Message 47006.  

A very nice idea, but somewhat beyond my interest in getting BOINC to behave. I just solve it by running only one type of CPU project at a time, though I also run GPU projects. Attempts to go beyond that simple scenario always cause me trouble.
ID: 47007 · Report as offensive     Reply Quote
Profile tullio

Send message
Joined: 6 Aug 04
Posts: 264
Credit: 965,476
RAC: 0
Message 47008 - Posted: 12 Sep 2013, 4:41:56 UTC
Last modified: 12 Sep 2013, 4:42:37 UTC

I am running Test4Theory@home on a Virtual Machine with Virtual Box 4.2.18 on my 2 Linux boxes, together with other 5 BOINC projects. I am also running a Solaris Virtual Machine but there are few BOINC clients and even scarcer BOINC apps for Solaris. It is a pity, since Solaris is now free.
Tullio
ID: 47008 · Report as offensive     Reply Quote
Profile Dave Jackson
Volunteer moderator

Send message
Joined: 15 May 09
Posts: 4314
Credit: 16,378,503
RAC: 3,632
Message 47009 - Posted: 12 Sep 2013, 5:45:47 UTC

I know this is a bit off topic but what is the overhead of virtualisation? Do the overheads in terms of memory make it a waste of time for those of us with relatively low end boxes?
ID: 47009 · Report as offensive     Reply Quote
Eirik Redd

Send message
Joined: 31 Aug 04
Posts: 391
Credit: 219,888,554
RAC: 1,481,373
Message 47010 - Posted: 12 Sep 2013, 10:17:24 UTC - in response to Message 47009.  
Last modified: 12 Sep 2013, 10:26:03 UTC

I know this is a bit off topic but what is the overhead of virtualisation? Do the overheads in terms of memory make it a waste of time for those of us with relatively low end boxes?


I've only used virtualbox on 4 core + machines. the overhead is maybe 2-5% of the total cpu of the cores. You do need enough memory for each virtual machine - but CPDN needs only about 0.6 GiB or less memory per model - the virtual disks seem slow but that doesn't slow CPDN a bit. Good for testing new OS or rerunning models with strange failures. DO disable network when doing reruns or odd tests -- the main site doesn't need all that weird stuff.

Now - my newest I7-37?? Ivy something with 4 cores and hyperthreads is running on a Ubuntu host OS and been testing Windows 8 in the VM for six weeks or more -- testing speed vs load - hyperthreads get diminishing returns - but basically VM runs great. Faster than on the Ubu-box bare (probably because of the faster mathlibs on Win8 vs eglibc on Ubu )

WARNING -- if the host machine crashes -- CPDN on your virtuals will likely be unrecoverable -- use the vbox snapshot if you have enough virtual disk - or do backups within the VM -- with all the cautions about "suspend all tasks first, suspend project -- wait -- exit with stopping tasks" then copy program data BOINC to a shared folder on another machine.

Use the vboxheadless option to isolate failures to the VM.

Hope this helps.

Probably one of us should start a new thread on the virtualization subject.
ID: 47010 · Report as offensive     Reply Quote
Profile MikeMarsUK
Volunteer moderator
Avatar

Send message
Joined: 13 Jan 06
Posts: 1498
Credit: 15,613,038
RAC: 0
Message 47011 - Posted: 12 Sep 2013, 10:32:16 UTC - in response to Message 47010.  
Last modified: 12 Sep 2013, 10:54:44 UTC


Presumably task prioritisation does not work across a VM boundary? (i.e., will CPDN running at idle inside the VM take processor time on the host as if it was running at normal priority?)

Some years ago I was running an Oracle server inside a VM on my home PC. I did find that it would cause temporary network problems when starting up or shutting down the VM (so I had to suspend Boinc briefly each time to avoid no-heartbeat errors).
I'm a volunteer and my views are my own.
News and Announcements and FAQ
ID: 47011 · Report as offensive     Reply Quote
Profile MikeMarsUK
Volunteer moderator
Avatar

Send message
Joined: 13 Jan 06
Posts: 1498
Credit: 15,613,038
RAC: 0
Message 47012 - Posted: 12 Sep 2013, 10:33:36 UTC
Last modified: 12 Sep 2013, 10:42:16 UTC



Probably one of us should start a new thread on the virtualization subject.

(I have created this thread & moved the virtualisation posts)
I'm a volunteer and my views are my own.
News and Announcements and FAQ
ID: 47012 · Report as offensive     Reply Quote
Profile tullio

Send message
Joined: 6 Aug 04
Posts: 264
Credit: 965,476
RAC: 0
Message 47014 - Posted: 12 Sep 2013, 10:49:26 UTC - in response to Message 47009.  
Last modified: 12 Sep 2013, 10:52:16 UTC

My Test4Theory Virtual Machine (BOINC_VM) uses 256 MB RAM and about 2 GB disk out of possible 9. My Solaris Virtual Machine uses 1 GB RAM and 15 GB disk out of possible 64. I feel no slowdown on my CPUs (an Opteron 1210 at 1.8 GHz and a AMD APU E-450 at 1.65 GHz.). I am still using BOINC 6.10,58 on both Linux boxes and have no problem, while 7.0.X clients have some problems with the latest Virtual Box release (4.2.18). I know that dr. Dave Anderson is investigating the possibility of including virtualization in the BOINC client.
Tullio
ID: 47014 · Report as offensive     Reply Quote
Profile MikeMarsUK
Volunteer moderator
Avatar

Send message
Joined: 13 Jan 06
Posts: 1498
Credit: 15,613,038
RAC: 0
Message 47015 - Posted: 12 Sep 2013, 10:59:18 UTC
Last modified: 12 Sep 2013, 10:59:57 UTC


... while 7.0.X clients have some problems with the latest Virtual Box release (4.2.18). ...

Interesting. I have been unable to run test4theory since they changed the VM they are using (something to do with running 32-bit Boinc on a 64-bit PC).
I'm a volunteer and my views are my own.
News and Announcements and FAQ
ID: 47015 · Report as offensive     Reply Quote
Profile MikeMarsUK
Volunteer moderator
Avatar

Send message
Joined: 13 Jan 06
Posts: 1498
Credit: 15,613,038
RAC: 0
Message 47016 - Posted: 12 Sep 2013, 11:11:27 UTC - in response to Message 47007.  



A very nice idea, but somewhat beyond my interest in getting BOINC to behave. I just solve it by running only one type of CPU project at a time, though I also run GPU projects. Attempts to go beyond that simple scenario always cause me trouble.


One thing which helps slightly is to increase the 'switch time' from 60 minutes to something higher. Usually mine is set to 2 hours but I have changed it to 1440 minutes / 24 hours.

But ultimately, if you are running a mix of small CPU jobs and big CPU jobs, the model won't get a solid unbroken run at the CPU.

I'm a volunteer and my views are my own.
News and Announcements and FAQ
ID: 47016 · Report as offensive     Reply Quote
Belfry

Send message
Joined: 19 Apr 08
Posts: 179
Credit: 4,306,992
RAC: 0
Message 47019 - Posted: 12 Sep 2013, 14:42:17 UTC

In my experience running BOINC on both host (Linux with KVM/Virtualbox) and guest (any OS, all CPU's allocated), the hypervisor will give priority to the guest. Can others verify my config and/or test Windows hosts with all CPUs allocated in guests?

On my laptop running 50/50 CPDN/WCG, I was able to download one hadcm3n by pausing WCG and setting processors to 50%. Then after getting the task, setting CPDN to no new tasks. My CPDN scheduling priority swings wildly in the course of a few minutes after updates (i.e. -15.59 to -.90), so BOINC must need some kind of credit confirmation to balance things out. It's strange though, you'd think it would be based strictly on crunching time.
ID: 47019 · Report as offensive     Reply Quote
DadX

Send message
Joined: 30 Aug 06
Posts: 27
Credit: 1,481,548
RAC: 768
Message 47157 - Posted: 23 Sep 2013, 18:02:43 UTC

While running BOINC in an Ubuntu VM under Virtual Box is a bit of extra work there is one great benefit, I can save the VM machine state (with CPDM running) before I reboot the hardware thereby reducing the likelihood of crashing the model. It would probably be safer to suspend CPDN before I save the machine state but I don't always remember to do that.

I have had the VM crash on me once but that is the risk I take using the newest version on Ubuntu and Virtual Box.
ID: 47157 · Report as offensive     Reply Quote
Eirik Redd

Send message
Joined: 31 Aug 04
Posts: 391
Credit: 219,888,554
RAC: 1,481,373
Message 47172 - Posted: 26 Sep 2013, 5:03:13 UTC - in response to Message 47157.  

While running BOINC in an Ubuntu VM under Virtual Box is a bit of extra work there is one great benefit, I can save the VM machine state (with CPDM running) before I reboot the hardware thereby reducing the likelihood of crashing the model. It would probably be safer to suspend CPDN before I save the machine state but I don't always remember to do that.

I have had the VM crash on me once but that is the risk I take using the newest version on Ubuntu and Virtual Box.


Yes, being able to do those running snapshots of the VM is a great advantage.
Unfortunately, when (not if) the host crashes or reboots, the Virtual Machines running on/in that host lose running CPDN models in the guest almost always.

So do those snapshots, or clean shutdown the guest and backup to another disk whenever seems prudent.



ID: 47172 · Report as offensive     Reply Quote
Profile tullio

Send message
Joined: 6 Aug 04
Posts: 264
Credit: 965,476
RAC: 0
Message 47183 - Posted: 27 Sep 2013, 11:36:00 UTC - in response to Message 47172.  
Last modified: 27 Sep 2013, 11:42:24 UTC

At Test4Theory@home, which uses a BOINC_VM Virtual Machine created by CERN, the second version of the wrapper takes a snapshot every ten minutes. But you must have at least a 7.0.x version of the BOINC client to receive this wrapper. Since I am still using BOINC 6.10.58 on my Linux box with SuSE Linux 12.3, I am still using the old wrapper.
Tullio
This works with VirtualBox up to 4.2.16, does not so far with 4.2.18, which I am instead using.
ID: 47183 · Report as offensive     Reply Quote
Eirik Redd

Send message
Joined: 31 Aug 04
Posts: 391
Credit: 219,888,554
RAC: 1,481,373
Message 47231 - Posted: 4 Oct 2013, 9:13:33 UTC - in response to Message 47183.  

At Test4Theory@home, which uses a BOINC_VM Virtual Machine created by CERN, the second version of the wrapper takes a snapshot every ten minutes. But you must have at least a 7.0.x version of the BOINC client to receive this wrapper. Since I am still using BOINC 6.10.58 on my Linux box with SuSE Linux 12.3, I am still using the old wrapper.
Tullio
This works with VirtualBox up to 4.2.16, does not so far with 4.2.18, which I am instead using.


If I understand - the Test4Theory runs in a VM and does autobackups of machine state>

Cool.
ID: 47231 · Report as offensive     Reply Quote
Profile tullio

Send message
Joined: 6 Aug 04
Posts: 264
Credit: 965,476
RAC: 0
Message 47247 - Posted: 7 Oct 2013, 14:36:09 UTC - in response to Message 47231.  

Yes, cool, but it works only fot VirtualBox 4.2.16 and not 4.2.18, for reasons unknown.
Tullio
ID: 47247 · Report as offensive     Reply Quote

Message boards : Number crunching : Virtualisation (running CPDN inside virtual PCs)

©2024 climateprediction.net