Мультикомпьютеры и мультипроцессорыМультикомпьютеры и мультипроцессоры
в современной науке.в современной науке.
Подготовил студент группы ИС-21 Попов С.АПодготовил студент группы ИС-21 Попов С.А
ВведениеВведение
В любой параллельной компьютерной системе
процессоры, выполняющие разные части единого
задания, должны как-то взаимодействовать друг с
другом, чтобы обмениваться информацией. Как именно
должен происходить обмен? Для этого было
предложено и реализовано две стратегии:
мультипроцессоры и мультикомпьютеры. Ключевое
различие между стратегиями состоит в наличии или
отсутствии общей памяти. Это различие сказывается
как на конструкции, устройстве и программировании
таких систем, так и на их стоимости и размерах.
МультипроцессорыМультипроцессоры
Параллельный компьютер, в котором все процессоры
совместно используют общую физическую память,
называется мультипроцессором, или системой с общей
памятью. Все процессы, работающие в
мультипроцессоре совместно, могут иметь единое
виртуальное адресное пространство, отображенное на
общую память. Любой процесс с помощью команд
LOAD и STORE может считать слово из памяти или
записать слово в память. Больше ничего не требуется.
Два процесса имеют возможность легко обмениваться
информацией - для этого один из них просто записывает данные в
общую память, а другой их считывает.
Мультипроцессор из 16 процессоров, имеющих общую память (а);Мультипроцессор из 16 процессоров, имеющих общую память (а);
изображение, разделенное на 16 секций, каждую из которыхизображение, разделенное на 16 секций, каждую из которых
анализирует отдельный процессор (б).анализирует отдельный процессор (б).
Устройства ввода-вывода
Мультипроцессор, как и все компьютеры, должен
содержать устройства ввода-вывода (диски, сетевые адаптеры и т.
п.). В одних мультипроцессорных системах только определенные
процессоры получают доступ к устройствам ввода-вывода и,
следовательно, обладают специальными средствами ввода-
вывода. В других мультипроцессорных системах каждый
процессор может получить доступ к любому устройству ввода-
вывода. Если все процессоры имеют равный доступ ко всем
модулям памяти и всем устройствам ввода-вывода, и между
процессорами возможна полная взаимозаменяемость, такой
мультипроцессор называется симметричным (Symmetrie
Multiprocessor, SMP).
Типы мультипроцессоровТипы мультипроцессоров
Существует три типа мультипроцессоров. Они отличаются друг отСуществует три типа мультипроцессоров. Они отличаются друг от
друга механизмом доступа к общей памяти и называются UMAдруга механизмом доступа к общей памяти и называются UMA
(Uniform Memory Access - однородный доступ к памяти), NUMA(Uniform Memory Access - однородный доступ к памяти), NUMA
(Nonuniform Memory Access - неоднородный доступ к памяти) и(Nonuniform Memory Access - неоднородный доступ к памяти) и
СОМА (Cache Only Memory Access - доступ только к кэш-памяти).СОМА (Cache Only Memory Access - доступ только к кэш-памяти).
Такое разбиение на подкатегории имеет смысл, поскольку в большихТакое разбиение на подкатегории имеет смысл, поскольку в больших
мультипроцессорах память обычно делится на несколько модулей. Вмультипроцессорах память обычно делится на несколько модулей. В
UMA-машинах каждый процессор имеет одно и то же время доступа кUMA-машинах каждый процессор имеет одно и то же время доступа к
любому модулю памяти. Иными словами, каждое слово может бытьлюбому модулю памяти. Иными словами, каждое слово может быть
считано из памяти с той же скоростью, что и любое другое слово. Если этосчитано из памяти с той же скоростью, что и любое другое слово. Если это
технически невозможно, самые быстрые обращения замедляются, чтобытехнически невозможно, самые быстрые обращения замедляются, чтобы
соответствовать самым медленным, поэтому программист не заметитсоответствовать самым медленным, поэтому программист не заметит
никакой разницы. Это и значит "однородный" доступ. Такая однородностьникакой разницы. Это и значит "однородный" доступ. Такая однородность
делает производительность предсказуемой, а этот фактор очень важенделает производительность предсказуемой, а этот фактор очень важен
для создания эффективных программ.для создания эффективных программ.
МультикомпьютерыМультикомпьютеры
Во втором варианте параллельной архитектуры каждый процессор
имеет собственную память, доступную только этому процессору.
Такая схема называется мультикомпьютером, или системой с
распределенной памятью. Ключевое отличие
мультикомпьютера от мультипроцессора состоит в том, что
каждый процессор в мультикомпьютере имеет собственную
локальную память, к которой этот процессор может обращаться,
выполняя команды LOAD и STORE, но никакой другой процессор с
помощью этих команд не может получить доступ к локальной
памяти данного процессора. Таким образом, мультипроцессоры
имеют одно физическое адресное пространство, разделяемое
всеми процессорами, а мультикомпьютеры содержат отдельные
физические адресные пространства для каждого процессора.
Мультикомпьютер из 16 процессоров, каждый из которых имеет
собственную память (а); битовая карта изображения, разделенная
между 16 модулями памяти (б)
Категории мультикомпьютеровКатегории мультикомпьютеров
Мультикомпьютеры тоже можно разделить на две дополнительные
категории. К категории МРР (Massively Parallel Processor - процессор с
массовым параллелизмом) относятся дорогостоящие суперкомпьютеры,
которые состоят из большого количества процессоров, связанных
высокоскоростной внутренней коммуникационной сетью. В качестве
хорошо известного коммерческого примера можно назвать
суперкомпьютер SP/3 компании IBM.
Вторая категория мультикомпьютеров включает обычные персональные
компьютеры или рабочие станции (иногда смонтированные в стойки),
которые связываются в соответствии с той или иной коммерческой
коммуникационной технологией. С точки зрения логики принципиальной
разницы здесь нет, но мощный суперкомпьютер стоимостью в миллионы
долларов безусловно используется иначе, чем собранная конечными
пользователями компьютерная сеть, которая обходится во много раз
дешевле любой МРР-машины. Эти "доморощенные" системы иногда
называют сетями рабочих станций (Network Of Workstations, NOW),
кластерами рабочих станций (Cluster Of Workstattions, COW), или просто
кластерами (cluster).
Подведем итогПодведем итог
Мультипроцессоры сложно разрабатывать, но легко
программировать, а мультикомпьютеры легко строить, но трудно
программировать. В результате постоянно предпринимаются
попытки создания гибридных систем. Эти попытки привели к
осознанию того факта, что совместную память можно
реализовывать по-разному, причем каждый вариант будет иметь
достоинства и недостатки. Практически все исследования в
области параллельных компьютерных архитектур направлены на
создание гибридных форм, которые сочетают в себе достоинства
обеих систем. Здесь важно добиться масштабируемости, то есть
разработать такую систему, которая будет продолжать исправно
работать при добавлении все новых и новых процессоров.
Спасибо за внимание!

