Архитектура Intel® Many Integrated Core (Intel® MIC)

Intel® Many Integrated Core (Intel® MIC) представляет собой новый продукт линейки Intel для высокопроизводительных вычислений, включая процессоры Intel® Xeon®. Он призван вывести индустрию на уровень экзафлопных вычислений. В отличие от многоядерных процессоров Intel Xeon, размер ядер в архитектуре Intel MIC меньше, и они являются ядрами Wide Vector Unit. Это решение для достижения более высокой суммарной производительности при запуске приложений с большим числом потоков данных. Intel MIC позволяет удовлетворить потребности разработчиков в наличии платформы для запуска многопоточных приложений (команды, данные, задачи, векторы, кластеры) без необходимости изменения фундаментальных принципов. Те же приемы, которые позволяют добиться оптимальной производительности на процессорах Intel (масштабирование приложений на ядра и потоки, упаковка данных в блоки для иерархической памяти и кэша) используются для достижения максимальной эффективности в Intel MIC. Новая архитектура избавляет компании-разработчики и ИТ-отделы от необходимости переобучения моделям программирования и переписывания кода.

В производстве первого продукта на базе архитектуры Intel MIC под кодовым названием Knights Corner планируется использовать 22-нм техпроцесс и разработанные Intel первые в мире 3D-транзисторы Tri-Gate.

Демонстрации на ISC 2011

На суперкомпьютерной конференции (International Supercomputing Conference, ISC) представлены наработки в рамках программы по переходу на архитектуру Intel MIC. Мероприятие проходит в Гамбурге, Германия, с 20 по 23 июня.

Наработки разделены на семь демонстрационных проектов. Четыре из них разработаны учеными суперкомпьютерных центров - с помощью предложенной Intel платформы разработки программного обеспечения (Software Development Platform, SDP) под кодовым названием Knights Ferry. Остальные три проекта были созданы инженерами Intel. Платформа разработки использует сопроцессор Intel под названием Aubrey Isle, построенный на 45-нм технологии.

Разработчики указанных SDP-проектов получили доступ к специальным версиям инструментов Intel для многоядерного программирования, в которых присутствовала поддержка сопроцессора Intel MIC. В их состав вошли: Intel® Fortran Compiler, Intel® C++ Compiler и Intel® Math Kernel Library.

Вместе эти демонстрационные проекты помогают убедиться в том, что инструментарий  SDP Knights Ferry действительно позволяет создавать более мощные приложения без сложного программирования, а также то, как он помогает решить одни из важнейших проблем индустрии HPC-систем.

Исследовательский центр в Юлихе: приложение SMMP для симуляции свертывания белка

Симуляция свертывания полипептидной цепи. Приложение SMMP (Simple Molecular Mechanics for Proteins) позволяет изучать процесс свертывания полипептидных цепей в клетке. В ходе демонстрации на экран выводится графическое изображение процесса, вычисляемого в фоне программным обеспечением, написанным с применением SDP Knights Ferry. Основная цель приложения - найти структуру, получение которой требовало бы наименьших энергозатрат. Оптимизация проводилась с использованием метода Монте-Карло и алгоритма имитации отжига. Используя привычные модели и инструменты программирования, такие как OpenMP, а также пакет Knights Ferry, ученые смогли создать рабочее приложение менее чем за 3 дня, далее приступив лишь к его опитимизации.

SMMP - это FORTRAN-пакет с открытым исходным кодом для молекулярных симуляций поведения молекул белка с использованием молекулярной механики. Использование Intel MIC-сопроцессора заключалось в выгрузке команд. Кроме того, приложение было настроено для получения преимуществ 512-разрядных векторных операций.

