Перейти к содержимому
FF

FastFlow for Mac

Издатель: Computer Science Department
Проверено на вирусы Mac Free
Скачать v2.0.0 127 скачиваний
Версия2.0.0
Издатель Computer Science Department
Дата выпуска30 дек. 2012 г.
Дата добавления30 дек. 2012 г.
Требования ОС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
ТребованияMulticore and distributed platforms. Also working on Linux.
Всего скачиваний127
ЦенаFree

Описание

FastFlow — это среда параллельного программирования C++, предназначенная для упрощения разработки эффективных приложений для многоядерных платформ. Ключевое видение FastFlow заключается в том, что простота разработки и эффективность времени выполнения могут быть достигнуты за счет повышения уровня абстракции на этапе проектирования, что дает разработчикам подходящий набор шаблонов параллельного программирования, которые можно эффективно скомпилировать на целевых платформах.

FastFlow концептуально спроектирован как стек уровней, которые постепенно абстрагируют параллелизм разделяемой памяти на уровне ядер вплоть до определения полезных программных конструкций, поддерживающих структурированное параллельное программирование на многоядерных и многоядерных архитектурах с когерентной кэш-памятью и их кластерах. (см. http://di.unito.it/fastflow).

Эти архитектуры включают стандартные однородные многоядерные системы, такие как Intel Core, AMD K10 и т. д. FastFlow изначально поддерживает потоковый параллелизм, поскольку он реализует шаблоны параллелизма в виде графов потоков данных — так называемые потоковые сети.

Поддержка во время выполнения платформы FastFlow обеспечивает эффективную реализацию очередей FIFO с одним производителем и одним потребителем (SPSC). Очереди FastFlow SPSC не блокируются, не требуют ожидания и не используют блокированные операции. Очередь SPSC в основном используется как механизм синхронизации для указателей памяти в режиме потребитель-производитель. Следующий уровень расширяет очереди «один к одному» до синхронизаций «многие ко многим» и потоков данных, которые реализуются с использованием только очередей SPSC и потоков арбитра, тем самым обеспечивая произвольные потоковые сети без блокировок, требующие небольшого количества барьеров памяти или вообще не требующие их вообще, и таким образом, несколько инвалидаций кеша.

Верхний уровень, т. е. программирование высокого уровня, обеспечивает структуру программирования, основанную на параллельных шаблонах. В частности, FastFlow предоставляет шаблоны FARM, FARM-WITH-FEEDBACK (т. е. D&C), PIPELINE, MAP и REDUCE, а также поддерживает их произвольную вложенность и композицию. Набор шаблонов FastFlow можно расширить, создав новые шаблоны C++.

Похожие программы

Альтернативы