FastFlow for Mac
| Versio | 2.0.0 |
|---|---|
| Kustantaja | Computer Science Department |
| Julkaisupäivä | 30.12.2012 |
| Lisäyspäivämäärä | 30.12.2012 |
| Os vaatimukset | 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 |
| Vaatimukset | Multicore and distributed platforms. Also working on Linux. |
| Latauksia yhteensä | 127 |
| Hinta | Free |
Kuvaus
FastFlow on C++ rinnakkaisohjelmointikehys, jonka tarkoituksena on yksinkertaistaa tehokkaiden sovellusten kehittämistä moniytimisille alustoille. FastFlown keskeinen visio on, että sekä kehittämisen helppous että ajonaikainen tehokkuus voidaan saavuttaa nostamalla suunnitteluvaiheen abstraktiotasoa, mikä tarjoaa kehittäjille sopivan sarjan rinnakkaisia ohjelmointimalleja, jotka voidaan tehokkaasti kääntää kohdealustoille.
FastFlow on käsitteellisesti suunniteltu kerrosten pinoksi, joka asteittain abstraktioi jaetun muistin rinnakkaisuuden ytimien tasolla aina hyödyllisten ohjelmointirakenteiden määrittelyyn asti, jotka tukevat strukturoitua rinnakkaisohjelmointia välimuistin koherenteissa jaetun muistin moni- ja moniytimisissä arkkitehtuureissa ja niiden klustereissa. (katso http://di.unito.it/fastflow ).
Näihin arkkitehtuureihin kuuluvat perushyödykkeet, homogeeniset, moniytimiset järjestelmät, kuten Intel core, AMD K10 jne. FastFlow tukee natiivisti virran rinnakkaisuutta, koska se toteuttaa rinnakkaisuuskuvioita tietovirtakaavioina – niin kutsuttuina suoratoistoverkkoina.
FastFlow-kehyksen ajonaikainen tuki tarjoaa tehokkaan Single-Producer-Single-Consumer (SPSC) FIFO-jonojen toteutuksen. FastFlow SPSC -jonot ovat lukitsemattomia, odotusvapaita eivätkä käytä lukittuja toimintoja. SPSC-jonoa käytetään ensisijaisesti muistiosoittimien synkronointimekanismina kuluttaja-tuottaja-tavalla. Seuraava taso laajentaa yksi-yhteen-jonot useista moneen synkronointiin ja tietovirtoihin, jotka toteutetaan käyttämällä vain SPSC-jonoja ja välityssäikeitä, mikä tarjoaa lukitsemattomia mielivaltaisia suoratoistoverkkoja, jotka vaativat vähän tai ei ollenkaan muistiesteitä, ja joten välimuistin mitätöintejä on vähän.
Ylempi kerros eli korkean tason ohjelmointi tarjoaa ohjelmointikehyksen, joka perustuu rinnakkaisiin kuvioihin. Erityisesti FastFlow tarjoaa FARM-, FARM-WITH-FEEDBACK- (eli D&C-), PIPELINE-, MAP- ja REDUCE-kuvioita ja tukee niiden mielivaltaista sisäkkäisyyttä ja koostumusta. FastFlow-kuviosarjaa voidaan laajentaa rakentamalla uusia C++-malleja.