Skip to main content

Posts

Caching Strategies for High Performance -- Introduction

Caching Strategies for High Performance
In the fall of 2018 I had the opportunity for the first time to teach a seminar in Performance Engineering to graduate students at the University of Washington's Allen School for Computer Science and Engineering (CSE) in Seattle, near where I live. Conceptually, I built the class around the investigation of web application performance that I originally published on this blog beginning here. In structuring the content of the class, I was also fortunate in being able to take advantage of Andre Bondi's very readable textbook, Foundations of Software Performance Engineering. Dr. Bondi's excellent book is informed by his academic background in analytic queuing modeling, along with extensive professional experience with performance stress testing, both areas of expertise that complement my background and experience with its emphasis on instrumentation, measurement tools, and empirical studies of hardware and application performance. If yo…
Recent posts

Interpreting Windows performance gathered from VMware and Hyper-V Guest Machines

In this blog entry, I want to step back and revisit a topic I have blogged about much earlier (see https://performancebydesign.blogspot.com/search/label/VMware.) and discuss how guest machine performance counters are impacted by virtualization in general. Based on those impacts, we can assess which performance measurements guest machines produce remain viable for diagnosing performance problems and understanding capacity issues. Depending on the type of performance counter, the impact of the virtualization environment varies considerably.
To begin, it is necessary to understand how both Hyper-V and the VMware ESX hypervisor affect the clocks and timers that are available on their guest machines. Essentially, Hyper-V intercepts all calls made from the guest OS to access hardware-based clock and timer services on the Host machine and substitutes a virtualized Time of Day clock value. The hypervisor takes pains to ensure that this virtual clock value sent to the guest is minimally consi…