Способность сопроцессора Intel MIC симулировать фолдинг белка, используя требовательный  к ресурсам подход молекулярной механики, доказывает гибкость предлагаемой модели программирования. Расчет биологического процесса может быть выполнен одним из двух подходов: с помощью молекулярной динамики (приближен к реальности и использует статистическую механику) или молекулярной механики, который использует ньютоновскую механику и требует значительно больших вычислительных ресурсов. Уравнения молекулярной динамики могут содержать недопустимые параметры, что заставляет более тщательно выбирать симуляционную систему. Молекулярная динамика используется на вычислительных системах общего назначения. Сопроцессоры Intel MIC поддерживают и тот, и другой подход. Данная демонстрация показывает возможность использования более сложной модели молекулярной механики при расчете фолдинга белка в приложении SMMP на сопроцессоре Intel MIC. Демонстрация KISTI показывает, что на сопроцессоре MIC достаточно эффективно может использоваться второй подход.

Системная конфигурация: Платформа разработки Intel Shady Cove Software Development Platform с двумя 6-ядерными процессорами Intel® Xeon® X5690 (12 МБ L3, 3,46 ГГц), 24 ГБ DDR3 1333 МГц, одним Intel® 5520 IOH, RHEL 6.0 OS, одной платой с сопроцессором Knights Ferry (C0 Si, 1,2 ГГц, 2 ГБ GDDR5 3,0 ГТ/с), программный стек и инструменты Alpha 5 Intel® MIC.

Проект молекулярной динамики от KISTI

Данное приложение для моделирования взаимодействия молекул использует эмпирически-потенциальную молекулярную динамику, симулируя поведение наноматериалов: углеродных нанотрубок, графена, фуллерена и кремниевых поверхностей. Первоначально проект создавался для многоядерных систем на OpenMP и затем без особых временных затрат был легко переведен на сопроцессор Intel MIC - благодаря поддержке стандартных языков и моделей программирования.

Стандартизированные модели параллельного программирования, общие между процессорами Intel Xeon и Knights Ferry SDP, и простая и мощная модель разгрузочного программирования показали гораздо более высокие результаты в сравнении с платформой GPU. Симуляция является высокопараллельной с минимальной зависимостью от данных и хорошо параллелизируется с помощью стандартных многопоточных моделей программирования, таких как OpenMP и Intel® Cilk™ Plus. Приложение демонстрирует близкие к теоретическим значениям показатели линейного роста производительности на ядрах Intel Xeon и Knights Ferry. Приложение полностью использует 512-разрядный векторный блок Knights Ferry посредством встроенных средств C.

Системная конфигурация: Рабочая станция Dell Precision* с одним 4-ядерным процессором Intel Xeon X5620 (12 МБ L3, 2,4 ГГц), 24 ГБ ОЗУ DDR3 1333 МГц, одним Intel® 5520 IOH, RHEL 6.0 OS, одной платой с сопроцессором Knights Ferry (C0 Si, 1,2 ГГц, 2 ГБ GDDR5 3,0 ГТ/с).

LRZ: произведение матриц TifaMMy

Демонстрирует рекурсивную схему разделения входных данных для расчетов и параллелизации, с кэш-независимой имплементацией произведения матриц.

TifaMMy - кэш-независимое решение произведения матриц, использующая кривую Пеано и предлагающая C++ API. Использует рекурсивную схему разделения входных данных для расчетов и параллелизации. В связи с использованием рекурсии данный метод, который хорошо работает на CPU, не может быть портирован на GPU. Используя похожую на CPU модель программирования на Intel MIC, ученые LRZ смогли запустить приложение на Knights Ferry за несколько часов и, проведя работу по оптимизации, зафиксировали производительность, превышающую 650 гигафлоп/с.

Программа написана на C++ с использованием OpenMP и преимуществ 512-разрядных векторов посредством встроенных средств C++. Полученная в примере производительность в 650 гигафлоп/с близка к оптимальному значению для данного конкретного алгоритма (чуть больше половины теоретической пиковой производительности платы), хотя с дальнейшим усовершенствованием средств возможен еще некоторый прирост.

Самое важное - использование приложения на C++ и сложного адаптивного рекурсивного алгоритма показывает огромное значение в плане «портирования производительности» кода. Подобные алгоритмы не требуют ручной настройки, обусловленной изменением размера кэша и иерархии памяти, даже при перемещении на архитектуру Intel MIC. Благодаря возможности простого использования сопроцессоров Intel MIC посредством стандартных методов программирования, в дополнение к произведению матриц эти адаптивные методы могут быть использованы в других важных алгоритмах, включая PDE-солверы, а также применимы для уплотнения и разряжения матриц. Все это помогает представить громадный потенциал архитектуры Intel MIC и ее способности работать с различными существующими методами программирования, включая рекурсию.

