Parallel Patterns Library
Стиль этой статьи неэнциклопедичен или нарушает нормы литературного русского языка. |
Parallel Patterns Library (рус. Библиотека параллельных шаблонов) — это библиотека Microsoft, разработанная для использования разработчиками на C++, которая предоставляет функции для многоядерного программирования[1][2]. Она поддерживается с Visual Studio 2010, и аналогична по назначению Intel Threading Building Blocks[3]. По стилю эта библиотека напоминает стандартную библиотеку C++ и хорошо сочетается с новыми возможностями стандарта C++ 11, также реализованными в Visual Studio 2010.
Например, этот последовательный цикл:
for (int x=0; x < width; ++x) { //Something parallelizable }
Может быть превращён параллельный цикл, путём замены for
на parallel_for
:
#include <ppl.h> // . . . Concurrency::parallel_for (0, width, [=](int x) { //Something parallelizable });
код подразумевает, что цикл распараллелен, но вся остальная работа выполняется библиотекой.
MSDN[4] описывает библиотеку Parallel Patterns как «императивную модель программирования, которая способствует масштабируемости и простоте использования для разработки параллельных приложений». Он использует Concurrency Runtime для планирования и управления ресурсами и предоставляет общие, безопасные типы алгоритмов и контейнеры для использования в параллельных приложениях.
Примечания
- ↑ The Visual C++ Weekly (недоступная ссылка) (March 12, 2011). Дата обращения: 6 июля 2019. Архивировано 8 октября 2011 года.
- ↑ Ivor Horton. Introducing The Parallel Patterns Library // Ivor Horton's Beginning Visual C++ 2010. — John Wiley & Sons, 2010. — С. 844. — 1272 с. — ISBN 9780470930342.
- ↑ Daniel J. Duffy. Ch. 30. Parallel Patterns Language (PPL) // Financial Instrument Pricing Using C++. — John Wiley & Sons, 2018-10-01. — С. 961-992. — 1168 с. — ISBN 9780470971192.
- ↑ Библиотека параллельных шаблонов . Microsoft Docs (4 ноября 2016). Дата обращения: 31 июля 2019. Архивировано 12 мая 2020 года.