An Evaluation Upon Impact of Operating System Execution on Simultaneous Multithreaded Processor |
This paper presents the first analysis of operatingsystem execution on a simultaneous multithreaded (SMT) processor. While SMT hasbeen studied extensively over the past 6 years, previous research has focusedentirely on user-mode execution. However, many of the applications mostamenable to multithreading technologies spend a significant fraction of theirtime in kernel code. A full understanding of the behavior of such workloadstherefore requires execution and measurement of the operating system, as wellas the application itself. To carry out this study, we (1) modified the Digital Unix4.0d operating system to run on an SMT CPU, and (2) integrated our SMT Alphainstruction set simulator into the SimOS simulator to provide an executionenvironment. For an OS-intensive workload, we ran the multithreaded Apache Webserver on an 8-context SMT. We compared Apache’s user- and kernel-mode behaviorto a standard multiprogrammed SPECInt workload, and compared the SMT processorto an out-of-order superscalar running both workloads. Overall, our resultsdemonstrate the micro architectural impact of an OS-intensive workload on anSMT processor and provide insight into the OS demands of the Apache Web server.The synergy between the SMT processor and Web and OS software produced a greaterthroughput gain over superscalar execution than seen on any previously examinedworkloads, including commercial databases and explicitly parallel programs.