Top-Fragen
Zeitleiste
Chat
Kontext

Charm++

parallele Programmiersprache als C++-Bibliothek Aus Wikipedia, der freien Enzyklopädie

Remove ads

Charm++[1] ist eine parallele objektorientierte Programmiersprache basierend auf C++ und wurde im Parallel Programming Laboratory der University of Illinois entwickelt (Hauptentwickler Laxmikant Kale). Charm++ wurde mit dem Ziel entwickelt, eine höhere Produktivität durch eine höhere Abstraktionsebene paralleler Programmierung und gleichzeitig gute Performanz auf vielen verschiedenen Hardware-Plattformen zu bieten. In Charm++ geschriebene Programme bestehen aus einer Anzahl an kooperierenden Nachrichten-gesteuerten Objekten, genannt Chares.

Chares können in sogenannten Chare Arrays organisiert werden. Nachrichten können simultan an einzelne Chares innerhalb eines Chare Arrays oder an das gesamte Chare Array gesendet werden.

Die Chares eines Programms werden von einem adaptiven Laufzeitsystem auf die physikalischen Prozessoren abgebildet. Das Mapping ist für den Programmierer transparent und erlaubt es dem Laufzeitsystem während der Programmausführung die Zuweisung der Chares an die Prozessoren dynamisch zu verändern, um beispielsweise Load Balancing oder Fehlertoleranz zu ermöglichen oder die Anzahl der vom Programm verwendeten Prozessoren zu vergrößern oder zu verringern.

Das Moleküldynamik-Simulationsprogramm NAMD wurde in Charm++ implementiert.

Remove ads

Referenz

Einzelnachweise

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads