Charm++

Charm++ er et C ++-  baseret parallelt objektorienteret programmeringssprog udviklet ved Parallel Programming Laboratory ved University of Illinois . Charm++ er designet til at forbedre kodningseffektiviteten gennem abstraktioner på højt niveau og samtidig øge ydeevnen på en lang række hardwareplatforme. Charm++ programmer er opdelt i flere objekter, der kommunikerer gennem beskeder, kaldet charms . Når et program kalder en metode på et objekt, sender Charm++ runtime-systemet en besked til det kaldte objekt, som kan behandles på den lokale processor eller på en fjernprocessor i parallel computing. Denne meddelelse får metoden inde i char til at blive udført for at behandle meddelelsen asynkront.

Charms kan kombineres til char -arrays , og beskeder kan sendes til individuelle chars i arrayet og til hele char-arrayet på samme tid.

Fortryllelser kortlægges til fysiske processorer af runtime-systemet. Kortlægningen af ​​charms til processorer er gennemsigtig for programmøren, det giver runtime-systemet mulighed for dynamisk at tildele charms til forskellige processorer under runtime, hvilket gør det muligt mere effektivt at fordele belastningen og ændre antallet af involverede processorer.

Adaptiv MPI

Adaptive MPI ( AMPI ) er en implementering af Message Passing Interface- standarden oven på Charm++ runtime, der gør Charm++ faciliteter tilgængelige i den mere traditionelle MPI-programmeringsmodel. AMPI opretter en indpakning for hver MPI-proces i form af et Charm++ objekt.

Ansøgning

Links