<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Как быстрее всего решать задачи квантового и классического атомистического моделирования, используя современное суперкомпьютерное программное и аппаратное обеспечение?\ast</article-title>
      </title-group>
      <pub-date>
        <year>2015</year>
      </pub-date>
      <fpage>215</fpage>
      <lpage>226</lpage>
      <abstract>
        <p>Объединенный институт высоких температур РАН Развитие аппаратного обеспечения для высокопроизводительных расчетов опережает адаптацию алгоритмов для таких фундаментальных математических алгоритмов как классическая и квантовая молекулярная динамика. Большое разнообразие выбора обуславливает необходимость ясных критериев, основанных на вычислительной эффективности определенного алгоритма на определенном аппаратном обеспечении. Тест LINPACK не может более служить этой цели. В этой работе мы рассматриваем основанную на практических соображениях метрику «время решения - пиковая производительность». В этой метрике мы сравниваем различное аппаратное обеспечение (как современное, так и вышедшее из употребления) на примере тестов программного обеспечения LAMMPS, GROMACS, NAMD и CP2K, широко используемых для атомистического моделирования. Показано, что рассмотренная метрика может служить для однозначного сравнения различных комбинаций центральных процессоров, ускорителей и интерконнекта.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        молекулярной динамики [5,6]. На них проводятся рекордные по числу частиц
молекулярнодинамические расчеты [
        <xref ref-type="bibr" rid="ref4">7</xref>
        ].
      </p>
      <p>В сложившейся ситуации при наличии большого разнообразия аппаратного
обеспечения для высокопроизводительных суперкомпьютерных расчетов особенную актуальность
приобретает вопрос сравнения между собой различных альтернативных решений. Целью
анализа должна быть эффективность связи 1) аппаратного обеспечения, 2) конкретной
математической модели или класса моделей и 3) численных алгоритмов, в том числе с учетом
уже существующего программного обеспечения (ПО) и сложности их адаптации на новые
типы аппаратного обеспечения.</p>
      <p>Популярный тест LINPACK, использующийся для ранжирования суперкомпьютеров,
не отражает особенностей многих современных алгоритмов, в том числе и алгоритмов
атомистического моделирования, являющихся предметом этой статьи. Для данного класса
задач это приводит к существенному отличию между реальной и теоретически максимальной
производительностью [8, 9]. Отсюда следует, что необходим анализ эффективности
работы конкретных программ и алгоритмов на различных архитектурах. В качестве примеров
аппаратного обеспечения рассматриваются лучшие суперкомпьютерные системы России.
Анализируемые математические модели соответствуют стандартным примерам:
леннардджонсовская жидкость (типичная система для задач статистической физики, физики
конденсированных сред и физической химии), белковая молекула в водном растворе и
квантовый расчет молекул воды. В качестве примера ПО мы используем популярные пакеты для
классических и квантовых задач атомистического моделирования: LAMMPS, GROMACS,
NAMD, CP2K.</p>
      <p>
        Развитие современных многомасштабных моделей в физике, химии, биологии,
материаловедении и других областях существенным образом основано на моделировании процессов
на атомистическом уровне. При этом даже достигнутый на сегодня рекордный размер
моделей в триллионы частиц [
        <xref ref-type="bibr" rid="ref4">7</xref>
        ] соответствует, например, для металла при нормальной
плотности объему всего в несколько мкм3. Задача увеличения максимальных доступных времен
молекулярно-динамических расчетов еще сложнее. Разработка подобных вычислительных
методов неразрывно связана с прогрессом в суперкомпьютерных технологиях.
2. Сравнение современных ускорителей
2.1. NVIDIA GPU
      </p>
      <p>Распространение графических процессоров для научных вычислений произошло за счет
