# which virtualisation solution better fits my needs ?

## Nitro_146

Hi,

I am building a new machine to replace my main computer. I am actually using virtualbox, but, as I will reinstall my OS from scratch, I am wondering if there is a better VM for my needs.

I use mainly gentoo amd64 as my main OS (95% of time) for internet browsing, office work, and photo editing, no games, (and compiling my system).

I use windows XP in virtualbox for photo editing (5% of time) using Nikon capture NX2 (only sftware installed on my vm)

- Capture NX is very CPU hungry and uses multicores.

- I use to start my VM when i want to work on my photos, and freeze it when done

- I would like a free (as free beer) solution, and if possible a free (as free speech) solution  :Smile: 

- My VM does not need heavy network access, but needs to have an easy way to share (now using a shared directory)

- I am not using raid. My system drive is an intel X25-M 80 Go SSD and the Windows VM image uses 8 Go.

- I want my gentoo system to be as stable as possible. Stability of the win system is not so important.

- I might move from XP to 7 or latter some day (if I can get better performance)

The hardware that will run the VM is not bought yet. It will certainly be an Intel core i5 2500K + Z86 Mobo + 8 Go RAM unless advised that there is a better choice

Should I stick to Virtualbox or is there a better VM for me ?

----------

## grooveman

Have you tried KVM with Qemu?  I have been using that a couple years now, and it works really well.  It takes little tweaking at first, but the performance is very good.  I use it for virtualized desktops.  I also use Xen, but mostly for servers -- and I don't care for the implementation on Gentoo for Xen, so I now use debian for that.  Its performance is excellent as well.  Both are paravirtualization solutions, so either should perform better than virtualbox -- though I haven't used that myself.  I have used vmware player/workstation and gsx server, and I have to say that both Qemu/KVM and Xen blow the doors off of that.  It isn't even close.  

If I were you, I'd try Qemu/KVM, it takes a little tweaking (e.g. you need to set up your own internal networking via a bridge device or nat), but it is so worth it once it gets going. 

A bit of advice, however:  do not put your qemu image on a raid 1 device.  It cuts the i/o in half.  Ideally, have it on a drive that your system (and swap) is not on, and that will increase performance.  The faster the disk, of course, the better.

http://en.gentoo-wiki.com/wiki/KVM

Good luck.

G

Addendum:  I've just been reading over virtualbox... it does look better than I gave it credit for... maybe next time I'll try it.  Support for 3d acceleration sounds promising, and kvm doesn't do that.

----------

## Aquous

I'd say VirtualBox is the way to go. It has everything you need, is FOSS software, only needs one kernel module loaded to operate, and a possible extra bonus for your use case: it allows very specific control of the amount of processor resources that should be available for the VM.

The only FOSS alternative to VirtualBox I know of is KVM, which IMO (though it's been a looong time since I last checked it out) is a lot less intuitive and does not have any noticeable performance boost over VirtualBox (which is very fast, especially compared to VMware).

----------

## grooveman

This should be helpful here:

http://www.phoronix.com/scan.php?page=article&item=linux_kvm_virtualbox4&num=1

----------

## Nitro_146

Thank you for these answers.

Concerning the phoronix test, i knew it, but I am not able to draw any conclusions from it concerning my peticular use. The results are somehow confusing for me !

Aquous, you say that KVM does not allow to control the amount of cpu power dedicated to the VM. Does that mean that it will use all of the power if necessary, or that it is limited to 1 core for exemple ?

----------

## Hu

KVM runs one host thread for each guest vCPU.  Each host thread can be scheduled independently.  If a guest is sufficiently busy, it can use up all the CPU time that the host scheduler will allow.  A guest configured with multiple vCPUs can run each vCPU on a separate host CPU.

----------

## djdunn

You could always try running your nikon software in wine (a non emulator compatibility layer), i looked at the winehq and the oldest tests for the software are really old, way before wine version 1.0 you could try it out it might work ok.

----------

## Ormaaj

 *grooveman wrote:*   

> This should be helpful here:
> 
> http://www.phoronix.com/scan.php?page=article&item=linux_kvm_virtualbox4&num=1

 

This benchmark looks highly questionable. The author mentions using "defaults" for the KVM benchmarks while installing guest additions for Virtualbox. As usual very little detail is given about configuration. I'm guessing this implies KVM was tested without paravirtualization in the guest kernels and no virtio devices configured thereby rendering the entire comparison invalid. This isn't surprising given the volume of botched benchmarks I've seen coming out of Phoronix the last few years. Qemu has been around for eons, and there's tons of commercial interest in KVM at the moment. Those filesystem benchmarks look about backwards considering the enterprise workloads KVM is supposed to handle. I was never really under the impression that VirtualBox was primarily intended for heavy duty server virtualization.

I could be wrong... just sayin. It wouldn't surprise me.

----------

## DaggyStyle

 *Aquous wrote:*   

> I'd say VirtualBox is the way to go. It has everything you need, is FOSS software, only needs one kernel module loaded to operate, and a possible extra bonus for your use case: it allows very specific control of the amount of processor resources that should be available for the VM.
> 
> The only FOSS alternative to VirtualBox I know of is KVM, which IMO (though it's been a looong time since I last checked it out) is a lot less intuitive and does not have any noticeable performance boost over VirtualBox (which is very fast, especially compared to VMware).

 

actually, I think it is the other way around, vmware is faster then virtualbox, but has less features.

----------

## grooveman

 *Ormaaj wrote:*   

>  *grooveman wrote:*   This should be helpful here:
> 
> http://www.phoronix.com/scan.php?page=article&item=linux_kvm_virtualbox4&num=1 
> 
> This benchmark looks highly questionable. The author mentions using "defaults" for the KVM benchmarks while installing guest additions for Virtualbox. As usual very little detail is given about configuration. I'm guessing this implies KVM was tested without paravirtualization in the guest kernels and no virtio devices configured thereby rendering the entire comparison invalid. This isn't surprising given the volume of botched benchmarks I've seen coming out of Phoronix the last few years. Qemu has been around for eons, and there's tons of commercial interest in KVM at the moment. Those filesystem benchmarks look about backwards considering the enterprise workloads KVM is supposed to handle. I was never really under the impression that VirtualBox was primarily intended for heavy duty server virtualization.
> ...

 

You are likely correct here, but at least they admit that it isn't a total apples to apples comparison, and that virtualbox was performing impossibly high in some categories.  Even with less than equal settings, they still gave the edge to KVM.  So, while it is not perfect, it is something to go on.  For me, I'm happy with KVM, and would only consider virtualbox if I needed the 3d acceleration (though I wouldn't expect too much from it there).

----------

## Spidey

 *djdunn wrote:*   

> You could always try running your nikon software in wine (a non emulator compatibility layer), i looked at the winehq and the oldest tests for the software are really old, way before wine version 1.0 you could try it out it might work ok.

 

I double that.

----------

## Nitro_146

I tried wine when I got my camera, and it would'nt work (some .NET issue)

Some googling le me think that it is not resolved yet.

----------

## grooveman

 *Nitro_146 wrote:*   

> I tried wine when I got my camera, and it would'nt work (some .NET issue)
> 
> Some googling le me think that it is not resolved yet.

 

That's a bummer.  I hope you get it to work.  I know that my canon software runs remarkably well under wine, but it does not appear to require .net... that is always a toughie...

----------

## opotonil

qemu-kvm don't have yet support for ehci (usb 2), I don't know Nikon capture NX2 but if your main use of the VM is for connect your camera and it is connected using usb it don't seems the best solution. I have similar problem with iphone, itunes is a pain in the ass, for other all kvm-qemu is my first election.

----------

## Nitro_146

I do not use the virtual machine to download images from my nikon camera. It works well with Digikam.

----------

## grooveman

 *Nitro_146 wrote:*   

> I do not use the virtual machine to download images from my nikon camera. It works well with Digikam.

 

I suspect he is after the support for shooting raw... but you bring up a good point.  If he isn't using raw, then there isn't much point in using the nikon software.  Digikam does a great job.

Here is another twist, though.  If you want to use raw, you can always use raw therapee and still bypass the whole nikon software thing.  Raw therapee is surprisingly powerful, and fully opensource.  If you want to spend money, however, I highly recommend buying Bibble.  I don't use a lot of closed-source software, but this one is worth it.  Using Bibble (if you can afford it, Raw Therapee if you can't), gimp (or cinepaint) and turboprint (not opensource, unfortunately), you can actually make a halfway decent photography workshop on your linux system.

----------

## Nitro_146

I do shoot raw.

I've tried many raw processing software, including raw therapee and bibble (eval version) but I've found that nikon capture NX 2 is the one that gives me better results (altough it may be the slower).

To come back to the original question, I will probabely give a try to KVM and Qemu with my new PC.

----------