мультикомпьютеры и мультипроцессоры в современной науке

  • 1.
    Мультикомпьютеры и мультипроцессорыМультикомпьютерыи мультипроцессоры в современной науке.в современной науке. Подготовил студент группы ИС-21 Попов С.АПодготовил студент группы ИС-21 Попов С.А
  • 2.
    ВведениеВведение В любой параллельнойкомпьютерной системе процессоры, выполняющие разные части единого задания, должны как-то взаимодействовать друг с другом, чтобы обмениваться информацией. Как именно должен происходить обмен? Для этого было предложено и реализовано две стратегии: мультипроцессоры и мультикомпьютеры. Ключевое различие между стратегиями состоит в наличии или отсутствии общей памяти. Это различие сказывается как на конструкции, устройстве и программировании таких систем, так и на их стоимости и размерах.
  • 3.
    МультипроцессорыМультипроцессоры Параллельный компьютер, вкотором все процессоры совместно используют общую физическую память, называется мультипроцессором, или системой с общей памятью. Все процессы, работающие в мультипроцессоре совместно, могут иметь единое виртуальное адресное пространство, отображенное на общую память. Любой процесс с помощью команд LOAD и STORE может считать слово из памяти или записать слово в память. Больше ничего не требуется. Два процесса имеют возможность легко обмениваться информацией - для этого один из них просто записывает данные в общую память, а другой их считывает.
  • 4.
    Мультипроцессор из 16процессоров, имеющих общую память (а);Мультипроцессор из 16 процессоров, имеющих общую память (а); изображение, разделенное на 16 секций, каждую из которыхизображение, разделенное на 16 секций, каждую из которых анализирует отдельный процессор (б).анализирует отдельный процессор (б).
  • 5.
    Устройства ввода-вывода Мультипроцессор, каки все компьютеры, должен содержать устройства ввода-вывода (диски, сетевые адаптеры и т. п.). В одних мультипроцессорных системах только определенные процессоры получают доступ к устройствам ввода-вывода и, следовательно, обладают специальными средствами ввода- вывода. В других мультипроцессорных системах каждый процессор может получить доступ к любому устройству ввода- вывода. Если все процессоры имеют равный доступ ко всем модулям памяти и всем устройствам ввода-вывода, и между процессорами возможна полная взаимозаменяемость, такой мультипроцессор называется симметричным (Symmetrie Multiprocessor, SMP).
  • 6.
    Типы мультипроцессоровТипы мультипроцессоров Существуеттри типа мультипроцессоров. Они отличаются друг отСуществует три типа мультипроцессоров. Они отличаются друг от друга механизмом доступа к общей памяти и называются UMAдруга механизмом доступа к общей памяти и называются UMA (Uniform Memory Access - однородный доступ к памяти), NUMA(Uniform Memory Access - однородный доступ к памяти), NUMA (Nonuniform Memory Access - неоднородный доступ к памяти) и(Nonuniform Memory Access - неоднородный доступ к памяти) и СОМА (Cache Only Memory Access - доступ только к кэш-памяти).СОМА (Cache Only Memory Access - доступ только к кэш-памяти). Такое разбиение на подкатегории имеет смысл, поскольку в большихТакое разбиение на подкатегории имеет смысл, поскольку в больших мультипроцессорах память обычно делится на несколько модулей. Вмультипроцессорах память обычно делится на несколько модулей. В UMA-машинах каждый процессор имеет одно и то же время доступа кUMA-машинах каждый процессор имеет одно и то же время доступа к любому модулю памяти. Иными словами, каждое слово может бытьлюбому модулю памяти. Иными словами, каждое слово может быть считано из памяти с той же скоростью, что и любое другое слово. Если этосчитано из памяти с той же скоростью, что и любое другое слово. Если это технически невозможно, самые быстрые обращения замедляются, чтобытехнически невозможно, самые быстрые обращения замедляются, чтобы соответствовать самым медленным, поэтому программист не заметитсоответствовать самым медленным, поэтому программист не заметит никакой разницы. Это и значит "однородный" доступ. Такая однородностьникакой разницы. Это и значит "однородный" доступ. Такая однородность делает производительность предсказуемой, а этот фактор очень важенделает производительность предсказуемой, а этот фактор очень важен для создания эффективных программ.для создания эффективных программ.
  • 7.
    МультикомпьютерыМультикомпьютеры Во втором вариантепараллельной архитектуры каждый процессор имеет собственную память, доступную только этому процессору. Такая схема называется мультикомпьютером, или системой с распределенной памятью. Ключевое отличие мультикомпьютера от мультипроцессора состоит в том, что каждый процессор в мультикомпьютере имеет собственную локальную память, к которой этот процессор может обращаться, выполняя команды LOAD и STORE, но никакой другой процессор с помощью этих команд не может получить доступ к локальной памяти данного процессора. Таким образом, мультипроцессоры имеют одно физическое адресное пространство, разделяемое всеми процессорами, а мультикомпьютеры содержат отдельные физические адресные пространства для каждого процессора.
  • 8.
    Мультикомпьютер из 16процессоров, каждый из которых имеет собственную память (а); битовая карта изображения, разделенная между 16 модулями памяти (б)
  • 9.
    Категории мультикомпьютеровКатегории мультикомпьютеров Мультикомпьютерытоже можно разделить на две дополнительные категории. К категории МРР (Massively Parallel Processor - процессор с массовым параллелизмом) относятся дорогостоящие суперкомпьютеры, которые состоят из большого количества процессоров, связанных высокоскоростной внутренней коммуникационной сетью. В качестве хорошо известного коммерческого примера можно назвать суперкомпьютер SP/3 компании IBM. Вторая категория мультикомпьютеров включает обычные персональные компьютеры или рабочие станции (иногда смонтированные в стойки), которые связываются в соответствии с той или иной коммерческой коммуникационной технологией. С точки зрения логики принципиальной разницы здесь нет, но мощный суперкомпьютер стоимостью в миллионы долларов безусловно используется иначе, чем собранная конечными пользователями компьютерная сеть, которая обходится во много раз дешевле любой МРР-машины. Эти "доморощенные" системы иногда называют сетями рабочих станций (Network Of Workstations, NOW), кластерами рабочих станций (Cluster Of Workstattions, COW), или просто кластерами (cluster).
  • 10.
    Подведем итогПодведем итог Мультипроцессорысложно разрабатывать, но легко программировать, а мультикомпьютеры легко строить, но трудно программировать. В результате постоянно предпринимаются попытки создания гибридных систем. Эти попытки привели к осознанию того факта, что совместную память можно реализовывать по-разному, причем каждый вариант будет иметь достоинства и недостатки. Практически все исследования в области параллельных компьютерных архитектур направлены на создание гибридных форм, которые сочетают в себе достоинства обеих систем. Здесь важно добиться масштабируемости, то есть разработать такую систему, которая будет продолжать исправно работать при добавлении все новых и новых процессоров.
  • 11.