Papers by Chris Tomlinson

This paper presents two new parallel algorithms QSP1 and QSP2 based on sequential quicksort for s... more This paper presents two new parallel algorithms QSP1 and QSP2 based on sequential quicksort for sorting data on a mesh multicomputer, and analyzes their scalability using the isoe ciency metric. We show that QSP2 matches the lower bound on the isoeciency function for mesh multicomputers. The isoefciency of QSP1 is also fairly close to optimal. Lang et al. and Schnorr et al. have developed parallel sorting algorithms for the mesh architecture that have either optimal (Schnorr) or close to optimal (Lang) run-time complexity for the one-element-per-processor case. Both QSP1 and QSP2 have worse performance than these algorithms for the one-element-perprocessor case. But QSP1 and QSP2 have better scalability than the scaled-down variants of these algorithms (for the case in which there are more elements than processors). As a result, our new parallel formulations are better than these scaled-down variants in terms of speedup w.r.t the best sequential algorithms. We also present a di erent variant of Lang's sort which is asymptotically as scalable as QSP2 (
Inheritance and synchronization with enabled-sets
Sigplan Notices, 1989
ABSTRACT We discuss several issues related to the integration of inheritance and concurrency in a... more ABSTRACT We discuss several issues related to the integration of inheritance and concurrency in an object-oriented lan-guage to support fine-grain parallel algorithms. We present a reflective extension of the actor model to im-plement inheritance mechanisms within the actor ...
Rosette: An object-oriented concurrent systems architecture
A number of concurrent computers have been designed, such as [Ametek 1988] and [NCUBE 1986]. Tak-... more A number of concurrent computers have been designed, such as [Ametek 1988] and [NCUBE 1986]. Tak-ing advantage of concurrency on these computers will require new languages, operating systems, and environ-ments to support the programming, monitoring and control of ...
Type theories and object-oriented programmimg
ACM Computing Surveys, 1988
Object-oriented programming is becoming a popular approach to the construction of complex softwar... more Object-oriented programming is becoming a popular approach to the construction of complex software systems. Benefits of object orientation include support for modular design, code sharing, and extensibility. In order to make the most of these advantages, a type theory for objects and their interactions should be developed to aid checking and controlled derivation of programs and to support early binding
Sharing and organisation protocols in objectoriented systems
Concurrent Object-Oriented Programming Languages
ABSTRACT

International Journal of Parallel Programming, 1991
We present two new parallel algorithms QSP1 and QSP2 based on sequential quicksort for sorting da... more We present two new parallel algorithms QSP1 and QSP2 based on sequential quicksort for sorting data on a mesh multicomputer, and analyze their scalability using the isoefficiency metric. We show that QSP2 matches the lower bound on the isoefficiency function for mesh multicomputers, while QSP1 is fairly close to optimal. Langet al. (1) and Schnorret al. (2) have developed parallel sorting algorithms for the mesh architecture that have either optimal (Schnorr) or close to optimal (Lang) run-time complexity for the one-element-perprocessor case. Both QSP1 and QSP2 have better scalability than the scaled-down variants of these algorithms (for the case in which there are more elements than processors). We also analyze a different variant of Lang's sort which is as scalable as QSP2. We briefly discuss another metric called “resource consumption.” According to this metric, both QSP1 and QSP2 are superior to variants of Lang's sort.
Rosette: An object-oriented concurrent systems architecture
Sigplan Notices, 1989
A number of concurrent computers have been designed, such as [Ametek 1988] and [NCUBE 1986]. Tak-... more A number of concurrent computers have been designed, such as [Ametek 1988] and [NCUBE 1986]. Tak-ing advantage of concurrency on these computers will require new languages, operating systems, and environ-ments to support the programming, monitoring and control of ...
Uploads
Papers by Chris Tomlinson