Ariadne


o Description

Ariadne Threads is a user-level threads system that may be used for multithreading applications. The system was designed for concurrent execution on uni-processor, shared memory multi-processors, and distributed memory platforms supporting Unix.

It is currently available on several environments, including Sun Sparcs (SunOS4 and Solaris), Sequent Symmetry, IBM RS6000, SGI, and Intel i860 processors. It is highly portable, utilizing only a few lines of assembly code.

Ariadne provides a customization layer through which it lends itself to finely tuned customizations: support for scheduling via a built-in scheduler or an application specific scheduler, and a communication-library interface.

Unique features of Ariadne include support for arbitrary distributed computing libraries/environments (e.g., PVM, P4) and support for inter-process thread migration. Application-level threads may migrate from one process to another to access and compute with remote data.

Ariadne also provides precise and efficient timing and signal handling primitives making it ideal for the development of multithreaded servers, communication protocols, and other applications that may benefit from timely and asynchrounous actions.

o Principal Investigators

Edward Connell, PhD Student
James Pollard, PhD Student
Terry Brugger, BS Computer Sciences
Juan C. Gomez, PhD Computer Sciences
Edward Mascarenhas, PhD Computer Sciences
Dr. Vernon Rego, Major Professor

o Publications

E. Mascarenhas and V. Rego. Ariadne: Architecture of a Portable Threads system supporting Thread Migration. Software - Practice and Experience, Vol. 26(3), pages 327-357, March 1996.

o Manual

Ariadne User Manual (Version 2.0), Technical Report CSD-TR 94-081

o In Depth

E. Mascarenhas and V. Rego. Ariadne: Architecture of a Portable Threads system supporting Mobile Processes, Technical Report CSD-TR 95-017, Department of Computer Sciences, Purdue University, January 1995.
E. Mascarenhas and V. Rego. Migrant Threads on Process Farms: Parallel Programming with Ariadne Technical Report TR 95-081, Department of Computer Sciences, Purdue University, December 1995.

o Work in Progress

  1. Code cleanup and Reorganization.
  2. Kernel-threads Support.
  3. Pthreads Interface.
  4. Port to Linux OS, NT, and IRIX 6.5.
  5. Support for Thread Continuations.

==============================================================

 <== Back to PaCS Homepage