Hello ,
Host System :
===========
I'm running vmware server 1.04 on linux slackware 12.0 (2.6.21.5-smp #3 SMP Tue Feb 5 13:34:52 CET 2008 i686 Intel(R) Core(TM)2 Duo CPU E6750 @ 2.66GHz GenuineIntel GNU/Linux) with
2 GB Ram => one virtual machine : windows 2000 ( SP4 ) server ( accting as Webserver and Mysqlserver with two databases )
Linux System is installed on a 3ware 9650SE-2LP SATA-II-RAID ( Mirror mode) , with reiserfs3 ;
vmware machine files are located on another 3ware 9650SE-2LP SATA-II-RAID ( Mirror Mode ) with xfs ( mount options : rw,noatime,nodiratime,logbufs=8 )
Virtual Machine:
===================
Assigned Memory : 1,4GB
One virtual scsi disk : 100 GB ( located on 3ware 9650SE-2LP SATA-II-RAID in Mirror Mode )
One virtual scsi disk : ( raw disk for windows Backups ) 232 GB ( located on /dev/hdc WDC WD2500JS-00N 10.0 )
One virtual ide disk : ( raw disk for log files ) 74 GB ( located on /dev/hda WDC WD800BB-56JKC0 )
Everything is running fine but sometimes file access in the virtual machine is very slow so i checked the log file and found
Feb 06 13:09:09: vmx| SCSI0:0: Command WRITE(10) took 1.043 seconds (ok)
Feb 06 13:10:12: vmx| DISKLIB-LIB :numIOs = 2350000 numMergedIOs = 210389 numSplitIOs = 71630
Feb 06 13:10:47: vcpu-0| DISKLIB-LIB :numIOs = 2400000 numMergedIOs = 218855 numSplitIOs = 74248
Feb 06 13:10:53: vcpu-0| DISKLIB-LIB :numIOs = 2450000 numMergedIOs = 218897 numSplitIOs = 74265
Feb 06 13:11:01: vcpu-0| DISKLIB-LIB :numIOs = 2500000 numMergedIOs = 218995 numSplitIOs = 74303
Feb 06 13:23:25: vmx| DISKLIB-LIB :numIOs = 2550000 numMergedIOs = 226421 numSplitIOs = 76828
Feb 06 13:23:58: vcpu-1| DISKLIB-LIB :numIOs = 2600000 numMergedIOs = 235045 numSplitIOs = 79593
Feb 06 13:24:05: vcpu-1| DISKLIB-LIB :numIOs = 2650000 numMergedIOs = 235134 numSplitIOs = 79624
Feb 06 13:28:29: vcpu-0| VIDE: ATAPI DMA 0x25 Failed: key 0x2, asc 0x3a, ascq 0x0
Feb 06 13:28:29: vcpu-0| VIDE: ATAPI DMA 0x25 Failed: key 0x2, asc 0x3a, ascq 0x0
Feb 06 13:29:27: vmx| DISKLIB-LIB :numIOs = 2700000 numMergedIOs = 241449 numSplitIOs = 81621
Feb 06 13:30:04: vcpu-1| DISKLIB-LIB :numIOs = 2750000 numMergedIOs = 250863 numSplitIOs = 84605
Feb 06 13:30:12: vcpu-1| DISKLIB-LIB :numIOs = 2800000 numMergedIOs = 251083 numSplitIOs = 84683
Feb 06 13:30:19: vcpu-0| DISKLIB-LIB :numIOs = 2850000 numMergedIOs = 251112 numSplitIOs = 84693
Feb 06 13:30:31: vmx| SCSI0:0: Command WRITE(10) took 1.072 seconds (ok)
Feb 06 13:30:31: vmx| SCSI0:0: Command WRITE(10) took 1.089 seconds (ok)
Feb 06 13:30:31: vmx| SCSI0:0: Command WRITE(10) took 1.089 seconds (ok)
Feb 06 13:31:04: vmx| DISKLIB-LIB :numIOs = 2900000 numMergedIOs = 255807 numSplitIOs = 86205
Feb 06 13:31:28: vmx| SCSI0:0: Command READ(10) took 1.569 seconds (ok)
Feb 06 13:31:28: vmx| SCSI0:0: Command READ(10) took 1.470 seconds (ok)
So I made some Test on the host system and after adapting some Parameters ( recommended by 3ware ) i get follwing result ( for raid which is hosting the vm )
echo 1024 > /sys/block/sda/queue/nr_requests
echo 128 > /sys/block/sda/device/queue_depth
echo deadline > /sys/block/sdb/queue/scheduler
echo 64 > /sys/block/sda/queue/max_sectors_kb
echo 20 > /proc/sys/vm/dirty_background_ratio
echo 60 > /proc/sys/vm/dirty_ratio
blockdev --setra 16384 /dev/sdb
./iozone -a -n 512M -g 512M -i0 -i1 -i2
Iozone: Performance Test of File I/O
Version $Revision: 3.283 $
Compiled for 32 bit mode.
Build: Generic
Contributors:William Norcott, Don Capps, Isom Crawford, Kirby Collins
Al Slater, Scott Rhine, Mike Wisner, Ken Goss
Steve Landherr, Brad Smith, Mark Kelly, Dr. Alain CYR,
Randy Dunlap, Mark Montague, Dan Million,
Jean-Marc Zucconi, Jeff Blomberg, Benny Halevy,
Erik Habbinga, Kris Strecker, Walter Wong.
Run began: Wed Feb 6 12:41:26 2008
Auto Mode
Using minimum file size of 524288 kilobytes.
Using maximum file size of 524288 kilobytes.
Command line used: ./iozone -a -n 512M -g 512M -i0 -i1 -i2
Output is in Kbytes/sec
Time Resolution = 0.000001 seconds.
Processor cache size set to 1024 Kbytes.
Processor cache line size set to 32 bytes.
File stride size set to 17 * record size.
random random bkwd record stride
KB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread
524288 64 69736 53448 81661 90580 15126 23311
524288 128 68718 39194 63758 82461 20583 25936
524288 256 62694 47844 79107 69143 30705 31564
524288 512 67254 41462 78477 89710 35096 37899
524288 1024 57752 46621 78229 88916 47404 40409
524288 2048 66729 47929 84795 91611 55895 38584
524288 4096 66458 37136 84392 87750 67301 46519
524288 8192 64319 51374 75645 71046 126034 49617
524288 16384 67393 49596 76283 78445 60255 59457
Then i have started a disk i/o Test in the virtual machine an get this results :
( with PerformnaceTest v6.0 )
Partition on Raid :
Disk - Sequenziell read : 113.6
Disk - Sequenziell write: 25.2
Disk - random + rw: 9.7
Partition on sata disk :
Disk - Sequenziell read : 15.8
Disk - Sequenziell write: 12.0
Disk - random + rw: 2.7
( with iozone - but i can't beleave the result )
C:\Programme\Benchmarks\Iozone 3.282>iozone -a -n 512M -g 512M -i0 -i1 -i2
Iozone: Performance Test of File I/O
Version $Revision: 3.281 $
Compiled for 32 bit mode.
Build: Windows
Contributors:William Norcott, Don Capps, Isom Crawford, Kirby Collins
Al Slater, Scott Rhine, Mike Wisner, Ken Goss
Steve Landherr, Brad Smith, Mark Kelly, Dr. Alain CYR,
Randy Dunlap, Mark Montague, Dan Million,
Jean-Marc Zucconi, Jeff Blomberg, Benny Halevy,
Erik Habbinga, Kris Strecker, Walter Wong.
Run began: Wed Feb 6 15:53:19 2008
Auto Mode
Using minimum file size of 524288 kilobytes.
Using maximum file size of 524288 kilobytes.
Command line used: iozone -a -n 512M -g 512M -i0 -i1 -i2
Output is in Kbytes/sec
Time Resolution = 0.000002 seconds.
Processor cache size set to 1024 Kbytes.
Processor cache line size set to 32 bytes.
File stride size set to 17 * record size.
random random bkwd record stride
KB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread
524288 64 193340 414766 270773 770654 990012 387236
524288 128 437423 342360 544716 596850 817636 474662
524288 256 282659 540408 649003 627142 1040902 533682
524288 512 9826 33547 1016366 1109364 2182913 47996
524288 1024
iozone: interrupted
exiting iozone
During the test log entries are increasing
Feb 06 15:58:16: vcpu-0| VIDE: ATAPI DMA 0x25 Failed: key 0x2, asc 0x3a, ascq 0x0
Feb 06 15:58:16: vcpu-0| VIDE: ATAPI DMA 0x25 Failed: key 0x2, asc 0x3a, ascq 0x0
Feb 06 15:59:17: vmx| SCSI0:0: Command WRITE(10) took 1.274 seconds (ok)
Feb 06 15:59:45: vmx| DISKLIB-LIB :numIOs = 3450000 numMergedIOs = 406057 numSplitIOs = 126337
Feb 06 15:59:51: vcpu-0| VIDE: ATAPI DMA 0x25 Failed: key 0x2, asc 0x3a, ascq 0x0
Feb 06 15:59:51: vmx| VIDE: ATAPI DMA 0x25 Failed: key 0x2, asc 0x3a, ascq 0x0
Feb 06 16:04:25: vcpu-1| VIDE: ATAPI DMA 0x25 Failed: key 0x2, asc 0x3a, ascq 0x0
Feb 06 16:04:25: vcpu-1| VIDE: ATAPI DMA 0x25 Failed: key 0x2, asc 0x3a, ascq 0x0
Feb 06 16:04:25: vcpu-1| VIDE: ATAPI DMA 0x25 Failed: key 0x2, asc 0x3a, ascq 0x0
Feb 06 16:04:41: vcpu-0| VIDE: ATAPI DMA 0x25 Failed: key 0x2, asc 0x3a, ascq 0x0
Feb 06 16:04:41: vcpu-0| VIDE: ATAPI DMA 0x25 Failed: key 0x2, asc 0x3a, ascq 0x0
Feb 06 16:04:41: vcpu-1| VIDE: ATAPI DMA 0x25 Failed: key 0x2, asc 0x3a, ascq 0x0
Feb 06 16:06:10: vmx| SCSI0:0: Command READ(10) took 3.079 seconds (ok)
Feb 06 16:06:10: vmx| SCSI0:0: Command WRITE(10) took 3.110 seconds (ok)
Feb 06 16:06:10: vmx| SCSI0:0: Command WRITE(10) took 3.109 seconds (ok)
Feb 06 16:06:10: vmx| SCSI0:0: Command WRITE(10) took 3.109 seconds (ok)
Feb 06 16:06:10: vmx| SCSI0:0: Command WRITE(10) took 3.109 seconds (ok)
Feb 06 16:06:10: vmx| SCSI0:0: Command WRITE(10) took 3.109 seconds (ok)
Feb 06 16:06:10: vmx| SCSI0:0: Command WRITE(10) took 3.109 seconds (ok)
Feb 06 16:06:10: vmx| SCSI0:0: Command WRITE(10) took 3.109 seconds (ok)
Feb 06 16:06:14: vmx| SCSI0:0: Command WRITE(10) took 3.272 seconds (ok)
Feb 06 16:06:14: vmx| SCSI0:0: Command READ(10) took 3.260 seconds (ok)
Feb 06 16:06:14: vmx| SCSI0:0: Command WRITE(10) took 3.396 seconds (ok)
Feb 06 16:06:14: vmx| SCSI0:0: Command WRITE(10) took 3.396 seconds (ok)
Feb 06 16:06:14: vmx| SCSI0:0: Command WRITE(10) took 3.351 seconds (ok)
Feb 06 16:06:14: vmx| SCSI0:0: Command WRITE(10) took 3.351 seconds (ok)
Feb 06 16:06:14: vmx| SCSI0:0: Command WRITE(10) took 3.282 seconds (ok)
Feb 06 16:06:14: vmx| SCSI0:0: Command WRITE(10) took 3.282 seconds (ok)
Feb 06 16:06:14: vmx| SCSI0:0: Command WRITE(10) took 3.272 seconds (ok)
Feb 06 16:06:14: vmx| SCSI0:0: Command WRITE(10) took 3.272 seconds (ok)
Feb 06 16:06:14: vmx| SCSI0:0: Command WRITE(10) took 3.272 seconds (ok)
Feb 06 16:07:10: vcpu-1| SCSI0:0: Command READ(10) took 2.172 seconds (ok)
Any comments are welcome - maybe the underlying xfs filesystem is the problem
I have also attached the vms config file