Каждый год появляются всё более и более мощные компьютеры. Один из способов сравнить мощности двух компьютеров – проверить,
Какими бы мощными ни были сегодня процессоры, можно попробовать построить гораздо более мощный компьютер, соединив несколько процессоров вместе. Суперкомпьютер – это компьютер исключительной производительности, построенный путём объединения множества процессоров в одну большую систему. Каждый процессор выполняет свою часть работы
Связать процессоры – значит объединить их в сеть; зачастую достаточно просто соединить компьютеры (даже на большом расстоянии) сетями, подобными телефонным, или через интернет.
Для решения некоторых задач вычисления можно разбивать на части так, чтобы процессоры работали над своими «кусочками» независимо друг от друга. Такие задачи называют
Но недостаточно уметь решать такие задачи, чтобы называться суперкомпьютером, – ведь большинство интересных задач не являются
Чем качественнее сеть, тем производительнее параллельные вычисления. Качество сети определяется:
•
•
Суперкомпьютер можно получить, организовав процессоры одним из нескольких способов.
В этих системах процессоры
В таких системах производительность тем хуже, чем дальше процессор от памяти, которую он хочет прочитать или в которую ему нужно писать. Как и SMP, эти системы используют
Это специальная высококачественная сеть для соединения изолированных компьютеров (в такой сети их обычно называют
Зачастую современные компьютеры включают в себя элементы, которые раньше имелись только в суперкомпьютерах. Например, у одного процессора может быть несколько ядер, и каждое действует как отдельный процессор – это система SMP, где несколько ядер имеют непосредственный доступ к общей памяти. У более дорогих компьютеров есть несколько разъёмов для процессоров, каждый из которых – своего рода система
NUMA, где одному разъёму соответствует набор ядер и их память.
Это новшество по вкусу всем любителям компьютерных игр. Оно необычайно быстро «создаёт» пиксели для экрана во время игры. Благодаря своей архитектуре эти процессоры идеально подходят для некоторых видов задач в суперкомпьютерах.
1 мегафлопс = 1 миллион флопс.
1 гигафлопс = 1 миллиард флопс (1000 мегафлопс).
1 терафлопс = 1000 гигафлопс.
1 петафлопс = 1000 терафлопс.
1 экзафлопс = 1000 петафлопс.
Глядя на эту табличку, легко увидеть, как выросла производительность компьютеров в последние несколько десятилетий:
• 1998: компьютер с одним процессором способен достичь производительности в 500 мегафлопс.
• 2007: множество одиночных процессоров, которые могут «разогнаться» до 10 гигафлопс.
• 2013: есть компьютеры с двумя процессорами по восемь ядер, каждое из которых теоретически имеет производительность в 20 гигафлопс. Таким образом, максимальная производительность всей системы – 320 гигафлопс. По сути, это система NUMA: общая память, шестнадцать независимых ядер… Но сегодня никому и в голову не придёт называть это суперкомпьютером – разве что мы соединим в одну сеть несколько сотен таких машин.
• Существует список пятисот самых мощных суперкомпьютеров – Top500 (www.top500.org), который обновляется дважды в год. Сейчас, на момент написания книги, большинство машин из этого списка находятся на уровне нескольких сотен терафлопс.
Однако в первой строке списка -машина с 33862,7 терафлопс (33,8627 петафлопс). Это несравненно мощнее компьютеров конца XX века!