Параллельные компьютерные системы и особенности их ОС.

Параллельные компьютерные системы– это мультипроцессорные системы с несколькими непосредственно взаимодействующими процессорами. Классические примеры: из зарубежных компьютеров - CRAY, из отечественных – "Эльбрус"; из более современных – компьютеры серии СКИФ. В настоящее время выпускаются мультипроцессорные рабочие станции - например, купив или получив в подарок настольный компьютер, Вы можете обнаружить в его составе два или даже четыре процессора. Соответственно, ОС должна обеспечивать реконфигурацию такой системы, подключение новых процессоров или удаление процессоров из системы, распараллеливание решения задачи на нескольких процессорах и синхронизацию решающих ее параллельных процессов.

Среди параллельных компьютеров выделяются тесно связанные (tightly coupled) системы, в которых процессоры разделяют общую память и таймер (такты); взаимодействие между ними происходит через общую память.

О параллельных компьютерах архитектур Very Long Instruction Word (VLIW) и Explicit Parallelism Instruction Computer (EPIC), в которых распараллеливание вычислений происходит на уровне команд, мы уже говорили в .

Многоядерные (multi-core) компьютеры(см. также ) – компьютерные системы, основанные на тесно связанных друг с другом процессорах ( ядрах ), находящихся в одном кристалле, разделяющих ассоциативную память (кэш) второго уровня и работающих на общей памяти.

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

  1. Улучшенная производительность( throughput ) – очевидно, что распараллеливание алгоритма решения задачи может позволить уменьшить суммарное время ее решения;
  2. Экономичность– в параллельной системе ОС может поручить часть работы другому процессору или ядру;
  3. Повышенная надежность– при сбое или отказе одного из процессоров ОС может переключить вычисления на другой процессор;
  4. "Дружественное" к пользователю снижение производительности (graceful degradation)– если один из процессоров отказал и выведен из конфигурации, пользователь, при правильной организации компьютера и ОС, может даже не почувствовать замедления вычислений
  5. Устойчивость к ошибкам (fail-soft system)– стабильная работа многопроцессорной системы при ошибке в аппаратуре или в программе.