FastFlow for Mac
| Version | 2.0.0 |
|---|---|
| Utgivare | Computer Science Department |
| Utgivningsdatum | 30 dec. 2012 |
| Datum tillagt | 30 dec. 2012 |
| Os krav | Mac OS X 10.4 PPC, Mac OS X 10.5 PPC, Mac OS X 10.5, Mac OS X 10.8, Macintosh, Mac OS X 10.4, Mac OS X 10.6, Mac OS X 10.4 Intel, Mac OS X 10.7, Mac OS X 10.5 Intel |
| Krav | Multicore and distributed platforms. Also working on Linux. |
| Totalt antal nedladdningar | 127 |
| Pris | Free |
Beskrivning
FastFlow är en C++ parallell programmeringsram som syftar till att förenkla utvecklingen av effektiva applikationer för flerkärniga plattformar. Nyckelvisionen för FastFlow är att enkel utveckling och körtidseffektivitet båda kan uppnås genom att höja abstraktionsnivån i designfasen, vilket ger utvecklare en lämplig uppsättning parallella programmeringsmönster som effektivt kan kompileras på målplattformarna.
FastFlow är konceptuellt utformad som en stapel av lager som progressivt abstraherar den delade minnesparallellen på kärnnivån upp till definitionen av användbara programmeringskonstruktioner som stöder strukturerad parallell programmering på cache-koherent delat minnesarkitekturer med flera och många kärnor och kluster av dem (se http://di.unito.it/fastflow ).
Dessa arkitekturer inkluderar commodity, homogena, multi-core system som Intel core, AMD K10, etc. FastFlow stöder naturligt strömparallellism eftersom det implementerar parallellismmönster som dataflödesgrafer - så kallade strömningsnätverk.
Körtidsstödet för FastFlow-ramverket ger en effektiv implementering av Single-Producer-Single-Consumer (SPSC) FIFO-köer. FastFlow SPSC-köer är låsfria, väntefria och använder inte förreglade operationer. SPSC-kön används främst som synkroniseringsmekanism för minnespekare på ett konsument-producent-sätt. Nästa nivå utökar en-till-en-köer till många-till-många synkroniseringar och dataflöden, som implementeras med endast SPSC-köer och arbiter-trådar, vilket ger låsfria godtyckliga streamingnätverk som kräver få eller inga minnesbarriärer, och alltså få cache-invalideringar.
Det övre lagret, dvs högnivåprogrammering, tillhandahåller ett programmeringsramverk baserat på parallella mönster. I synnerhet tillhandahåller FastFlow FARM, FARM-WITH-FEEDBACK (dvs. D&C), PIPELINE, MAP och REDUCE-mönster, och stödjer deras godtyckliga kapsling och sammansättning. FastFlow-mönsteruppsättningen kan utökas ytterligare genom att bygga nya C++-mallar.