Pages: [1]
Tuna Ertemalp
 
Tester
BAM!ID: 37744
Joined: 2007-10-31
Posts: 531
Credits: 10,157,094,832
World-rank: 298

2015-05-16 03:09:45
last modified: 2015-05-16 03:11:45

All my machines capable of running virtual machines has "Oracle VM VirtualBox" installed along with BOINC. And, all my machines are Windows 7 or 8.1 machines (Std or Pro). A number of projects, like those from CERN, nicely create Linux machines under VBox and run their projects on my Windows machines. I am so grateful to them.

Yet, there are other projects like BealF@Home and WEP-M+2 Project who are Linux only, without any Windows apps, insisting on being Linux only or not being able to create a Windows app, and it kills me that (1) They won't provide a Windows app, (2) I don't get to provide CPU/GPU time for them.

So, I figure that it must be possible to use VBox to create virtual machines on which to run BOINC with just these two (and any future such) projects. But, I am TOTALLY ignorant about Linux at this point. Last time I did anything with Unix was June/1990, and I don't remember any of it.

If anybody did this already, I would appreciate an excruciatingly step-by-step, totally foolproof as well as future proof (as Linux/VBox/Windows versions change) instructions. It must include stuff like it being auto start, auto login, auto BOINC when the Windows machine boots, how to coexist with the resources of the host Windows machine as opposed to thinking that it has all the CPU/GPU/RAM/HD resources of the host machine available to it, etc.

While on the subject, I also would like to run Bitcoin Utopia in a VM, but not under my BOINC-wide user account. I don't like how they artificially increase one's credits by the billions, but I also see the point of helping out projects monetarily. As such, I wouldn't mind running it in a VM, under a different BOINC persona to collect those credits, keeping them separate from my main (i.e. this) account. I know there are differing opinions about this, so I am not trying to start a conversation about it. This is just my preference. I am observing on their project website that some/many of the Bitcoin Utopia applications have Linux versions. So, that would mean that I would run TWO VMs on each of my VM capable machines, one running Linux-only projects under my current persona, and one running Bitcoin Utopia under a new persona. I am interested in hearing what would be the effect of that on the main host machine running the rest of the ~50 projects, and how I would go about assigning resources to the VMs to allow them to do their job without stealing way too much from everything else, including other apps running under BOINC on the host machine that create their own VMs for their WUs.

Thanks for any guidance. If this thread results in something really useful, we could maybe have a sticky post that tells what to do to the newcomers.
Tuna

DoctorNow
 
Volunteer tester
BAM!ID: 261
Joined: 2006-05-12
Posts: 343
Credits: 2,300,395,848
World-rank: 855

2015-05-17 06:41:21
last modified: 2015-05-17 06:46:18

Well, I'm using a VM for several projects with Linux (including WEP and BealF) from time to time, especially since some of the projects' Linux apps are better optimized than the Windows ones.
I would like to help, but I'm still a beginner also. Even though I do that for several years now (and only sporadic), my knowledge is only enough to get BOINC running on the projects I need. So I don't think I'm fit enough to teach you to get a VM running with the conditions you set here, but I hope I can give at least a few tips for it:

Hard to tell what Linux distribution you should use. There are a lot out there and they all have different usability and difficulty as far as I know. Since most of them are free I would advise to try every possible distribution out and see which one fits you the best.
I tried several ones also, but ended up with openSuse because I had an ex-team mate which had the same OS and was an expert in it, he taught the basics to me. But I would not recommend that to beginners, because I think it's not easy to handle (without help). Additionally, I never could get the GPU running under it (even with the help of my team mate), and I tried it on several versions from 10.2 up to 13.2 now. Fortunately I never needed the GPU under Linux.

While on the subject, I also would like to run Bitcoin Utopia in a VM,
...

Why do you want to run BU in a second VM? I don't think you need it, because the BOINC manager can control different accounts. You can let BU run under Windows under another account while your main account is not affected.
Besides: on BU every app for Linux also has a Windows one, so normally there would be no need to use Linux because of that. But it's your decision...

but not under my BOINC-wide user account.
Weird desire and somehow stupid from my POV (sorry), because there are two kind of stats now, but whatever.


I am interested in hearing what would be the effect of that on the main host machine running the rest of the ~50 projects, and how I would go about assigning resources to the VMs to allow them to do their job without stealing way too much from everything else, including other apps running under BOINC on the host machine that create their own VMs for their WUs.

