CHARM++
- 1 October 1993
- proceedings article
- Published by Association for Computing Machinery (ACM)
- Vol. 28 (10) , 91-108
- https://doi.org/10.1145/165854.165874
Abstract
We describe Charm++, an object oriented portable parallel programming language based on C++. Its design philosophy, implementation, sample applications and their performance on various parallel machines are described. Charm++ is an explicitly parallel language consisting of C++ with a few extensions. It provides a clear separation between sequential and parallel objects. The execution model of Charm++ is message driven, thus helping one write programs that are latency-tolerant. The language supports multiple inheritance, dynamic binding, overloading, strong typing, and reuse for parallel objects, all of which are more difficult problems in a parallel context. Charm++ provides specific modes for sharing information between parallel objects. It is based on the Charm parallel programming system, and its runtime system implementation reuses most of the runtime system for Charm.Keywords
This publication has 11 references indexed in Scilit:
- A load balancing strategy for prioritized execution of tasksPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Parallelizing translator for an object-oriented parallel programming languagePublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Early experience with object-oriented message driven computingPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- An efficient implementation scheme of concurrent object-oriented languages on stock multicomputersPublished by Association for Computing Machinery (ACM) ,1993
- Concurrent aggregates (CA)Published by Association for Computing Machinery (ACM) ,1990
- The Amber system: parallel programming on a network of multiprocessorsPublished by Association for Computing Machinery (ACM) ,1989
- Issues in the design of a parallel object-oriented languageFormal Aspects of Computing, 1989
- PRESTO: A system for object‐oriented parallel programmingSoftware: Practice and Experience, 1988
- Cantor: an actor programming system for scientific computingPublished by Association for Computing Machinery (ACM) ,1988
- Object-oriented concurrent programming in CSTPublished by Association for Computing Machinery (ACM) ,1988