Высокопроизводительные алгоритмы для кластеров
Назначение и области применения высокопроизводительных алгоритмов Существует широкий круг вычислительных задач, требующих для своего решения значительно больших вычислительных ресурсов, чем может предоставить обычный персональный компьютер (ПК). Таким задачам необходимо:
большее быстродействие (Пример 1)
больший объем оперативной памяти (Пример 2)
большое количество передаваемой информации (Пример 3)
обработка и хранение большого объема информации (Пример 4)
Если присутствует хотя бы одно из перечисленных требований, то использование высокопроизводительных вычислений необходимо и оправдано.
В настоящее время фундаментальные и прикладные проблемы, эффективное решение которых возможно только с использованием высокопроизводительных вычислений, объединены понятием "Grand challenges", которое включает следующие задачи:
Предсказания погоды, климата и глобальных изменений в атмосфере
Науки о материалах
Построение полупроводниковых приборов
Сверхпроводимость
Структурная биология
Разработка фармацевтических препаратов
Генетика
Квантовая хромодинамика
Астрономия
Транспортные задачи
Гидро- и газодинамика
Управляемый термоядерный синтез
Эффективность систем сгорания топлива
Геоинформационные системы
Разведка недр
Наука о мировом океане
Распознавание и синтез речи
Распознавание изображений
а также многие другие...
(Пример 1)
Сложные, многомерные задачи, которые необходимо решить в течение определенного, достаточно ограниченного времени, требуют обеспечения большого быстродействия. Один из наиболее характерных примеров — задачи прогноза погоды. Область решения (атмосфера) разбивается на отдельные пространственные ячейки, причем для расчета временных изменений вычисления в каждой ячейке повторяются много раз. Если объем ячейки равен 1 км3, то для моделирования 10 км слоя атмосферы потребуется 5х108 таких ячеек. Предположим, что вычисления в каждой ячейке потребуют 200 операций с плавающей точкой, тогда за один временной шаг потребуется выполнить 1011 операций с плавающей точкой. Для того, чтобы произвести расчет прогноза погоды с заблаговременностью 10 дней с 10-ти минутным шагом по времени, компьютеру производительностью 100 Mflops (108 операций с плавающей точкой в секунду) потребуется 107 секунд или свыше 100 дней. Для того, чтобы произвести расчет за 10 мин, потребуется компьютер производительностью 1.7 Tflops (1.7X1012 операций с плавающей точкой в секунду)
(Пример 2)
Например, требование службы погоды Германии состоит в том, чтобы расчет прогноза на день по локальной модели с заданным пространственным и временным разрешением занимал не более получаса машинного времени. Исследования, проведенные в GMD (Германия), показали, что таким требованиям способны удовлетворить только большие векторные системы, состоящие, как минимум, из 512 процессоров [Joppich W. and Mierendorff H., ICCS2001 Proceedings ].
(Пример 3)
К категории задач, требующих большого объема оперативной памяти, относятся, например, задачи гидро- и газодинамики по расчету течений сложной пространственно-временной структуры с учетом различных физических и химических процессов. Такие задачи являются, как правило, многомерными, и расчет по каждому направлению хотя бы для нескольких точек требует оперативной памяти, превышающей 10 Гбайт. В квантовой химии неэмпирические расчеты электронной структуры молекул требуют вычислительных затрат, пропорциональных N4 или N5, где N условно характеризует число молекул. Сейчас многие молекулярные системы вынужденно исследуются в упрощенном модельном представлении, что связано с нехваткой вычислительных ресурсов.
(Пример 4)
Требование обеспечения большого количества передаваемой информации характерно для задач гидро- и газодинамики с меняющимися граничными условиями, когда вычислительный алгоритм постоянно требует подведения новой информации; и задач экономической оптимизации, описывающих поведение системы, погруженной в среду с непрерывно меняющимися свойствами, от которых зависит состояние системы. [В начало страницы]
Проблема обработки и хранения большого объема информации характерна для задач астрономии, спектроскопии, биологии, ядерной физики. Так, в биотехнологической индустрии для отслеживания и анализа работы десятков тысяч протеиновых клеток, каждая из которых может испытывать миллионы различных реакций, требуется суперкомпьютер, который способен обрабатывать и хранить огромные массивы данных.
Осуществление международных программ в области ядерной физики, например, программы проведения экспериментов в CERN и построения распределенной сети научных исследований GRID, подразумевает обработку и анализ данных исследований в научных центрах разных стран и организацию доступа к ним ученых всего мира. Естественно, что одной из ключевых задач здесь является организация эффективного хранения огромных массивов информации.
http://skif.pereslavl.ru