Русская Википедия:Parallel Patterns Library

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Шаблон:Стиль статьи

Parallel Patterns Library (Шаблон:Lang-ru) — это библиотека 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 для планирования и управления ресурсами и предоставляет общие, безопасные типы алгоритмов и контейнеры для использования в параллельных приложениях.

Примечания

Шаблон:Примечания

Шаблон:Compu-prog-stub