Affiliation:
1. IBM T.J. Watson Research Center
2. Dept. of Electrical and Computer Engineering, University of Toronto
Abstract
Designing and implementing system software so that it scales well on shared-memory multiprocessors (SMMPs) has proven to be surprisingly challenging. To improve scalability, most designers to date have focused on concurrency by iteratively eliminating the need for locks and reducing lock contention. However, our experience indicates that locality is just as, if not more, important and that focusing on locality ultimately leads to a more scalable system.
In this paper, we describe a methodology and a framework for constructing system software structured for locality, exploiting techniques similar to those used in distributed systems. Specifically, we found two techniques to be effective in improving scalability of SMMP operating systems: (
i
) an object-oriented structure that minimizes sharing by providing a natural mapping from independent requests to independent code paths and data structures, and (
ii
) the selective partitioning, distribution, and replication of object implementations in order to improve locality. We describe concrete examples of distributed objects and our experience implementing them. We demonstrate that the distributed implementations improve the scalability of operating-system-intensive parallel workloads.
Publisher
Association for Computing Machinery (ACM)
Reference103 articles.
1. Concurrent object-oriented programming
2. Continuous profiling
3. Appavoo J. 1998. Clustered Objects: Initial design implementation and evaluation. M.S. thesis Department of Computing Science University of Toronto Toronto Canada. Appavoo J. 1998. Clustered Objects: Initial design implementation and evaluation. M.S. thesis Department of Computing Science University of Toronto Toronto Canada.
4. Appavoo J. 2005. Clustered objects. Ph.D. thesis University of Toronto Toronto Canada. Appavoo J. 2005. Clustered objects. Ph.D. thesis University of Toronto Toronto Canada.
5. Appavoo J. Auslander M. Edelsohn D. Silva D. D. Krieger O. Ostrowski M. Rosenburg B. Wisniewski R. W. and Xenidis J. 2003. Providing a linux API on the scalable K42 kernel. In Freenix. San Antonio TX. Appavoo J. Auslander M. Edelsohn D. Silva D. D. Krieger O. Ostrowski M. Rosenburg B. Wisniewski R. W. and Xenidis J. 2003. Providing a linux API on the scalable K42 kernel. In Freenix. San Antonio TX.
Cited by
23 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. A fork() in the road;Proceedings of the Workshop on Hot Topics in Operating Systems;2019-05-13
2. Scalable Write Allocation in the WAFL File System;2017 46th International Conference on Parallel Processing (ICPP);2017-08
3. The scalable commutativity rule;Communications of the ACM;2017-07-24
4. Nosv: A lightweight nested-virtualization VMM for hosting high performance computing on cloud;Journal of Systems and Software;2017-02
5. A NEaT Design for Reliable and Scalable Network Stacks;Proceedings of the 12th International on Conference on emerging Networking EXperiments and Technologies;2016-12-06