[OmniOS-discuss] horrible disk performance under KVM

ashley willis ashleywillis76 at gmail.com
Fri Sep 13 23:38:18 UTC 2013


I decided to run the mongorestore tool from the bare metal OmniOS to
the mongo server running in KVM CentOS, and it is running much quicker
-- 50% in 12m52s (and the CPU and memory for mongorestore is only
0.3%). MongoDB is not using much CPU in the VM, either. Total import
time this way is 32m12.235s -- still much slower than just bare metal,
but not insanely slow like before (the NFS->NFS all within the OmniOS
VM was 92m48s). Giving the VM 6 cores and 14GB of ram (instead of 2
and 2) gave somewhat better performance: 27m18.305s. Going back to
if=ide, 35m51.575s, so if=virtio does help here some.

Is there anything else that can be done to improve disk I/O in a VM,
short of giving the VM an entire physical disk?

-ashley

On Fri, Sep 13, 2013 at 4:58 PM, ashley willis <ashleywillis76 at gmail.com> wrote:
> So, a CentOS 6.4 VM is still horrible with virtio -- it's loaded 2% of
> the database in 6 minutes onto a 30g ext4 partition.
>
> On Fri, Sep 13, 2013 at 4:24 PM, ashley willis <ashleywillis76 at gmail.com> wrote:
>> that works for booting centos 6.4, but not for booting omnios -- grub
>> comes up but it keeps looping back to the grub menu. granted, i don't
>> really need to boot omnios in kvm. i had horrible performance in
>> centos as well, so i will try this.
>>
>> for comparison to my home machine, on a work server i loaded that same
>> dataset in 4m10s (xeon 2*6 cores, 60GB ram, 12 600GB 10k SAS drives in
>> raid10) reading from disks in a different box.
>>
>> -ashley
>>
>> On Fri, Sep 13, 2013 at 3:50 PM, Narayan Desai <narayan.desai at gmail.com> wrote:
>>> Depending on the availability of the guest-side drivers, it should be a lot
>>> faster to use virtio, both for disk and net.
>>>
>>> Does anyone know if virtio support ships now in OmniOS? I know there have
>>> been some drivers floating around for a while now, but haven't tried them.
>>>  -nld
>>>
>>>
>>> On Fri, Sep 13, 2013 at 1:45 PM, ashley willis <ashleywillis76 at gmail.com>
>>> wrote:
>>>>
>>>> I have 14GB dump of a MongoDB database that took 10 minutes to restore
>>>> on bare metal OmniOS -- I'm fine with this (system is an 8-core AMD
>>>> FX-8150, 32GB ram, pair of 500GB WD 'blue" drives mirrored, 90GB ssd
>>>> cache -- all desktop-grade).
>>>>
>>>> Running OmniOS under KVM on this box, the same operation took 246
>>>> minutes with the dump available over an NFS share from the bare metal
>>>> system (given 2 cores, 2GB ram, and a 30GB zvol).
>>>>
>>>> Under the same KVM instance, I decided to see the performance reading
>>>> the dump from NFS and having the MongoDB data directory on this same
>>>> NFS share, and it's on track to finish in under 60 minutes (half-way
>>>> done). That's more than 4 times faster.
>>>>
>>>> What gives?
>>>>
>>>> /usr/bin/qemu-system-x86_64 -name OmniOS_Text_r151006p.iso -enable-kvm
>>>> -vnc 0.0.0.0:15 -smp 2 -m 2048 -no-hpet -localtime -drive
>>>> file=/dev/zvol/rdsk/rpool/omnios,if=ide,index=0 -net
>>>> nic,vlan=0,name=net0,model=e1000,macaddr=2:8:20:e:15:33 -net
>>>> vnic,vlan=0,name=net0,ifname=vnic10,macaddr=2:8:20:e:15:33 -vga std
>>>> -daemonize
>>>>
>>>> -ashley
>>>> _______________________________________________
>>>> OmniOS-discuss mailing list
>>>> OmniOS-discuss at lists.omniti.com
>>>> http://lists.omniti.com/mailman/listinfo/omnios-discuss
>>>
>>>


More information about the OmniOS-discuss mailing list