Thursday, March 23, 2006

Storage Affinity Simulator

Due to several e-mails that I received asking for the simulator that I used to evaluate the Storage Affinity scheduling heuristic, I decided to put the source code available for download here.

Please read the WARNING file inside.

StorageAffinity_Sim.tar.bz2

Enjoy,
./Eli

Friday, March 17, 2006

Xen and The Art of Hyper-Threading

The quarter is technically over. Here, I decided to post an abstract of some findinds in one of the projects where I had a lot of fun during almost all this time that I have not posted here. :-)

The Performance Impact of Information Gap between Virtual and Physical CPU Capabilities

Theo Hebert, Elizeu Santos-Neto, Andy Seidel

Virtualization is a technique used to create software abstractions of physical hardware architectures to enable more flexible resource utilization and more efficient application execution. Recently, virtualization technologies have regained popularity and created a whole new set of opportunities, that span from software development environments to planetary scale service deployment. However, during the virtualization process, information about architectural components can be lost. This information gap regarding the physical and virtual hardware capabilities may cause performance penalties in the applications executing on top of virtual hardware. In this work we show that the such lack of accuracy exists in the virtual CPU provide by the Xen virtual machine monitor. We focused our investigations on the Hyper-Threading enabled processors. We also describe our solution to alleviates the performance penalty and a discussion about the performance impact of the information gap.