FastFlow is een C ++ parallel programmeren kader gericht op vereenvoudiging van de ontwikkeling van efficiënte toepassingen voor multi-core platforms. De belangrijkste visie van FastFlow is dat het gemak-of-ontwikkeling en runtime-efficiëntie kan zowel worden bereikt door het verhogen van het abstractieniveau van de ontwerpfase, waardoor ontwikkelaars met een geschikte set van parallel programmeren patronen die efficiënt kunnen worden samengesteld op het doel platformen.
FastFlow is conceptueel ontworpen als een stapel lagen die progressief abstracte het gedeeld geheugen parallellisme aan het niveau van de kernen tot de definitie van bruikbare programmeerconstructies ondersteunen gestructureerd parallel programmeren op de cache-coherent gedeeld geheugen multi- en veel- core-architecturen en clusters van hen (zie http://di.unito.it/fastflow).
Deze architecturen omvatten grondstoffen, homogene, multi-core systemen zoals Intel Core AMD K10, enz FastFlow ondersteunt native beek parallellisme omdat zij uitvoering parallellisme patronen als data-flow grafieken - zogenoemde streaming netwerken.
De run-time ondersteuning van de FastFlow framework biedt een efficiënte uitvoering van de Single-Producer-Single-Consumer (SPSC) FIFO wachtrijen. FastFlow SPSC wachtrijen zijn lock-vrij, wacht-vrij, en niet in elkaar grijpende operaties niet gebruiken. De SPSC wachtrij wordt hoofdzakelijk gebruikt als synchronisatie mechanisme voor het geheugen pointers in een consument-producent mode. De volgende tier up breidt één-op-één wachtrijen te many-to-many synchronisaties en gegevensstromen, die worden uitgevoerd met behulp van slechts SPSC wachtrijen en arbiter draden, waardoor lock-vrij willekeurige streaming netwerken die weinig of geen geheugen barrières vereist, en dus weinig cache ongeldigmakingen.
De bovenste laag, dwz hogere programmeertalen, biedt een programmering kader op basis van parallelle patronen. In het bijzonder, FastFlow biedt boerderij, boerderij-met-FEEDBACK (dwz D & C), pijpleiding, MAP en het verminderen van patronen, en ondersteunt hun willekeurige nesten en samenstelling. De FastFlow patroon set kan verder worden uitgebreid door de bouw van de nieuwe C ++ templates
Wat is nieuw in deze release:.
Automatische kern pinning. Nieuwe patronen (kaart, te verminderen). Verbeterde prestaties. Ondersteuning voor clusters van SMP. Veel verbeteringen en fixes
Eisen .
multicore en gedistribueerd platforms. Ook het werken op Linux.
Reacties niet gevonden