National High-Performance Software Exchange
Software Catalog

Back to the NHSE Software Catalog

CHARM

Abstract
CHARM is a machine independent parallel programming language. Programs written using this system will run unchanged on MIMD machines with or without a shared memory. It provides high-level mechanisms and strategies to facilitate the task of developing even highly complex parallel applications. Charm programs are written in C with a few syntactic extensions. It is possible to interface to other languages such as FORTRAN using the foreign language interface that C provides. Charm++ is the C++-based parallel object oriented language having all features of Charm, which supports multiple inheritance, late bindings, and polymorphism. Charm features include effficent portability, latency tolerance, and dynamic load balancing. The system provides support for both regular and irregular computations.
DateOfInformation
Wed Apr 2 19:21:28 1997
Domain
Parallel Processing Tools!Parallel Programming Languages and Compilers
Keyword
parallel programming language; parallel runtime system; load balancing; architecture independence; performance visualization; dependence analysis
Name
CHARM
TargetEnvironment
The system currently runs on Intel's iPSC/860, iPSC/2 and Paragon, Thinking Machines CM-5, nCUBE/2, IBM SP-2, Encore Multimax, Sequent Symmetry, single-processor UNIX machines, and networks of UNIX workstations. Planned ports are to the KSR-1, Cray T3D, Convex Exemplar and other parallel machines as they become available.
Webpage
http://charm.cs.uiuc.edu/research/allcharm/
ContactIs
Professor L. V. Kale

Meta Data URL from which this entry was created:
http://www.nhse.org/rib/repositories/ptlib/objects/Asset/charm.html
nhse-tech@nhse.org