появления специальных технологий программирования CUDA и OpenCL. В настоящее
время наиболее распространены две архитектуры компании NVIDIA: Fermi и Kepler. Пик
популярности архитектуры Fermi пришелся на 2012 год, теперь она вытесняется более
новой архитектурой Kepler. Архитектура Kepler обеспечивает большее быстродействие, имеет
больший объем памяти, а также поддерживает последние версии спецификации CUDA.
В работе исследовалась работа видеокарт NVIDIA X2070 архитектуры GF100 (Fermi) и
NVIDIA K40 архитектуры GK110 (Kepler). Задачи на видеокартах выполняются по
принципу SIMD (одиночный поток команд и множественный поток данных single instruction
multiple data). Базовой единицей при запуске задачи является поток (thread), выполняемый
на одном ядре. Потоки объединяются в блоки (block), запускаемые на одном
мультипроцессоре. При этом они имеют доступ к одним и тем же данным в регистрах и разделяемой
памяти. Потоки запускаются группами из 32 единиц, называемых варпами (warp). Принцип
SIMD подразумевает, что одна команда применяется ко всем потокам в варпе.</p>
      <p>Видеокарты архитектуры GF100 имеют 14 потоковых мультипроцессоров, каждый
состоит из 32 вычислительных ядер, 4 устройств для расчета трансцендентных функций с
одинарной точностью. Вычислительные ядра работают на частоте 1150 МГц, только
половина из них может выполнять операции с двойной точностью. Развитие
производительности видеокарт идет по пути увеличения вычислительной мощности мультипроцессоров.
Мультипроцессор архитектуры GK110 имеет 192 вычислительных ядра, 64 из них могут
выполнять операции с двойной точностью. Ядра работают на частоте 745 МГц. На
видеокарте установлено 15 таких мультипроцессоров. Число ядер увеличилось более чем в 6 раз,
для работы с ними число одновременно запускаемых потоков на мультипроцессоре
также увеличено. Вдвое увеличено число регистров на поток для повторного использования
переменных. Также появилась поддержка динамического параллелизма — потоки GPU
могут генерировать новые потоки без обращения к CPU, что может давать преимущества на
некоторых задачах.</p>
      <p>Тестирование видеокарт поколения Fermi и более старого Tesla на алгоритмах
молекулярной динамики проводилось в работе [10]. Показано, что относительная
производительность видеокарт от числа ядер хорошо описывается законом Амдала, то есть имеет место
ограничение роста производительности из-за невозможности обеспечить стопроцентную
параллелизацию алгоритма.
2.2. Intel Xeon Phi
Таблица 1. Сравнение ускорителей, используемых для расчетов в данной работе
Ускоритель
Число ядер
Объем памяти, Гб
Тактовая частота, ГГц</p>
    </sec>
    <sec id="sec-2">
      <title>R\mathrm{p}\mathr{eathrm{a}\mathrm{k} с двойной точностью, ТФлопс</title>
    </sec>
    <sec id="sec-3">
      <title>R\mathrm{p}\mathr{eathrm{a}\mathrm{k} с одинарной точностью, ТФлопс</title>
      <p>Потребляемая мощность, Вт</p>
      <sec id="sec-3-1">
        <title>NVIDIA</title>
        <p>X2070</p>
      </sec>
      <sec id="sec-3-2">
        <title>NVIDIA Intel Xeon Phi K40 SE10X 448 6</title>
        <p>2.3. Особенности реализации операций с плавающей точкой на
ускорителях
Как на ускорителях NVIDIA GPU, так и на сопроцессорах Intel Xeon Phi, операции
двойной точности с плавающей точкой поддерживают набор инструкций
умножения-сложения с однократным округлением (fused multiply-add — FMA). При этом за один такт
может выполняться одна операция сложения и одна операция умножения вида y=a*x+b без
потери точности. Это позволяет добиться ускорения в алгоритмах, требующих
суммирования произведений, например, перемножение матриц или вычисление значения многочлена
по схеме Горнера.</p>
        <p>Некоторые особенности возникают при расчете пиковой производительности в режиме
одинарной точности. Производительность Intel Xeon Phi увеличивается в 2 раза за счет
того, что в каждый регистр помещается в 2 раза больше данных. Видеокарты NVIDIA имеют
ядра, которые работают только в режиме одинарной точности (single precision units — SPU),
и ядра, поддерживающие режим двойной точности (double precision units DPU). Рост
производительности в этом случае зависит от отношения SPU к DPU. Каждый SPU за 1 такт
может выполнять одну операцию FMA и одну операцию умножения, то есть три операции с
плавающей точкой на один такт. Также есть ядра, поддерживающие на аппаратном уровне
вычисление трансцендентных функций с одинарной точностью. Их обычно не учитывают
при расчете пиковой производительности.</p>
        <p>В алгоритмах молекулярной динамики большую часть времени расчета занимает
построение списка соседей и вычисление сил взаимодействия между атомами. Однако доля
операций, в которых можно использовать инструкции FMA, ничтожна. В результате
выполнения любой одиночной операции сложения/умножения фактически приводит к тому, что
половина вычислительной мощности ускорителя или сопроцессора остается
незадействованной. В отличие от ускорителей процессоры Intel поколения Sandy Bridge и Ivy Bridge,
установленные сегодня на большинстве современных суперкомпьютеров, не поддерживают
набор инструкций FMA на аппаратном уровне.</p>
        <p>
          Используемые в работе ускорители сравниваются в таблице 1.
3. Реализация атомистических алгоритмов на ускорителях
В данной работе для тестов использовались популярные пакеты программ для
атомистического моделирования LAMMPS [
          <xref ref-type="bibr" rid="ref10">16</xref>
          ], GROMACS [
          <xref ref-type="bibr" rid="ref11">17</xref>
          ], NAMD (классические задачи) и
CP2K (квантовые задачи).
Таблица 2. Поддерживаемые архитектуры различных модулей пакета программ LAMMPS
Гибридная архитектура
        </p>
      </sec>
      <sec id="sec-3-3">
        <title>USER-CUDA GPU</title>
      </sec>
      <sec id="sec-3-4">
        <title>KOKKOS USER-INTEL</title>
        <p>
          GPU
Intel Xeon Phi, «родной» режим
Intel Xeon Phi, режим разгрузки
+
+
+
+
+
Модули предназначены для расширения базового функционала, часть из них
позволяет проводить расчеты на гибридной архитектуре. Для расчетов с использованием
GPUускорителей существует 3 разных модуля, которые имеют названия «GPU» [
          <xref ref-type="bibr" rid="ref13">19</xref>
          ],
«USERCUDA» и «KOKKOS» [
          <xref ref-type="bibr" rid="ref14">20</xref>
          ]. Они отличаются особенностями реализации и могут давать
различные результаты по производительности в зависимости от задачи и от используемого
оборудования. Стоит отметить, что модуль «KOKKOS» разрабатывался для карт NVIDIA
Kepler последнего поколения и может работать медленно на картах предыдущего поколения
NVIDIA Fermi. Поддержка ускорителей Intel Xeon Phi в стадии активной разработки, она
частично реализована в модулях «KOKKOS» («родной» режим) и «USER-INTEL» (режим
разгрузки) для небольшого числа межатомных потенциалов. Данные по указанным выше
модулям приведены в таблице 2.
        </p>
        <p>В пакетах GROMACS, NAMD и CP2K также существует возможность запуска задач
на видеокартах. Реализована поддержка Intel Phi в «родном» режиме (GROMACS, CP2K)
и режиме разгрузки (NAMD).</p>
        <p>
          Создание эффективных алгоритмов для сложных многочастичных потенциалов не
всегда тривиально, как показывает опыт разработки на GPU [
          <xref ref-type="bibr" rid="ref15 ref16 ref17">21–23</xref>
          ]. Одной из основных
проблем является неоднородный доступ к памяти. В результате либо приходится использовать
более ресурсоемкие атомарные операции, либо усовершенствовать имеющиеся алгоритмы.
Стоит отметить, что для эффективного использования многопроцессорных
вычислительных систем также приходится оптимизировать алгоритмы, в частности, для обеспечения
динамической балансировки нагрузки на ядра [
          <xref ref-type="bibr" rid="ref18">24</xref>
          ].
4. Результаты тестов
4.1. Леннард-джонсовская жидкость
        </p>
        <p>В данном разделе приводится анализ производительности пакета программ LAMMPS
на различных гибридных архитектурах. Задачи запускались на суперкомпьютере МГУ им.
М.В. Ломоносова «Ломоносов» [25] (видеокарты NVIDIA X2070) и суперкомпьютере МСЦ
РАН МВС-10П (сопроцессоры Intel Xeon Phi). Видеокарта K40 исследовалась на тестовом
компьютере, предоставленном компанией NVIDIA. Для оценки эффективности алгоритмов
рассматривалась леннард-джонсовская жидкость из 106 атомов, длина траектории
составляла 100 шагов. В качестве критерия сравнения использовалось время расчета одного шага
на один атом, так как оно слабо зависит от полного числа атомов и служит
объективным критерием быстродействия. Производительность гибридных архитектур соотносилась
с производительностью обычных процессоров в метрике их пиковой производительности</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>R\mathrm{p}\mathr{eathrm{a}\mathrm{k} .</title>
      <p>
        Рассмотрим подробнее данные на рисунке 1. В части а) приведено сравнение
обычной версии LAMMPS (без векторизации кода) и с ручной векторизацией (модуль
«USERINTEL») на суперкомпьютерах МВС-10П и «Ломоносов». Для сравнения приведены данные
однопроцессорных тестов на некоторых вышедших из эксплуатации машинах начала
2000Рис. 1. Сравнение быстродействия МД-пакета LAMMPS на различных платформах: а) Расчеты
на суперкомпьютере МВС-10П без ( \oplus ) и с векторизацией (\square ) кода с использованием модуля
USERINTEL; на суперкомпьютере «Ломоносов» без векторизации кода ( c\ir ). Для сравнения приведены
данные однопроцессорных тестов с сайта LAMMPS [
        <xref ref-type="bibr" rid="ref19">26</xref>
        ] ( \bulet , 1 — Pentium II 333 МГц, 2 — DEC Alpha
500 МГц, 3 — PowerPC 440, 4 — Power4 1.3 ГГц, 5 — Intel Xeon 3.47 ГГЦ). Точка 6 — время расчета
на одном ядре Intel Xeon Phi; б) сравнение модулей USER-CUDA ( \triangleh ), GPU (\bigtranleup ) и KOKKOS (\triangledow ) на
видеокартах NVIDIA X5670 GPU (суперкомпьютер Ломоносов). Также приведены данные тестов
на видеокартах С2075 с сайта LAMMPS (заполненные символы); в)сравнение модулей USER-CUDA
(\triangleh ), GPU (\bigtranleup ) и KOKKOS (\triangledow ) на NVIDIA K40 GPU. Заполненные символы — данные тестов с сайта
LAMMPS для видеокарт Tesla K20x; г) быстродействие ускорителя Intel Xeon Phi на МВС-10П ( \diamon ).
Верхняя точка — запуск в native-mode без оптимизации, нижняя — использование оптимизации
модуля KOKKOS.
х гг. (таблица 3). Пиковая производительность рассчитывалась как произведение тактовой
частоты на число ядер и на число операций с плавающей точкой на один такт (в
соответствии со значениями, приводящимися в списке Топ-500). Крайние левые точки для
МВС10П и «Ломоносова» соответствуют одному вычислительному ядру, крайние правые — 256
ядрам. Пунктиром показана идеальная масштабируемость, когда увеличение
вычислительного поля в два раза приводит к уменьшению времени расчета в 2 раза для той же задачи.
Видно, что оптимизация «USER-INTEL» позволят добиться двукратного роста скорости
расчета.
      </p>
      <p>Рост производительности современных суперкомпьютеров идет как по пути
