Реклама:

Добиваться повышения производительности компьютеров просто за счет увеличения тактовой частоты становится все сложнее, так как появляется проблема отвода тепла. Поэтому разработчики обратили свое внимание на параллелизм как на средство ускорения вычислений. Параллелизм может вводиться на разных уровнях, как на самых нижних, где элементы очень жестко связаны друг с другом, так и на верхних, где связи весьма слабые.

Нижний уровень - это внутрипроцессорный параллелизм, когда параллельные действия выполняются на базе единственной микросхемы. Одной из форм внутри-процессорного параллелизма является параллелизм на уровне команд; в этом случае одна команда или последовательность команд разбивается на микрооперации, которые могут выполняться параллельно разными функциональными блоками. Второй формой внутрипроцессорного параллелизма является многопоточность; в этом случае процессор может поочередно переключаться между несколькими программными потоками. В результате получается виртуальный мультипроцессор. Третьей формой внутрипроцессорного параллелизма является однокристальный мультипроцессор. В однокристальном мультипроцессоре два или более ядер размещаются на одной микросхеме, что позволяет им работать одновременно.

На следующем уровне вверх по иерархии располагаются сопроцессоры. Обычно сопроцессор выполняется в виде встраиваемой платы, которая позволяет увеличить вычислительные возможности процессора в некоторых специальных областях, таких как обслуживание сетевого протокола или обработка мультимедийных данных. Эти дополнительные процессоры снижают нагрузку на главный процессор, предоставляя ему возможность делать другие вещи, пока они решают узкоспециализированные задачи.

Уровнем выше находятся мультипроцессоры с общей памятью. Такие системы содержат два или более полноценных процессора, совместно использующих общую память. Мультипроцессоры с однородным доступом к памяти (иМА-ма-шины) могут взаимодействовать через общую шину (шину слежения) либо через сеть с перекрестной или многоступенчатой коммутацией. Они характеризуются унифицированным временем доступа к любым модулям памяти. В противоположность им в МиМА-мультипроцессорах всем процессам также предоставляется общее адресное пространство, но время доступа к удаленным модулям заметно больше, чем к локальным. Наконец, в СОМА-мультипроцессорах строки кэша по запросу перемещаются от машине к машине, но "настоящего дома", как в других схемах, у этих строк нет.

Мультикомпьютерами называют системы с множеством процессоров, но без общей памяти. Каждый из них имеет собственную локальную память и связывается с другими посредством сообщений. МРР-машины, такие как BlueGene/L производства IBM, - это большие мультикомпьютеры, связанные специализированными коммуникационными сетями.

Мультикомпьютеры часто программируются с помощью специальных программных пакетов, таких как MPI, которые позволяют разрабатывать приложения, ориентированные на передачу сообщений. Альтернативные схемы связаны с использованием общей памяти на прикладном уровне. Сюда можно отнести разбитое на страницы адресное пространство в DSM, пространство кортежей в Linda, объекты в Огса и Globe. В DSM моделируется общая память на уровне страниц, и в этом система DSM напоминает NUMA-машину, за исключением, возможно, более высоких издержек при удаленных обращениях.

На самом верхнем уровне располагаются системы распределенных вычислений. Это - наиболее слабо связанные системы; в них для решения общих задач объединяются целые организации, совместно используя через Интернет вычислительные возможности своих компьютеров, данные и другие ресурсы.

Распределенные вычисления || Оглавление || Вопросы и задания8