Charm ++

from Wikipedia, the free encyclopedia

Charm ++ is a parallel object-oriented programming language based on C ++ and was developed in the Parallel Programming Laboratory of the University of Illinois (main developer Laxmikant Kale ). Charm ++ was developed with the aim of offering higher productivity through a higher level of abstraction in parallel programming and, at the same time, good performance on many different hardware platforms. Programs written in Charm ++ consist of a number of cooperating message-driven objects called chares .

Chares can be organized in so-called chare arrays . Messages can be sent simultaneously to individual Chares within a Chare Array or to the entire Chare Array.

The chares of a program are mapped onto the physical processors by an adaptive runtime system. The mapping is transparent for the programmer and allows the runtime system to dynamically change the assignment of the chares to the processors during program execution, for example to enable load balancing or fault tolerance or to increase or decrease the number of processors used by the program.

The molecular dynamics simulation program NAMD was implemented in Charm ++.

reference

Individual evidence

  1. Charm

Web links