Report Number: CSL-TR-97-730
Institution: Stanford University, Computer Systems Laboratory
Title: Performance Isolation and Resource Sharing on Shared-Memory
Multiprocessors
Author: Verghese, Ben
Author: Gupta, Anoop
Author: Rosenblum, Mendel
Date: july 1997
Abstract: Shared-memory multiprocessors are attractive as
general-purpose compute servers. On the software side, they
present programmers with the same programming paradigm as
uniprocessors, and they can run unmodified uniprocessor
binaries. On the hardware side, the tight coupling of
multiple processors, memory, and I/O enables efficient
fine-grain sharing of resources on these systems. This
fine-grain sharing is important in compute servers because it
allows idle resources to be easily utilized by active jobs
leading to better system throughput. However, current SMP
operating systems do not provide an important feature that
users of workstations enjoy, namely the lack of interference
from the jobs of unrelated users. We show that this lack of
isolation is caused by the resource
allocation model carried over from single-user workstations,
which is inappropriate for multi-user multiprocessor systems.
We propose "performance isolation", a new resource allocation
model for multi-user multiprocessor compute servers. This
model allows the isolation of the performance of groups of
processes from the load on the rest of the system, provides
performance comparable to a smaller system that corresponds
to the resources used, and allows the sharing of idle
resources for throughput comparable to a SMP OS. We implement
the performance isolation model in the IRIX5.3 operating
system for three important system resources: CPU time,
memory, and disk bandwidth. Our implementation of fairness
for disk bandwidth is novel. Running a number of workloads we
show that this model is very successful at providing
workstation-like latencies under heavy load and SMP-like
latencies under light load.
http://i.stanford.edu/pub/cstr/reports/csl/tr/97/730/CSL-TR-97-730.pdf