TY - JOUR TI - Improving and tuning the performance of server systems DO - https://doi.org/doi:10.7282/T3RB76K4 PY - 2015 AB - Modern server systems incorporate complex hardware and software technologies, such as solid-state drives and software virtualization. Maximizing the performance of these complex systems involves many challenges. For example, their performance can often be strongly affected by multiple configuration parameters. At the same time, service providers using these servers often have complex performance objectives, such as achieving multiple performance targets at the same time. In this dissertation, we address three such challenges: improving space efficiency in solid-state drives used as caches (and consequently performance) for storage arrays, reducing performance variability in virtualized systems, and engineering performance to meet multiple performance targets. We built three systems to tackle these challenges concretely. The first system, called Nitro, uses deduplication and local compression to increase the effective (solid-state) cache size of network-attached storage systems, improving performance and space efficiency while minimizing total cost. The second system, called VirtualFence, leverages solid-state drives and non-work-conserving scheduling to provide consistent I/O performance in virtualized multi-tenant systems. The third system, called OpTune, mitigates the complexity of tuning performance to meet multiple performance targets in multi-tier systems using optimization. Our extensive experimental evaluations show that our systems can consistently improve performance and/or achieve the desired performance objectives. These positive results suggest that the principles and techniques embodied in our systems are strong steps toward effectively managing the performance of modern server systems. KW - Computer Science KW - Hard disks (Computer science) KW - Solid state electronics KW - Client/server computing LA - eng ER -