Системная конфигурация: Платформа Intel Shady Cove Software Development Platform с двумя 6-ядерными процессорами Intel® Xeon® X5690 (12 МБ L3, 3,46 ГГц), 24 ГБ DDR3 1333 МГц, одним Intel® 5520 IOH, RHEL 6.0 OS, одной платой с сопроцессором Knights Ferry  (C0 Si, 1.2GHz, 2GB GDDR5 3,0 ГТ/с), программный стек и инструменты Alpha 5 Intel® MIC.

CERN* openlab: Масштабирование на ядра архитектуры Intel® MIC

ЦЕРН* демонстрирует программное ядро, извлеченное из платформы разработки CBM/ALICE HLT для экспериментов в коллайдере. Оно оценивает реальные траектории на основе неточных измерений.

Ядро используется для отбора наиболее интересных событий, информация о которых направляется с детекторов в вычислительные центры. Экспериментальный проект CERN на базе архитектуры Intel MIC призван оценить масштабируемость. Ученые выяснили, когда код хорошо распараллелизирован и векторизирован при добавлении ядер Intel MIC обеспечивается рост линейной производительности. Демонстрация показывает диаграмму измеренной производительности в зависимости от числа используемых ядер. ЦЕРН наблюдал рост линейной производительности при 32 ядрах на Knights Ferry, что является отличной новостью, так как Intel планирует увеличить число ядер на Knights Corner.

Первоначально приложение создавалось для многоядерных систем и затем было легко переведено на сопроцессор Intel MIC - благодаря хорошей поддержке стандартных языков и моделей программирования.

Системная конфигурация: Платформа SGI H4002 с двумя 6-ядерными процессорами Intel® Xeon® X5690 (12 МБ L3, 3,46 ГГц), 24 ГБ DDR3 1333 МГц, RHEL 6.0 OS, одной платой с сопроцессором Knights Ferry (C0 Si, 1,2 ГГц, 2 ГБ GDDR5 3,0 ГТ/с).

7.4 TFLOP SGEMM на вычислительное ядро

В данной демонстрации приложение SGEMM (Single Precision General Matrix Multiplication) одновременно работало на восьми платах Knights Ferry, установленных в систему от Colfax. Суммировав производительность SGEMM на каждой плате в системе, мы получили около 7,4 терафлоп/с конечной производительности. Данный пример будет интересен для заказчиков, нуждающихся в высокопроизводительных системах. Он позволяет получить предварительное представление об эффективности архитектуры Intel MIC. Без задержек при передаче данных по шине PCIe мы видим 925 гигафлоп/с измеренной постоянной производительности SGEMM на одну плату Knights Ferry, каждая с 1200 гигафлоп/с теоритической пиковой производительности.

Системная конфигурация: Платформа Colfax CXT8000 с двумя 6-ядерными процессорами Intel® Xeon® X5690 (12 МБ L3, 3,46 ГГц), 24 ГБ DDR3 1333 МГц, двумя Intel® 5520 IOH, 4 коммутаторами PLX PeX8647 Gen 2 PCIe, RHEL 6.0 OS, восемью платами с сопроцессорами Knights Ferry (D0 Si, 1,2 ГГц, 2 ГБ GDDR5 3,6 ГТ/с), программный стек и инструменты Alpha 5 Intel® MIC.

Гибридные вычисления – SGEMM + Intel® MKL

Данная демонстрация показывает, что пользователи  могут получить более 1 терафлоп/с производительности SGEMM всего лишь в 18 строках кода, используя Intel® Math Kernel Library (MKL) с начальными версиями инструментов, доступных партнерам Intel MIC. Intel® MKL одновременно использует процессоры Intel Xeon® и Knights Ferry с целью достижения значительных уровней производительности. Важно отметить, что при переходе от конфигурации только с процессорами Intel Xeon к конфигурации Xeon процессоры +MIC не нужно изменять ни одну строку кода. Intel MKL берет на себя работу по проверке доступности Knights Ferry в системе и исполняет SGEMM на конфигурации с только с процессорами Intel Xeon или на процессоры Xeon+MIC, в зависимости от доступности Knights Ferry.

