Techniques to Improve the Performance of Software-Based Distributed Shared Memory Systems
NEW YORK UNIV NY DEPT OF COMPUTER SCIENCE
Pagination or Media Count:
Software distributed shared-memory systems are able to provide programmers with the illusion of global shared memory on networked workstations without special hardware support. This thesis identifies two problems with such systems 1 poor application programming interfaces APIs for programmers who need to solve complicated synchronization problems, and 2 inefficiencies in traditional multiple writer protocols. The author proposes a solution to both of these problems the introduction of user-definable, high-level synchronization primitives to provide a better API, and the single-owner protocol to provide efficiency. To accommodate user-definable high-level synchronization primitives, a variant of release consistency also is proposed. User-definable, high-level synchronization primitives provide a paradigm for users to define their own synchronization primitives instead of relying on traditional low-level synchronization primitives, such as barriers and locks. The single-owner protocol reduces the number of messages from OMICRON n exp2 messages the number of messages needed in the multiple-owner protocol to THETA n messages when there are first n writers writing to a page and then n readers reading the page. Unlike some multiple-owner protocols, in the single-owner protocol garbage collection is performed asynchronously, and the size of a message for doing memory update is smaller in most cases. The author also evaluates the tradeoffs between the single-owner protocol and multiple-owner protocols. He has found that in most cases the single-owner protocol uses fewer messages than multiple-owner protocols, but there are some computations that may perform better with some multiple-owner protocols. To combine the advantages of both protocols, he proposes a hybrid owner protocol that can be used to increase the efficiency in an adaptive way, with some pages managed by the single-owner protocol and some by a multiple-owner protocol.
- Computer Programming and Software
- Computer Systems
- Computer Systems Management and Standards