Суперкомпьютеры Гигантские, дорогостоящие и созданы для решения критически важных задач Суперкомпьютеры превосходят обычные серверы, их производительность достигает петафлопс (10-15 операций в секунду), они потребляют мегаватты и занимают целые здания. В списке TOP500 дважды в год публикуются снимки самых мощных систем, что подчеркивает их уникальность и стоимость. Их существование ставит два фундаментальных вопроса: действительно ли для решения проблем требуется нечто большее, чем просто хорошие серверы, и оправданы ли огромные инвестиции?
Простая задача раскрывает границы наивных вычислений Подсчет шестизначных "счастливых билетов" с помощью грубой силы кажется тривиальным, пока программа с шестью вложенными циклами не столкнется с машиной, выполняющей всего десятки тысяч операций в секунду. Проверка на миллион итераций показывает, насколько простые алгоритмы могут превышать аппаратные ограничения. Симметрия может сократить часть работы, но выигрыш остается скромным. Урок очевиден: даже за простыми задачами скрывается огромная вычислительная сложность.
Параллелизм ускоряется, Сложность преобладает Подсчет заявок ведется параллельно, что приводит к затруднению, поэтому распределение чисел по процессорам приводит к немедленному ускорению. Даже при ускорении в 100 000 раз допустимые размеры увеличиваются примерно с 12 цифр до 18-20. После 22-24 разрядов экспоненциальный рост превосходит возможности даже записывающих машин. Выбор и переформулировка алгоритмов имеют большее значение, чем просто использование параллельных вычислений.
Моделирование нефтяных пластов окупает себя Разумная трехмерная сетка из 100 точек на ось дает миллион ячеек с примерно десятью функциями на ячейку и примерно 500 операциями на функцию. Добавление примерно 500 временных шагов увеличивает время выполнения одного запуска примерно до 2,5 трлн операций, а практические исследования требуют многократного повторения по мере изменения данных и моделей. Реальные настройки намного больше как для операций, так и для данных. Когда стоимость наземных скважин составляет 3-5 млн долларов, а морских – до 100 млн долларов, правильное размещение скважины позволяет сэкономить больше, чем стоимость суперкомпьютера высшего уровня.
Промышленность управляет половиной глобальных суперкомпьютерных систем Около половины систем, входящих в ТОП-500, используются в промышленности, где точное моделирование обеспечивает прямое конкурентное преимущество. Вычислительные эксперименты позволяют усовершенствовать дизайн, повысить качество продукции и сократить циклы. Это промышленное внедрение подтверждает, что суперкомпьютеры - это не академическая роскошь, а экономический инструмент, который распространяется даже на производителей бытовой техники.
Виртуальные Краш-тесты заменяют дорогостоящие столкновения Автопроизводители создают высокоточные модели, которые фиксируют геометрию и свойства материалов, а затем решают сложные конечно-элементные системы с использованием нелинейной физики на многих временных этапах. Численные результаты поразительно совпадают с результатами физических краш-тестов. Виртуальное тестирование позволяет быстро изучить варианты загрузки, компоновки и конфигурации пассажиров, не повреждая каждый раз новые транспортные средства. В результате достигается значительная экономия средств и улучшается дизайн.
Формула-1 меняет аэродинамические трубы на ПРОВАЛЫ В 2006 году ведущая команда разработчиков установила суперкомпьютер с производительностью около 12 терафлопс, а позже решила увеличить его примерно до 50 терафлопс, вместо того чтобы покупать второй аэродинамический туннель. Моделирование с высокой степенью детализации отражает аэродинамику, сцепление шин с дорожкой и поведение двигателя. Другие команды последовали их примеру, объединив вычисления с традиционной работой в аэродинамической трубе. Вместе эти инструменты ускоряют разработку и принятие решений.
Суперкомпьютеры масштабно отбирают кандидатов на наркотики Разработка лекарств нацелена на активный участок белка путем поиска ингибиторов, которые связывают и блокируют его. Оценка взаимодействия каждого кандидата может занять от нескольких минут до нескольких часов, но необходимо провести скрининг десятков или сотен тысяч. В результате пятидневного исследования антитромботических препаратов, проведенного с использованием национальных систем, было получено несколько многообещающих соединений, некоторые из которых позже были запатентованы. Такой подход сокращает раннюю стадию обнаружения, хотя исследования токсичности и другие испытания все равно должны проводиться традиционными методами.
Проектирование космических аппаратов Требует масштабного Моделирования Начиная с ранних орбитальных полетов и заканчивая современными программами, анализ полета опирался на вычислительную технику. Проектирование многоразового транспортного средства, приземляющегося на двигателях, требует моделирования множества двигателей, работающих в разных режимах. Запуски потребляют около десяти часов работы тысяч процессоров и должны повторяться для изучения параметров. Сам по себе спрос на ресурсы определяет масштабы современной космической техники.
Вычислительная наука становится третьим столпом Наряду с теорией и физическими экспериментами, вычисления в настоящее время используются во многих областях на равных. В случае глобального изменения климата эксперименты в реальных условиях непрактичны, однако модели могут прогнозировать будущую эволюцию. Проверка достоверности таких моделей основана на ретроспективном анализе: начните с данных столетней давности и посмотрите, соответствует ли сегодняшнее состояние действительности. Моделирование с высоким разрешением воспроизводит тонкие структуры процессов, которые иначе были бы недоступны для измерения.
Прогнозы по вечной мерзлоте Определяют риски для инфраструктуры Модели, учитывающие сценарии антропогенного воздействия, позволяют оценить, как быстро и насколько далеко отступит вечная мерзлота. Ставки высоки: города, линии электропередач, нефте- и газопроводы зависят от стабильности мерзлого грунта. Прогнозы служат основой для принятия решений в области безопасности, технического обслуживания и инвестиций в обширных регионах. Суперкомпьютеры делают возможными эти крупномасштабные связанные вычисления.
Моделирование городов для обеспечения более безопасного проектирования Городское планирование может использовать вычисления, комбинируя розы ветров, планировку зданий и источники выбросов, такие как автомагистрали или заводы. Моделирование позволяет составить карту рассеивания загрязняющих веществ, выявить очаги концентрации и спрогнозировать зоны осаждения. Оно также выявляет образование вихрей и опасные коридоры сильного ветра в жилых кварталах. Несмотря на то, что принятие решений варьируется, существуют возможности для создания более здоровых кварталов.
Сложная математика Криптографии нуждается в тяжелых машинах Определение того, является ли огромное целое число, состоящее из сотен цифр, простым, или разложение таких чисел на множители, лежит в основе современной криптографии. Несмотря на сложную математику, вычислительная нагрузка огромна. Проблемы такого масштаба не по силам персональным компьютерам в разумные сроки. Для решения этих задач требуются серьезные суперкомпьютерные ресурсы.
Сертификация Двигателей с помощью Вычислений Авиационные двигатели и газовые турбины требуют сертификации, подтверждающей безопасность в экстремальных условиях. Такие сценарии, как срыв лопасти или попадание в организм птицы, должны быть проанализированы для обеспечения непрерывной работы или безопасного выхода из строя. Численные эксперименты дополняют и сокращают дорогостоящие физические испытания, не исключая их. Крупные производители двигателей полагаются на суперкомпьютеры для выполнения этих обязательств.
Масштабные потребности турбомашин CFD Даже модели на уровне компонентов используют сетки из многих миллионов элементов. Соответствующие вычисления выполняются за 10^ 16-10^17 операций, что соответствует уровням производительности от терафлоп до петафлоп. Переходные режимы еще больше усложняют работу, и при практической оптимизации запускаются десятки и сотни параллельных запусков. Совокупные требования расширяют возможности существующих систем.
Блокбастеры, снятые на суперкомпьютерах При просмотре полнометражного фильма со скоростью 24 кадра в секунду получается примерно 120 000 кадров, при этом на рендеринг каждого кадра требуется около двух процессорных часов. Общая производительность достигает примерно 20 миллионов процессорных часов. Производители приобрели кластер суперкомпьютерного класса с 8000 узлами, чтобы обеспечить поставку в установленные сроки. Инвестиции оказались коммерчески выгодными, позволив своевременно и качественно выпускать продукцию.
Предоставление денежных средств, а не наличных Программа министерства энергетики стимулирует развитие суперкомпьютеров, выделяя больше процессорных часов на лучшие системы, чем средств. Предложения должны объединить промышленную фирму, академическую группу и суперкомпьютерный центр вокруг важной проблемы. За один год было задействовано около 1,6 миллиарда процессорных часов, что эквивалентно примерно двадцати национальным флагманским компьютерам, работающим полный рабочий день. Спрос огромен, и это лишь малая часть доступной мощности.
Более умные алгоритмы превосходят грубую силу Задача с билетами, кажущаяся экспоненциальной, допускает формулировку с квадратичной сложностью. С помощью такого метода даже сотни и тысячи задач быстро решаются на ноутбуке. Мораль универсальна: сначала проанализируйте, снизьте алгоритмическую сложность и только потом переходите к большему количеству аппаратного обеспечения. Суперкомпьютеры не являются заменой слабым алгоритмам.
Не каждая работа масштабируется с увеличением числа работников Некоторые задачи, например, вскапывание большого сада, легко распределяются между многими и ускоряются почти линейно. Другие, например, копка котлована объемом в один кубический метр, практически не требуют параллелизма и страдают от помех. Задачи, требующие от бригадира разработки плана на один час, прежде чем какая-либо бригада приступит к заливке бетона, предполагают фиксированный последовательный этап, который никакие дополнительные рабочие не могут сократить.
Закон Амдаля: Жесткий предел ускорения Ускорение ограничено тем, что часть работы должна выполняться последовательно. Даже при использовании бесконечного числа процессоров 10-процентная доля последовательной обработки увеличивает общее ускорение примерно в десять раз. Эффективное параллельное программное обеспечение минимизирует эту долю последовательной обработки, что позволяет добиться значительных результатов.
Ищите параллелизм в ДНК алгоритма Информационная структура алгоритма кодирует зависимости, обеспечивающие упорядоченность и независимость, обеспечивающие параллелизм. Сопоставление этой структуры предоставляет ресурс параллелизма, который определяет масштабируемость. Его извлечение и использование необходимо для использования систем с десятками или сотнями тысяч процессоров сейчас и в будущем.
От эволюционирующих методов к облакам и социальным графикам Новые подходы часто заменяют более высокую стоимость последовательного выполнения на гораздо лучшую параллельную масштабируемость, со временем перенося задачи с суперкомпьютеров на обычные системы. Социальные сети создают графики с десятками или сотнями миллионов узлов и ребер, анализ которых требует больших ресурсов суперкомпьютера. Облачные вычисления расширяют возможности распределенных решений, распределяя работу по обширным пулам стандартных узлов, которыми управляют крупные провайдеры, оставляя пользователей в неведении относительно того, где выполняется их работа.