Системная конфигурация: Платформа Intel Shady Cove Software Development Platform с двумя 6-ядерными процессорами Intel® Xeon® X5680 (12 МБ L3, 3,33 ГГц), 24 ГБ DDR3 1333 МГц, одним Intel® 5520 IOH, RHEL 6.0 OS, одной платой с сопроцессором Knights Ferry (D0 Si, 1,2 ГГц, 2 ГБ GDDR5 3,6 ГТ/с), программный стек и инструменты Alpha 5 Intel® MIC.

Гибридные вычисления – LU Factorization

Данная демонстрация относится к представленному на ISC техническому документу Intel «Designing and Dynamically Load Balancing Hybrid LU for Multi/Many-core». В прошлом году мы представили платформу Knights Ferry, предлагающую более 500 гигафлоп/с на LU Factorization с предварительной версией программного стека. В данной демонстрации мы воспользовались преимуществом общей модели программирования между процессорами Xeon и MIC и одновременно использовали Knights Ferry и Xeon для получения на LU Factorization более высокой производительности – мы получили стабильную производительность до 772 гигафлоп/с. Общая модель программирования позволяет динамически обрабатывать матрицы меньшего размера на процессорах Intel Xeon и матрицы большего размера на Intel MIC, получая оптимальный уровень производительности в целом.

Системная конфигурация:  Платформа Intel Shady Cove Software Development Platform с двумя 6-ядерными процессорами Intel® Xeon® X5680 (12 МБ L3, 3,33 ГГц), 24 ГБ DDR3 1333 МГц, одним Intel® 5520 IOH, RHEL 6.0 OS, одной платой с сопроцессором Knights Ferry (D0 Si, 1,2 ГГц, 2 ГБ GDDR5 3,6 ГТ/с), программный стек и инструменты Alpha 5 Intel® MIC.  

О корпорации Intel

Intel – мировой лидер в разработке инновационных решений для вычислительной техники. Специалисты корпорации создают высокотехнологичные продукты, являющиеся основой компьютеров и других вычислительных устройств во всем мире. Дополнительную информацию об Intel можно найти на веб-сайтах www.intel.ru/pressroom и www.intel.ru/galaxy/, а также в сообществе Intel на Facebook* www.facebook.com/intelrussia.

Intel и логотип Intel являются товарными знаками корпорации Intel в США и других странах.

*Другие торговые марки и товарные знаки являются собственностью их соответствующих владельцев.

О CERN

ЦЕРН - Европейская организация по ядерным исследованиям - является ведущей мировой лабораторией по изучению физики элементарных частиц. Головной офис организации находится в Женеве. В организацию входят Австрия, Бельгия, Болгария, Чешская республика, Дания, Финляндия, Франция, Германия, Греция, Венгрия, Италия, Нидерланды, Норвегия, Польша, Португалия, Словакия, Испания, Швеция, Швейцария и Великобритания. Румыния является кандидатом на присоединение. Индия, Израиль, Япония, Россия, США, Турция, Еврокомиссия и ЮНЕСКО имеют статус наблюдателя. Дополнительная информация о ЦЕРН находится по адресу http://press.web.cern.ch/press.

Об Исследовательском центре в Юлихе

Исследовательский центр в Юлихе (Jülich Research Center, FZ Jülich) является одним из крупнейших научных центров в Европе. Центр проводит современные междисциплинарные исследования, помогающих решить важнейшие проблемы современного общества, касающиеся сферы здравоохранения, энергетики, охраны окружающей среды и информационных технологий. Ключевыми компетенциями центра являются физика и суперкомпьютеры. Дополнительная информация о FZ Jülich доступна по адресу http://www.fz-juelich.de.

О KISTI

