Cthreads -- A parallel programming library
Cthreads is a user-level threads package that runs on several
uniprocessors and multiprocessors. It offers support for shared-memory
parallel programming. The uniprocessor support is intended for development,
debugging and classroom use. Cthreads should work on the following
- Sun Sparc SunOS 4.1.3
- Sun Sparc Solaris 2.x
- SGI MIPS IRIX 5.x
- SGI MIPS (32 and 64-bit) IRIX 6.x
- IBM RS6000 AIX 3.2
- x86 Linux (now Redhat 5.1)
- x86 Solaris 2.x
- Windows NT
A relatively recent version of Cthreads can be retrieved here.
This is a link to a Gzip'd tar file. The distribution includes complete
source for Cthreads and man pages describing its use and interface. Currently
the release also contains portions of the Falcon monitoring package that
supports distributed monitoring of Cthreads programs.
If you are retrieving the source code for further development which might be
incorporated into the Cthreads release, please contact the developers to
ensure that you start with the most recent source possible.
Development on Cthreads itself continues only to the extent that it supports
ongoing projects. Some of those projects support the use of Cthreads,
however. In particular, the Falcon project makes
use of the Cthreads library and provides default monitoring and visualization
of Cthreads programs.
Availability for other target machines
This is research
software and not a supported product. We try to keep it working on the
machines we say we will, on at least some compiler available on those
machines. We port to new machines as it becomes necessary to support other
The following machines are no longer supported, though some files are still
- Sun Sun3 SunOS 4
- Sun Sun386i SunOS 4
- Sequent Symmetry Dynix 3.1.2
- BBN Butterfly ???
- KSR KSR1 and KSR2 KSROS 1.2
- SGI MIPS IRIX 4.0.5
Some papers related to Cthreads
- Kaushik Ghosh, Bodhisattwa Mukherjee and Karsten Schwan,
"Experimentation with Configurable, Lightweight Threads on a KSR
Multiprocessor", In the Proceedings of the First International
Workshop on Parallel Processing, Bangalore, India, December 1994.
Expanded version available as Georgia Tech Tech Report
- Bodhisattwa Mukherjee, Greg Eisenhauer and Kaushik Ghosh, "A
Machine Independent Interface for Lightweight Threads", Operating
Systems Review of the ACM Special Interest Group in Operating Systems,
pages 33-47, January 1994. Also available as tech report GIT-CC-93-53,
College of Computing, Georgia Institute of Technology, Atlanta, GA 30332-0280.
- Karsten Schwan, Harold Forbes, Ahmed Gheith, Bodhisattwa
Mukherjee and Yiannis Samiotakis,
"A Cthread Library for Multiprocessors",
Tech report GIT-ICS-91/02, College of Computing, Georgia Institute of
Technology, Atlanta, GA 30332. Jan 1991.
- Bodhisattwa Mukherjee, A Portable and Reconfigurable Threads
Package, Proceedings of Sun User Group Technical Conference,
June 1991, pages 101-112.
Cthreads has been around in various forms since time immemorial. However,
some people who were last involved in Cthreads are:
This page is maintained by
Last Modified Feb 27, 1997.