Многопоточная обработка данных

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

Многопоточная обработка данных (англ. Multi-data-stream processing) — программный и/или аппаратный способ построения архитектуры оборудования[en], позволяющий осуществлять одновременную обработку двух или более последовательностей данных под управлением одной или более последовательностей команд (см. Многопоточность).

Общая характеристика[править]

При многопоточной обработки данных происходит разбиение больших заданий на более мелкие, называемые потоками. Многопоточная обработка данных позволяет значительно уменьшить время выполнение задач, но только теми программами, которые написаны с расчётом на такую обработку. В некоторых программах многопоточная обработка организуется с использованием фоновых заданий[1].

В зависимости от количества потоков команд и данных и от организации системы различают следующие архитектуры:

  • архитектура с одним потоком команд и несколькими потоками данных (SIMD), например векторный или матричный процессоры;
  • архитектура с параллельно-централизованным управлением потоком данных (Multiple Single Instruction Multiple Data — MSIMD);
  • архитектуры с множеством потоков данных и множеством потоков команд (MIMD), а именно: тесно связанные, близко связанные или слабо связанные;
  • структурированные массивы элементов обработки, включая систолические массивы[2].

Источники[править]

Ссылки[править]

Runi.svg Одним из источников этой статьи является статья в википроекте «Руниверсалис» («Руни», руни.рф), называющаяся «Многопоточная обработка данных».
Материал указанной статьи полностью или частично использован в Циклопедии по лицензии CC BY-SA.
Всем участникам Руниверсалиса предлагается прочитать «Обращение к участникам Руниверсалиса» основателя Циклопедии и «Почему Циклопедия?».