num_pages: 576
description: Computer systems design is full of Given a choice between a single machine with speed s or n machines each with speed s/n which should we choose?If both the arrival rate and service rate double will the mean response time stay the same?Should systems really aim to balance load or is this a convenient myth?If a scheduling policy favors one set of jobs does it necessarily hurt some other jobs or are these conservation laws being misinterpreted?Do greedy shortest-delay routing strategies make sense in a server farm or is what's good for the individual disastrous for the system as a whole?How do high job size variability and heavy-tailed workloads affect the choice of a scheduling policy?How should one trade off energy and delay in designing a computer system?If 12 servers are needed to meet delay guarantees when the arrival rate is 9 jobs/sec will we need 12000 servers when the arrival rate is 9000 jobs/sec?Tackling the questions that systems designers care about this book brings queueing theory decisively back to computer science. The book is written with computer scientists and engineers in mind and is full of examples from computer systems as well as manufacturing and operations research. Fun and readable the book is highly approachable even for undergraduates while still being thoroughly rigorous and also covering a much wider span of topics than many queueing books. Readers benefit from a lively mix of motivation and intuition with illustrations examples and more than 300 exercises  all while acquiring the skills needed to model analyze and design large-scale systems with good performance and low cost. The exercises are an important feature teaching research-level counterintuitive lessons in the design of computer systems. The goal is to train readers not only to customize existing analyses but also to invent their own.
language: English
title: Performance Modeling and Design of Computer Systems: Queueing Theory in Action
publisher: Cambridge University Press