Affiliation:
1. Department of Computer Science, 35 Olden Street, Princeton University, Princeton, NJ
2. AT&T Labs-Research, 600 Mountain Avenue, PO Box 636, Murray Hill, NJ
Abstract
Customizing the protocols used to manage accesses to different data structures within an application can improve the performance of shared-memory programs substantially [10, 21]. Existing systems for using customizable protocols are, however, hard to use because they force programmers to rely on low-level mechanisms for manipulating these protocols. Since several shared-memory systems implement protocols in software and can support customizable protocols, the development of intuitive abstractions for the use of application-specific protocols ia important.We have designed a language,
Ace
, that integrates support for customizable protocols with minimal extensions to C.
Ace
applications are developed using the standard shared-memory model with a default sequentially consistent protocol. Performance can then be optimized, with minor modifications to the application, by experimenting with different protocol libraries. In this paper, we isolate the issues involved in providing language support for using customizable protocols and present novel language abstractions for their easy use. We describe the implementation of a compiler and runtime system for
Ace
, and discuss the issues involved in their design. We also present measurements that demonstrate that
Ace
has good performance compared to an efficient software distributed shared-memory system.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Cited by
1 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Ace;ACM Transactions on Computer Systems;1999-08