наращивания вычислительных ядер, так и наращивания сложности самого ядра, внедрения операций
FMA и поддержки векторных инструкций. Это приводит к увеличению теоретической
пиковой производительности, которая зачастую не может использоваться на 100% для многих
алгоритмов.</p>
      <p>Эту ситуацию можно проиллюстрировать на примере процессоров Power4 и PowerPC 440
(точки 3 и 4 на рис. 1а), которые выбиваются из обратной пропорциональности времени
расчета от пиковой производительности ядра. Однако эти точки ложатся на общую
линию, если уменьшить реальное число операций на такт с 4 до 2 для Power4 и с 4 до 1 для
PowerPC 440 (и, соответственно, пиковую производительность ядра). В первом случае 4
операции на такт обеспечиваются двумя операциями FMA, во втором случае — двойной
операцией FMA (одна операция FMA применяется к двум сегментам данных). Таким
образом, в данном случае реальная производительность составляет 50% и 25% от R\mathrm{p}\mathr{eathrm{a}\mathrm{k} даже
МВС-10П
Ломоносов
Ross</p>
      <p>Модель
процессора
Xeon E5-2690
Xeon X5570</p>
      <sec id="sec-4-1">
        <title>DEC Alpha</title>
        <p>BlueGene/L
PowerPC 440
Cheetah</p>
      </sec>
      <sec id="sec-4-2">
        <title>Power4</title>
        <p>Настольный</p>
        <p>Xeon X5690
Таблица 3. Сравнительная характеристика некоторых процессоров
Тактовая Число операций с
частота, двойной точностью на
ГГц такт</p>
        <p>Пиковая
производительность
одного ядра, ГФлопс
8
4
2
4
4
4
4.2. Белок в водной системе</p>
        <p>Аналогичное сравнение суперкомпьютеров по эффективности использования пиковой
вычислительной мощности R\mathrm{p}\mathr{eathrm{a}\mathrm{k} сделано для задачи расчета свойств белка в водной
системе. В сравнение по данной метрике включены и специализированные архитектуры типа
ANTON.</p>
        <p>Суперкомпьютер ANTON-2 основан на интегральной схеме специального назначения
(ASIC), разработанной для численной реализации алгоритма классической молекулярной
динамики в моделях с межчастичными потенциалами, ориентированными на
биомолекулярные задачи. Суперкомпьютер содержит 512 узлов, объединенных специализированным
Рис. 2. Сравнение быстродействия теста ApoA1 на классической и специализированной
архитектуре. Cимволы \oplus и d\iamon показывают производительность ПО Gromacs на суперкомпьютере МВС-10П,
остальные — ПО NAMD на различных суперкомпьютерах.
4.3. Квантовый МД-расчет молекул воды</p>
        <p>Метрика «время решения — пиковая производительность» пригодна и при
рассмотрении квантовых МД-задач. Для сравнения различных суперкомпьютеров использовался
стандартный тест воды из пакета программ CP2K. На рисунке 3 приведены времена
расчета для различного числа молекул воды на суперкомпьютерах Cray XT3 и XT5, IBM
BlueGene/P и К-100 ИПМ РАН.</p>
        <p>Для одного узла производительность в секундах на 1 шаг довольна близка для
различных систем. Роль интерконнекта становится очевидной при использовании нескольких
Рис. 3. Квантовый МД-расчет молекул воды (от 32 до 2048) с использованием пакета CP2K на
различных суперкомпьютерах
узлов, когда происходит падение производительности из-за интенсивного обмена данными.
Для суперкомпьютера IBM BlueGene/P также заметна потеря значительной доли пиковой
производительности из-за операций FMA.
5. Выводы</p>
        <p>Введена очевидная, но ранее не используемая метрика для ранжирования
высокопроизводительных вычислительных систем «время решения — пиковая производительность (в
единицах флопс)». Данная метрика использована для сравнения гибридных,
специализированных и других систем на примерах моделей классической молекулярной динамики.
Наилучшую эффективность в данной метрике на модели леннард-джонсовской жидкости
показывают процессоры Intel Xeon с использованием алгоритмов с ручной векторизацией
из пакета «USER-INTEL» в LAMMPS. Эффективность аппаратного обеспечения NVIDIA
GPU повышается в моделях последнего поколения с использованием новейших
программных решений (пакета «KOKKOS» в LAMMPS), однако на сегодняшний день значительно
проигрывает эффективности Intel Xeon. Таким образом, при одинаковой вычислительной
мощности наименьшее время расчета достигается на классических процессорах, хотя они
проигрывают NVIDIA GPU по энергопотреблению и стоимости. Ускорители Intel Xeon Phi
на текущий момент не эффективны для ускорения молекулярно-динамических расчетов и
не оправдывают своей стоимости.</p>
        <p>Результаты тестов показывают, что предложенная метрика выявляет аппаратное
обеспечение, оптимизированное под тесты типа LINPACK и являющееся существенно менее
эффективным для приложений иного типа. В частности, подобный результат был ожидаем для
архитектур NVIDIA GPU и Intel Xeon Phi, однако и для процессоров IBM Power оказалось,
что максимальная эффективность операций с плавающей точкой для задач молекулярной
динамики соответствует лишь половине декларируемой пиковой производительности.</p>
        <p>Показано, что архитектура таких специализированных решений, как ANTON и
ANTON2, обеспечивает близкое к 100% использование полной пиковой производительность этих
суперкомпьютеров даже на молекулярно-динамических задачах малого размера.
Литература
1. Список 500 лучших суперкомпьютеров. URL: http://top500.org (дата обращения:
16.04.2015).
What is the fastest way to compute quantum and classical
atomistic models using the latest software algorithms and
supercomputing hardware?
Grigory Smirnov and Vladimir Stegailov
Keywords: atomistic models, efficiency, scalability, peak performance
Development of new HPC architectures proceeds faster than the corresponding adjustment of
the algorithms for such fundamental mathematical models as quantum and classical and
quantum molecular dynamics. Due to the abundance of hardware options there is the need for
clear guiding criteria for the computational efficiency of a particular model on a particular
hardware. LINPACK benchmark alone can no longer serve this role. In this work we consider
a practical metric of the time-to-solution versus the computational peak performance of a
given hardware system. In this metric we compare different hardware (both legacy and
modern) for the LAMMPS, GROMACS, NAMD and CP2K software packages widely used
for atomistic modeling. The metric considered can serve as a universal unambiguous scale
that ranges different combinations of CPUs, accelerators and interconnects.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          2.
          <string-name>
            <surname>High-Performance Computing</surname>
          </string-name>
          Using FPGAs / Ed. Vanderbauwhede W.,
          <string-name>
            <surname>Benkrid K</surname>
          </string-name>
          . -New York: Springer Verlag,
          <year>2013</year>
          , 803 p.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          3.
          <string-name>
            <surname>Ohmura</surname>
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Morimoto</surname>
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ohno</surname>
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hasegawa</surname>
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Taiji</surname>
            <given-names>M.</given-names>
          </string-name>
          <article-title>MDGRAPE-4: a special-purpose computer system for molecular dynamics simulations //</article-title>
          <source>Phil Trans R Soc A</source>
          ,
          <year>2014</year>
          , vol.
          <volume>372</volume>
          , p.
          <fpage>20130387</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          4.
          <string-name>
            <surname>Shaw D.E</surname>
          </string-name>
          . et al.
          <article-title>Anton 2: Raising the Bar for Performance and Programmability in a Special-Purpose Molecular Dynamics Supercomputer // SC14 Int</article-title>
          .
          <source>Conf. High Perform. Comput. Networking</source>
          ,
          <string-name>
            <given-names>Storage</given-names>
            <surname>Anal</surname>
          </string-name>
          . -Piscataway:IEEE Press,
          <year>2014</year>
          , p.
          <fpage>41</fpage>
          -
          <lpage>53</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          7.
          <string-name>
            <surname>Eckhardt</surname>
            <given-names>W.</given-names>
          </string-name>
          et al.
          <article-title>591 TFLOPS multi-trillion particles simulation</article-title>
          on SuperMUC // Supercomputing, vol.
          <volume>7905</volume>
          ,
          <year>2013</year>
          ,
          <year>473p</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          11.
          <string-name>
            <surname>Reid</surname>
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bethune</surname>
            <given-names>I</given-names>
          </string-name>
          .
          <article-title>Optimising CP2K for the Intel Xeon Phi</article-title>
          . URL: http://www.prace-ri.eu/IMG/pdf/wp140.pdf (дата обращения:
          <volume>16</volume>
          .
          <fpage>04</fpage>
          .
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          12.
          <string-name>
            <surname>Jeong H</surname>
          </string-name>
          . et al.
          <article-title>Performance of Kepler GTX Titan GPUs and Xeon Phi System</article-title>
          . URL: http://arxiv.org/abs/1311.0590 (дата обращения:
          <volume>16</volume>
          .
          <fpage>04</fpage>
          .
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          13.
          <string-name>
            <surname>Chan</surname>
            <given-names>E.Y.K.</given-names>
          </string-name>
          <article-title>Benchmarks for Intel MIC Architecture</article-title>
          . URL: http://www.clustertech.com/wp-content/uploads/2014/01/MICBenchmark.pdf (дата обращения:
          <volume>16</volume>
          .
          <fpage>04</fpage>
          .
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          14. URL: http://www.nvidia.ru/object/gpu
          <article-title>-computing-facts-ru</article-title>
          .
          <source>html (дата обращения: 16.04</source>
          .
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          15.
          <string-name>
            <surname>Pennycook S.J</surname>
          </string-name>
          . et al.
          <article-title>Exploring SIMD for molecular dynamics, using Intel Xeon processors</article-title>
          and Intel Xeon Phi coprocessors // IPDPS-13
          <string-name>
            <surname>Proceedings</surname>
          </string-name>
          ,
          <year>2013</year>
          ,
          <volume>1338</volume>
          c.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          16.
          <string-name>
            <surname>Plimpton S. Fast Parallel Algorithms for</surname>
          </string-name>
          Short-Range Molecular Dynamics // J. Comput. Phys.,
          <year>1995</year>
          , vol.
          <volume>117</volume>
          , №
          <volume>1</volume>
          , p.
          <fpage>1</fpage>
          -
          <lpage>19</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          17.
          <string-name>
            <surname>Pronk</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          et al.
          <source>GROMACS 4</source>
          .
          <article-title>5: a highthroughput and highly parallel open source molecular simulation toolkit</article-title>
          . // Bioinformatics,
          <year>2013</year>
          , vol.
          <volume>29</volume>
          , №
          <volume>7</volume>
          ,
          <fpage>845</fpage>
          -
          <lpage>854</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          18.
          <string-name>
            <surname>Phillips J.C</surname>
          </string-name>
          . et al.
          <source>Scalable molecular dynamics with NAMD // J. Comput. Chem</source>
          .
          <year>2005</year>
          . Vol.
          <volume>26</volume>
          , № 16. P.
          <fpage>1781</fpage>
          -
          <lpage>1802</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          19.
          <string-name>
            <surname>Brown</surname>
            <given-names>W.M.</given-names>
          </string-name>
          et al.
          <article-title>Implementing molecular dynamics on hybrid high performance computers-short range forces //</article-title>
          <source>Comput. Phys. Commun</source>
          ,
          <year>2011</year>
          , vol.
          <volume>182</volume>
          , №
          <volume>4</volume>
          , p.
          <fpage>898</fpage>
          -
          <lpage>911</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          20.
          <string-name>
            <surname>Carter Edwards</surname>
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Trott</surname>
            <given-names>C.R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sunderland</surname>
            <given-names>D</given-names>
          </string-name>
          . Kokkos:
          <article-title>Enabling manycore performance portability through polymorphic memory access patterns // J. Parallel Distrib</article-title>
          . Comput.,
          <year>2013</year>
          , vol.
          <volume>74</volume>
          , №
          <volume>12</volume>
          , p.
          <fpage>3202</fpage>
          -
          <lpage>3216</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          21.
          <string-name>
            <surname>Morozov</surname>
            <given-names>I.V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kazennov</surname>
            <given-names>A.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bystryi</surname>
            <given-names>R.G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Norman</surname>
            <given-names>G.E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pisarev</surname>
            <given-names>V.V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stegailov</surname>
            <given-names>V.V.</given-names>
          </string-name>
          <article-title>Molecular dynamics simulations of the relaxation processes in the condensed matter on GPUs // Comput</article-title>
          . Phys. Commun.,
          <year>2011</year>
          , vol.
          <volume>182</volume>
          , №
          <volume>9</volume>
          , p.
          <fpage>1974</fpage>
          -
          <lpage>1978</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          22.
          <string-name>
            <surname>Brown</surname>
            <given-names>W.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kohlmeyer</surname>
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Plimpton</surname>
            <given-names>S.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tharrington</surname>
            <given-names>A.N.</given-names>
          </string-name>
          <article-title>Implementing molecular dynamics on hybrid high performance computers - Particle-particle particle-mesh // Comput</article-title>
          . Phys. Commun.,
          <year>2012</year>
          , vol.
          <volume>183</volume>
          , №
          <volume>3</volume>
          , p.
          <fpage>449</fpage>
          -
          <lpage>459</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          23.
          <string-name>
            <surname>Brown</surname>
            <given-names>W.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yamada</surname>
            <given-names>M</given-names>
          </string-name>
          .
          <article-title>Implementing molecular dynamics on hybrid high performance computers - Three-body potentials // Comput</article-title>
          . Phys. Commun.,
          <year>2013</year>
          , vol.
          <volume>184</volume>
          , №
          <volume>12</volume>
          , p.
          <fpage>2785</fpage>
          -
          <lpage>2793</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          24.
          <string-name>
            <surname>Begau</surname>
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sutmann</surname>
            <given-names>G</given-names>
          </string-name>
          .
          <article-title>Adaptive dynamic load-balancing with irregular domain decomposition for particle simulations //</article-title>
          <source>Comput. Phys. Commun</source>
          ,
          <year>2015</year>
          , vol.
          <volume>190</volume>
          , p.
          <fpage>51</fpage>
          -
          <lpage>61</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          26. URL: http://lammps.sandia.gov/bench/lj_one.
          <source>html (дата обращения: 16.04</source>
          .
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          27.
          <string-name>
            <surname>Sun</surname>
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zheng</surname>
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mei</surname>
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bohm</surname>
            <given-names>E.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Phillips</surname>
            <given-names>J.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kale</surname>
            <given-names>L. V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jones</surname>
            <given-names>T</given-names>
          </string-name>
          .R. // In proc.
          <source>Int. Conf. High Perform. Comput. Networking, Storage Anal</source>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          28.
          <string-name>
            <surname>Kumar</surname>
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sun</surname>
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kale L</surname>
          </string-name>
          . V.
          <article-title>Acceleration of an asynchronous message driven programming paradigm on IBM Blue Gene</article-title>
          /Q // IPDPS-13
          <string-name>
            <surname>Proceedings</surname>
          </string-name>
          ,
          <year>2013</year>
          , 1338 p.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>