I'm confused about the definitions of the latency counters "Physical Disk Write Latency", "Kernel Write Latency", and "Disk Write Latency". Here's what I've been told about these 3 counters:
Physical Disk Write Latency -- HBA to Device latency
Kernel Write Latency - Guest O/S (thru Kernel thru HBA ) to Device latency
Disk Write Latency - The sum of the 2 values above.
Isn't "Kernel Write Latency" the latency between the Guest O/S and the HBA? If not then I don't understand the difference between the last 2 counters. Can you enlighten me? Thanks.
Where are you getting "physical disk write latency" from? Maybe a Perfmon counter? Definitely do not trust Perfmon performance counters. In VC and esxtop, we provide kernel and device latencies. The kernel latency is the time VMkernel takes to process an IO request. The device latency is the time it takes the hardware to handle the request. In esxtop, these to are added together and presented as guest latency.
You gave me a chuckle. These are VMware VI API performance counters. I've dumped the VC 2.5 counters available (via the API) into an XML table so that you can see the VMware identification and description. Here's the 3 counters the I have questions regarding:
"Physical Deivce Write Latency" - http://nworks.com/vmware/counters_vc2.5.xml#disk.deviceWriteLatency.average
"Kernel Disk Write Latency" - http://nworks.com/vmware/counters_vc2.5.xml#disk.kernelWriteLatency.average
"Disk Write Latency" - http://nworks.com/vmware/counters_vc2.5.xml#disk.totalWriteLatency.average
The one-liner description for "Kernel Disk Write Latency" (disk.kernelWriteLatency.average) is "The average time spent in ESX Server VMKernel per write." Probably true but pretty vague. ?:| Does this mean the time from the Guest initiating the I/O until its on the HBA? Maybe one of your buddies on the API team knows? TIA.