The Performance Impact of Scheduling for Cache Affinity in Parallel Network Processing


James Salehi, James Kurose, and Don Towsley

Computer Networks Research Group,
Department of Computer Science,
Lederle Graduate Research Center,
University of Massachusetts
Amherst, MA 01003-4610

Abstract

We explore processor-cache affinity scheduling of parallel network protocol processing, in a setting in which protocol processing executes on a shared-memory multiprocessor concurrently with a general workload of non-protocol activity. We find affinity-based scheduling can significantly reduce the communication delay associated with protocol processing, enabling the host to support a greater number of concurrent streams and to provide higher maximum throughput to individual streams. In addition, we compare the performance of two parallelization alternatives, Locking and Independent Protocol Stacks (IPS), with very different caching behaviors. We find that IPS (which maximizes cache affinity) delivers much lower message latency and significantly higher message throughput capacity, yet exhibits less robust response to intra-stream burstiness and limited intra-stream scalability.

Keywords

operating systems, computer networks, network protocol processing, shared-memory multiprocessor, scheduling, processor caches, processor-cache affinity scheduling, performance evaluation