Здравствуйие! Я хочу пройти курс Введение в принципы функционирования и применения современных мультиядерных архитектур (на примере Intel Xeon Phi), в презентации самостоятельной работы №1 указаны логин и пароль для доступ на кластер и выполнения самостоятельных работ, но войти по такой паре логин-пароль не получается. Как предполагается выполнение самосоятельных работ в этом курсе? |
Самостоятельная работа 1: Компиляция и запуск приложений на Intel Xeon Phi
Введение
Презентацию к лабораторной работе Вы можете скачать здесь.
Использование ускорителей для решения сложных вычислительных задач сегодня норма. В большинстве случаев для этой цели применяют графические процессоры, которые обладают значительно большей, чем CPU, производительностью. Основная сложность процесса переноса большого программного пакета на GPU заключается в необходимости значительной модификации существующего кода для возможности его последующего выполнения на графическом процессоре. Более того, GPU имеет принципиально иную архитектуру, а значит, для получения хорошей производительности, нужно не просто обеспечить выполнение программы на графическом процессоре, но и выполнять ряд действий по ее оптимизации. А это в свою очередь может привести к необходимости переработки использующихся в программе алгоритмов.
Недавно представленный компанией Intel сопроцессор с архитектурой Intel Many Integrated Core (MIC) на базе x86 ядер CPU позволяет существенно сократить время переноса. Это достигается за счет использования известных инструментов, таких как Intel С/С++ Compiler, и технологий параллельного программирования (OpenMP, TBB, MPI). Более того, для обеспечения работоспособности кода на Intel MIC, часто модификации существующего кода не требуется совсем. Следует, однако, заметить, что для получения хорошей производительности оптимизация программы является необходимым этапом переноса, несмотря на схожесть архитектуры центрального процессора и сопроцессора.
В данной лабораторной работе рассматривается ряд примеров, демонстрирующих процесс переноса кода на сопроцессор Intel Xeon Phi. Рассматриваются основные модели программирования и режимы компиляции и запуска программ.
Методические указания
Цели и задачи работы
Цель данной работы – изучение режимов и способов компиляции и запуска программ на Intel Xeon Phi.
Данная цель предполагает решение следующих основных задач:
- Изучение моделей программирования на Intel Xeon Phi.
- Освоение способов компиляции и запуска программ на одном или нескольких сопроцессорах применительно к каждой из рассматриваемых моделей программирования.
Структура работы
Работа построена следующим образом: дан краткий обзор моделей программирования для сопроцессора Intel Xeon Phi, далее на примерах продемонстрированы подходы к написанию кода в каждом из режимов, а также шаги, которые необходимо выполнить для компиляции и запуска программ. В рамках данной лабораторной работы рассматриваются режим Offload, режим работы только на сопроцессоре и симметричный режим.
Тестовая инфраструктура
Вычислительные эксперименты проводились с использованием следующей инфраструктуры ( таблица 6.1).
Процессор | Intel Xeon E5-2690 (2.9 GHz, 8 ядер) |
Сопроцессор | Intel Xeon Phi 7110X |
Память | 64 GB |
Операционная система | Linux CentOS 6.2 |
Компилятор, профилировщик, отладчик | Intel C/C++ Compiler 13 |
Рекомендации по проведению занятий
Для выполнения лабораторной работы рекомендуется следующая последовательность действий:
- Кратко напомнить студентам о моделях программирования на Intel Xeon Phi, дать краткую характеристику каждой из моделей. Обратить внимание на достоинства и недостатки моделей.
- Рассмотреть пример вывода максимального числа потоков сопроцессора в режиме Offload.
- Рассмотреть пример простого вычисления скалярного произведения векторов в режиме Offload.
- Рассмотреть пример простого вычисления скалярного произведения векторов в режиме работы только на сопроцессоре. Рассмотреть MPI версию скалярного произведения векторов.
- Рассмотреть пример вычисления скалярного произведения векторов в симметричном режиме.
- Сформулировать выводы, дать задания для самостоятельной работы.