CHARM++: A Portable Concurrent Object Oriented System Based On C++

Laxmikant V. Kale, Sanjeev Krishnan

Research output: Contribution to journalArticlepeer-review


We describe Charm++, an object oriented portable parallel programming language based on Cff. Its design philosophy, implementation, sample applications and their performance on various parallel machines are described. Charm++ is an explicitly parallel language consisting of Cft 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 latencytolerant. The language supports multiple inheritance, dynamic binding, overloading, strong typing, and reuse for parallel objects. Charm++ provides specific modes for sharing information between parallel objects. Extensive dynamic load balancing strategies are provided. It is based on the Charm parallel programming system, and its runtime system implementation reuses most of the runtime system for Charm.

Original languageEnglish (US)
Pages (from-to)91-108
Number of pages18
JournalACM SIGPLAN Notices
Issue number10
StatePublished - Jan 10 1993

ASJC Scopus subject areas

  • Software
  • Computer Graphics and Computer-Aided Design


Dive into the research topics of 'CHARM++: A Portable Concurrent Object Oriented System Based On C++'. Together they form a unique fingerprint.

Cite this