Well, running a VM with a fully running OS and full loaded cores does slow down the Windows environment - even if the cores are not used there is a slight sluggy behaviour. I'm not entirely sure if better and faster hardware can prevent it from happen completely, but I have two systems - one with better hardware than the other - and I tried different settings of the VirtualBox to see if it helps but there wasn't much effect, so I think it's not completely preventable.
From my POV it's also not recommendable to let the VM run the entire time, especially when you're working on the same system at the same time - not to speak of 2 VMs at the same time... *shudders by imagining it*
Another thing to consider is: the VM shouldn't get too less of hardware resources. While some of them are manageable from VirtualBox anytime the hard disk space available for the Linux OS must be set at the beginning (because it can't be changed afterwards). This shouldn't be too less - at least 10-12 GB, especially when you're thinking about using more projects on the VM give it some more.

When I let run my VM I stop most of the Windows BOINC cpu processes so that it doesn't interfere with it (except non-cpu and GPU projects) and let the VM have all the cores for the calculations. That gives the best results as far as I discovered. It's of course possible to delegate cores to the win-client and the VM client, I already tested that, but since it's (slightly) slowing down the win-client processes I normally don't do that.

That's what I can tell so far from my experiences.
BOINC@Heidelberg & BOINC Confederation-member

My BOINCstats/[url=http://signature.statseb.fr/sig-335.png]My badges
TeeVeeEss
  Donator
Tester - Translator - BOINCstats SOFA member
BAM!ID: 2648
Joined: 2006-06-27
Posts: 781
Credits: 12,386,178,806
World-rank: 266

2015-05-18 19:46:54

My choice for Linux is Ubuntu: widely used, aiming at people who just like you have Windows-based computer knowledge. There's a lot of good web pages with instructions how to install Ubuntu on VirtualBox. I picked this one:
http://linus.nci.nih.gov/bdge/installUbuntu.html
Only the last paragraph about installing BRB-DGE is not needed.

For installing BOINC on Ubuntu there are also good instructions on the web. I picked this one:
http://boinc.berkeley.edu/wiki/Installing_BOINC
The way I do it is always with the Installer from Berkeley, using the recommended version for Linux x64. Here is that Paragraph:

The Berkeley Installer
The Berkeley Installer is available directly from the BOINC project: http://boinc.berkeley.edu/download_all.php. It is a self-extracting archive. This type of installation requires that you be familiar with the UNIX command-line interface. The download files have names like boinc_7.2.23_i686-pc-linux-gnu.sh. After downloading the file, you'll need to be in the directory where you download the archive to unpack it.
Here is an example. The archive is downloaded to the desktop. It is then moved to the home directory (~). Finally BOINC is unpacked and installed. All of this can be done within a regular user account; root privileges are not needed.
$ mv ~/Desktop/boinc_7.2.23_i686-pc-linux-gnu.sh ~
$ cd ~
$ sh boinc_7.2.23_i686-pc-linux-gnu.sh
This creates a directory called BOINC/ under the home directory containing the following files:
boinc
The BOINC core client.
boincmgr
The BOINC Manager.
boinccmd
A command line tool for controlling a running core client.
run_client
A script that cd's into the BOINC directory and runs the core client.
run_manager
A script that cd's into the BOINC directory and runs the manager.
To start the client manually enter the following terminal commands:
$ cd ~/BOINC
$ ./run_client --daemon
$ ./run_manager
The BOINC working directory can be moved elsewhere as you like, and can even be renamed. One common choice is ~/.boinc, since files and directories with names that begin with "dot" do not show up by default in Unix directory listings. Whatever the name, everything related to the BOINC client is contained within that directory, and you should always run the client and the manager from that working directory.

Don't bother to move the BOINC working directory, as the only purpose of this Ubuntu host is to run BOINC.
The "difficult" part is opening the terminal. As Microsoft-expert ( ) you probably know the DOS-box or CMD-line for typing commands. In Ubuntu it is called terminal. You should find it in the menu, or just type 'terminal' in Dash to open a Terminal. When needed: type exit to close the terminal.

As DoctorNow also experienced the installation of recent GPU-drivers on Ubuntu is as of today not easy. I would not recommend to run BOINC GPU-projects on a virtual Ubuntu host. If you find your way a little bit on the virtual Ubuntu host, you may be tempted to install it as dual boot or as main OS on a physical host.

Good luck, keep us posted on your progress
Pages: [1]

Index :: BOINC :: How to use "Oracle VM VirtualBox" for my own purposes
Reason: