VMware Cloud Community
MrSiddiqui
Enthusiast
Enthusiast

Explain Virtual Disk Write\Read Request Size and block size

Hi Guys,

Need your help to understand relation between Virtual Disk Write\Read Request Size and block size to test VM throughput and disk performance.

I am using dd to benchmark VM disk performance and in process have noted that no matter which combination of block size i use i am always getting average write request size of ~500kbytes.

Rest of the time its either 0 or 4k, 8k etc.

Also pls guide ho can I get disk throughtput  IOPS of a VM.

Below is the snapshot from my TEST VM and vSPhere chart. ** dd commands and spikes in graph are related.

graph.pngdd.png

Reply
0 Kudos
3 Replies
continuum
Immortal
Immortal

Are you using thin provisioned vmdks ?

If yes - then keep in mind that your tests do not compare to real hardware results.

Also when copying from /dev/sda to /root inside a VM you copy from a location that gets modified while you write to it.

To get results that are comparable to physical hardware use unfragmented eager zeroed vmdks. In that case no new fragments need to be allocated.

By the way - I do a lot of large dd copies from VM to VM, VM to ESXi and ESXi to ESXi and noticed that the best performing blocksize is surprisingly small.

Seems to be smaller than 1MB. Anyway I always use bs=1M as that is the size in which new fragments on the datastore are  allocated.


________________________________________________
Do you need support with a VMFS recovery problem ? - send a message via skype "sanbarrow"
I do not support Workstation 16 at this time ...

Reply
0 Kudos
MrSiddiqui
Enthusiast
Enthusiast

Hi Continuum,

Thanks for responding. yes i am using thin provisioned disks.

Can you explain VIRTUAL DISK REQUEST SIZE is it referring to data written by VM or ESXi host..? also why these are always around 500,000kbs..?

I have tried various block sizes from 4k to 1G but VIRTUAL DISK REQUEST SIZE is same every time.

Thanks

Reply
0 Kudos
continuum
Immortal
Immortal

Hi

is the performance chart you posted available via vCenter only ?

I use Free-esxi here at the moment and dont find that chart.

VIRTUAL DISK REQUEST SIZE - I do not really know what this means in official VMware documentation.

I can guess by the term itself ....

I assume this specifies the "time that is required for the ESXi-host to allocate new 1MB fragments to be able to supply the additional required space on the VMFS-volume that the guest will need for the pending next writes.

Additional VMFS space will be allocated when ever your guest wants to write the next block.

With thin provisioned vmdks and dd-commands like the ones you use,  new blocks are requested by the guest for every MB the dd-command wants to write.

Sorry - ot is a busy day - will continue later

Ulli


________________________________________________
Do you need support with a VMFS recovery problem ? - send a message via skype "sanbarrow"
I do not support Workstation 16 at this time ...

Reply
0 Kudos