Основные концепции архитектуры высокопроизводительных вычислительных систем.
Конвейер
Идея конвейера состоит в том, чтобы сложную операцию разбить на множество более простых, которые могут выполняться одновременно. При движении объектов по конвейеру на разных его участках выполняются разные операции, а при достижении каждым объектом конца конвейера он окажется полностью обработанным. Конвейеры применяются как при обработке команд, так и в арифметических операциях.
Векторная обработка данных
Векторный процессор "умеет" обрабатывать одной командой не одно единственное значение, а сразу массив (вектор) значений.
Векторные компьютеры различаются тем, как операнды передаются командам процессора. Здесь можно выделить следующие основные схемы:
- из памяти в память - в этом случае операнды извлекаются из оперативной памяти, загружаются в арифметическое устройство и результат возвращается в оперативную память;
- из регистра в регистр - операнды вначале загружаются в векторные регистры, затем операнд передается в арифметическое устройство и результат возвращается в один из векторных регистров.
Процессоры для параллельных компьютеров
Идея параллелизма, как средства увеличения быстродействия ЭВМ, возникла очень давно - еще в 19-м веке.
Принято выделять четыре уровня параллелизма:
- Параллелизм заданий - каждый процессор загружается своей собственной независимой от других вычислительной задачей.
Параллелизм такого типа представляет интерес скорее для системных администраторов, чем рядовых пользователей;
- Параллелизм на уровне программы - вычислительная программа разбивается на части, которые могут выполняться одновременно на различных процессорах;
- Параллелизм команд - обычно реализован на низком уровне, это, например, конвейеры и т.д.;
- Параллелизм на уровне машинных слов и арифметических операций - в некоторых ситуациях, например, сложение двух операндов выполняется одновременным сложением всех их двоичных разрядов.
Оперативная память
Характеристики оперативной памяти и особенности ее устройства являются важнейшим фактором, от которого зависит быстродействие компьютера.
Принята следующая классификация параллельных компьютеров по архитектуре подсистем оперативной памяти:
- системы с разделяемой памятью, у которых имеется одна большая виртуальная память и все процессоры имеют одинаковый доступ к данным и командам, хранящимся в этой памяти;
- системы с распределенной памятью, у которых каждый процессор имеет свою локальную оперативную память и к этой памяти у других процессоров нет доступа.