Корейский научно-технологический институт информации (Korea Institute of Science & Technology Information, KISTI) - ведущий государственный институт, представляющий собой национальную платформу для передачи знаний и информации посредством высокопроизводительных сетей и суперкомпьютеров. KISTI Supercomputing Center является крупнейшим провайдером вычислительных ресурсов и высокопроизводительных сетей в Корее. Дополнительная информация о KISTI доступна по адресу www.ksc.re.kr/eng/.

О LRZ

Leibniz-Rechenzentrum (LRZ) - общественный компьютерный центр Университета Людвига-Максимилиана в Мюнхене, Технического университета Мюнхена и Баварской академии наук. LRZ обслуживает суперкомпьютеры, которыми пользуются все баварские  университеты, а также государственные суперкомпьютеры, делая системы доступными для проведения исследований в университетах в Германии. Дополнительная информация о LRZ доступна по адресу http://www.lrz.de.

Предупреждение и отказ от ответственности

Информация, касающаяся демонстраций, включающая, но не ограниченная точной системной конфигурацией, может быть изменена без уведомления.

Программное наполнение и рабочая нагрузка, используемые в указанных тестах на производительность, могли быть оптимизированы для использования с процессорами Intel. Тесты на производительность, включая тесты на базе SYSmark и MobileMark, выполняются с использованием конкретных компьютеров, компонентов, программ, действий и функций. Любое изменение каких-либо составляющих может привести к изменению результата. Необходимо обратиться к другим подобным тестам и дополнительной информации для получения полного представления о коммерческих продуктах и различиях между ними, в том числе о производительности, получаемой в результате объединения одних продуктов с другими.

Компиляторы Intel®, связанные библиотеки и инструменты разработки могут включать или использовать опции, оптимизированные для наборов команд, доступных как на процессорах Intel®, так и на других процессорах (например, наборы инструкций SIMD), но оптимизированные для этих различных процессоров не в равной степени. Кроме того, некоторые опции компиляторов Intel, включая не специфичные для архитектуры Intel, могут использоваться только с процессорами Intel. Подробное описание опций компиляторов Intel, включая наборы команд и соответствующие  процессоры, можно найти в руководстве «Intel® Compiler User and Reference Guides», глава «Compiler Options». Многие библиотечные подпрограммы, являющиеся частью компиляторов Intel®, в большей степени оптимизированы под процессоры Intel, чем под другие процессоры. Несмотря на то, что компиляторы и библиотеки Intel оптимизированы как для процессоров Intel, так и для других процессоров, на процессорах Intel, вероятно, производительность будет выше - это зависит от того, какие опции вы выбираете, вашего кода и других факторов.

Компиляторы Intel®, связанные библиотеки и инструменты разработки могут быть оптимизированы или могут быть не оптимизированы в равной степени для других процессоров в плане тех технологий, которые по отношению к процессорам Intel не являются уникальными. К таким оптимизациям относятся: наборы команд Intel® Streaming SIMD Extensions 2 (Intel® SSE2), Intel® Streaming SIMD Extensions 3 (Intel® SSE3) и Supplemental Streaming SIMD Extensions 3 (Intel® SSSE3) и прочее. Intel не гарантирует доступность, функциональность или эффективность оптимизаций на процессорах, произведенных сторонними компаниями. Оптимизации на уровне процессоров предназначены для использования с процессорами Intel.

Intel полагает, что ее компиляторы и библиотеки являются превосходным выбором для достижения максимальной производительности на процессорах Intel® и других процессорах. Однако Intel рекомендует рассмотреть другие компиляторы и библиотеки, чтобы определить, какие их них лучше удовлетворяют вашим требованиям. Мы надеемся на то, что вы воспользуетесь нашими  решениями, так как мы стараемся предложить лучшую производительность во всех компиляторах и библиотеках; пожалуйста, сообщите нам при обнаружении недостатков.

Продукты Intel, упомянутые в данном документе, могут содержать конструктивные недостатки или  случайные ошибки, в результате которых их свойства могут отличаться от свойств, указанных в официальных спецификациях. Более подробная информация предоставляется по запросу.

Intel, Xeon, Cilk и логотип Intel являются товарными знаками или зарегистрированными товарными знаками корпорации Intel или ее филиалов в США и других странах.