Здравствуйте, koenig, Вы писали:
K>Архитектура «Эльбрус‑Б» построена на принципе параллельных вычислений. Она включает аппаратную часть, язык программирования и операционную систему. Система позволяет выполнять много задач одновременно. Это и дает прирост в производительности.
K>разве это не исчерпывающая инфа?
Нет. Есть много видов паралелилизма:
Параллелизм на уровне команд (ILP — Instruction Level Parallelism)
Выполнение нескольких инструкций процессора одновременно — реализуется в суперскалярных процессорах
Конвейеризация (Pipeline parallelism)
Суть — разделение выполнения инструкции на этапы (fetch → decode → execute → write-back)
На каждом такте разные инструкции находятся на разных стадиях. Пример: в 5-ступенчатом конвейере можно выполнять одну новую команду за такт , даже если она занимает 5 тактов в целом.
Параллелизм на уровне потоков (TLP — Thread Level Parallelism)
Выполнение нескольких потоков одновременно
Параллелизм на уровне данных (DLP — Data Level Parallelism)
Одна команда применяется к нескольким данным сразу — SIMD-инструкции
Data Parallelism
Это более высокий уровень абстракции, заключается в том, чтобы разделить большие массивы данных и параллельно обработать их разными потоками или узлами. Примеры — вычисления на GPU, вычисления в распределённых системах.
Параллелизм на уровне памяти (Memory Level Parallelism)
Параллельное обращение к разным уровням памяти — Многоканальные шины памяти
Параллелизм на уровне устройств (Device Level Parallelism)
Использование параллельных вычислений на разных устройствах
Параллелизм на уровне систем (System Level Parallelism)
Распределенные вычисления в сети
Кластерные вычисления
Облачные вычисления
Когда ты думаешь о параллелилизме, и читаешь "Система позволяет выполнять много
задач одновременно.", то становится совсем непонятно — о каких задачах речь?