К. т н. А. К. Ким, к т. н. В. Ю. Волконский, к т. н. Ф. А. Груздов, М. С

Вид материалаДокументы
4. Развитие вычислительных комплексов с архитектурой «Эльбрус»
Реальные замеры / пиковые возможности
5. Развитие системного программного обеспечения
Технология двоичной трансляции.
Операционные системы.
Высокопроизводительные библиотеки.
Подобный материал:
1   2   3

3. Развитие микропроцессоров с архитектурой «Эльбрус»

Развитие микропроцессорной архитектуры «Эльбрус» предполагается вести в направлении наращивания параллелизма за счет создания системы на кристалле, увеличения числа процессорных ядер в составе микропроцессора и повышения тактовых частот работы процессора путем включения в него большего числа блоков, реализованных с использованием технологии полностью заказного проектирования. Предполагается также развивать технологию эффективной совместимости с архитектурами IA-32 и Intel 64 [10].

В 2009 г. завершается разработка микропроцессора «Эльбрус-S» (технологический процесс – 90 нм, тактовая частота – 500 МГц), представляющего собой систему на кристалле. Он полностью унаследовал архитектуру микропроцессора «Эльбрус». В нем до 2 Мбайт увеличен Кэш 2-го уровня и встроены каналы доступа в память, включая контроллеры DDR2 с общей пропускной способностью 8 Гбайт/с. Для создания многопроцессорных систем на общей памяти в микропроцессор встроены 3 дуплексных канала когерентного обмена с другими процессорами и канал доступа к внешним устройствам. Пиковая производительность микропроцессора возрастет пропорционально тактовой частоте, а производительность на реальных задачах – в 2 раза по сравнению с микропроцессором «Эльбрус».

Параллельно начата реализация гибридного микропроцессора, содержащего 2 ядра с архитектурой «Эльбрус» и 4 специализированных ядра для обработки сигналов (технологический процесс – 90 нм, тактовая частота – 600 МГц). Этот микропроцессор будет иметь пиковую производительность свыше 30 Гвещоп/c.

В планах ЗАО «МЦСТ» в течение ближайших 10 лет освоить технологические нормы 65, 45 и 32 нм, поднять тактовую частоту микропроцессора выше 2 ГГц и увеличить число ядер в микропроцессоре до 16. Это позволит получить универсальный микропроцессор терафлопного диапазона производительности, а за счет развития линии гибридных микропроцессоров поднять производительность еще на порядок. При этом предполагается использовать технологию энергосбережения при проектировании. В сочетании с хорошей логической скоростью каждого ядра такой подход должен привести к дальнейшему улучшению параметров энергопотребления микропроцессоров линии «Эльбрус».


4. Развитие вычислительных комплексов с архитектурой «Эльбрус»

Наличие полной совместимости архитектуры «Эльбрус» с доминирующей в мире во всех сегментах – от ПК до серверов и суперкомпьютеров – архитектуры IA-32 и Intel 64 (и их клонов от AMD) открывает хорошие перспективы для широкого внедрения.

За счет преимущества в логической скорости архитектура «Эльбрус» с ростом тактовых частот микропроцессоров сможет развиваться не как абсолютно новая, а как совместимая с платформой Intel, что облегчает переход на ее использование. Перекомпиляцию программ в целях получения дополнительной производительности для наиболее критических применений можно будет выполнять постепенно, по мере необходимости.

Внедрению компьютеров с архитектурой «Эльбрус» в качестве ПК кроме совместимости с архитектурой Intel будет способствовать их удешевление, которое при массовом выпуске станет прямым следствием сокращения чипов в компьютере за счет создания многоядерных систем на кристалле.

Серверы с архитектурой «Эльбрус» будут опираться на многопроцессорность с использованием когерентной общей памяти. Предполагается довести количество процессорных ядер в одном сервере до 1024, используя для этого до 64 процессоров. Этот подход позволит создать сервер терафлопного диапазона.

Многопроцессорный сервер с когерентным доступом в память может рассматриваться как узел для построения суперкомпьютера. ВК «Эльбрус-3М» демонстрирует на задачах из области суперкомпьютеров производительность, близкую к пиковой (табл. 4), что делает вполне реалистичным возможность создания российского суперкомпьютера на базе микропроцессоров с архитектурой «Эльбрус». При объединении в одном комплексе от 64 до 256 серверов он сможет достичь производительности петафлопного диапазона.

Таблица 4

Производительность ВК «Эльбрус-3М» на задачах из области суперкомпьютеров


Реальные замеры / пиковые возможности

DGEMM Гвещоп/с

STREAM Гбайт/с

FFT
Гвещоп/с

64-разрядные данные

32-разрядные данные

2,3 / 2,4

4,5 / 4,8

4,6 / 4,8

4,6 / 4,8

1,5 / 1,5

2,8 / 3,0


Вычислительные комплексы серии «Эльбрус» будут объединять узлы с различной архитектурой. Первоначально планируется создание ВК, который должен объединять в себе узлы, построенные на базе микропроцессоров «Эльбрус» и «МЦСТ-R» [15, 16]. В дальнейшем предполагается использовать гибридные многоядерные микропроцессоры, предназначенные для более эффективной обработки сигналов, изображений и графики. Создание неоднородных ВК позволит существенно поднять их суммарную производительность, что наглядно продемонстрировано на примере суперкомпьютера Roadrunner фирмы IBM [17, 18].

Разработка системы контроля состояния ВК – еще одно направление, которое предполагается развивать в ВК серии «Эльбрус». Она необходима для поддержания высокой надежности и готовности систем, использующих много оборудования. Эта система позволит автоматизировать обслуживание комплекса за счет качественной диагностики неисправностей и автоматической реконфигурации для замены вышедших из строя аппаратных модулей. Подобные системы контроля использовались в многопроцессорных ВК «Эльбрус-1» и «Эльбрус-2», выпускавшихся в 1970 – 1980-х гг.


5. Развитие системного программного обеспечения

Оптимизирующие компиляторы. Дальнейшее развитие оптимизирующих компиляторов будет опираться на более эффективное использование всех видов параллелизма, предоставляемых аппаратурой.

Предполагается доработать систему автоматического распараллеливания на общей памяти с учетом использования нескольких ядер внутри одного микропроцессора, а также с учетом неодинакового времени доступа в память в составе многопроцессорного кластера, работающего на общей памяти. Для ВК, объединяющих несколько серверов в многомашинный комплекс, предстоит доработать систему автоматического распараллеливания, чтобы эффективно поддерживать системы, построенные на базе однородных и разнородных узлов.

Значительные резервы производительности сохраняются и в распараллеливании на уровне операций. По нашим оценкам логическая скорость процессора может быть увеличена за счет улучшения оптимизаций в 1,5 – 2 раза. Основные резервы производительности лежат в области сокращения потерь на доступе в память за счет использования более интеллектуальных алгоритмов локализации и предварительной подкачки данных. Совершенствование алгоритмов векторизации и областей применения векторизации, в т.ч. для целочисленных задач, также должны привести к росту производительности. Наконец, использование адаптивных алгоритмов оптимизации, в т.ч. динамических, при которых целенаправленно и более агрессивно оптимизируются часто исполняемые, «горячие» участки кода, позволит поднять производительность больших программ.

Технология двоичной трансляции. Развитие технологии двоичной трансляции включает в себя:
  • завершение создания двоичного транслятора приложений, которые могут исполняться в кодах Intel IA-32 (x86) под управлением OS Linux;
  • поддержку архитектурных расширений Intel 64 (x86-64), что позволит более широко использовать режим совместимости для 64-разрядных операционных систем и приложений, работающих на современных 64-разрядных процессорах;
  • более полно задействовать многопроцессорность и многоядерность архитектурной платформы, используя свободные ресурсы для проведения оптимизации программ, а также для поддержки параллельного исполнения нескольких потоков управления и многозадачности, присущих исходной архитектурной платформе.

Операционные системы. Развитие операционных систем предполагается в нескольких направлениях с учетом особенностей архитектурных линий «Эльбрус»:
  • разработка алгоритмов распределения памяти и организации потоков управления с привязкой их к группе процессоров, работающих с конкретной физической памятью с целью более эффективной поддержки архитектуры с неодинаковым временем доступа к памяти;
  • использование новых алгоритмов миграции процессов и потоков управления между процессорами на основе аппаратной поддержки (счетчиков обращения в «чужую» память) с целью минимизации долгих запросов в «чужую», далекую память;
  • возможность использования копий исполняемых кодов операционной системы для различных процессоров;
  • создание возможности использования принципов организации параллельных вычислений, принятых в многомашинных комплексах, опираясь при этом на общую память для повышения эффективности синхронизации и обмена сообщениями;
  • поддержка исполнения приложений, представленных в двоичных кодах IA-32, с использованием системы двоичной трансляции;
  • поддержка системы динамической оптимизации программ в процессе их выполнения.

Высокопроизводительные библиотеки. Несмотря на наличие для вычислительных комплексов серии «Эльбрус» мощных оптимизирующих компиляторов, которые позволяют извлечь максимальную производительность из аппаратуры, серьезным резервом повышения производительности остаются алгоритмы и их конкретные реализации, используемые в программах.

Поскольку ВК линии «Эльбрус» могут успешно применяться в различных областях, где требуется мощная вычислительная обработка информации, в состав программного обеспечения включены специальные высокопроизводительные математические и мультимедийные библиотеки, которые содержат пакеты программ из таких областей, как линейная алгебра, обработка сигналов, обработка изображений, 3D графика и другие.

При разработке этих библиотек используются алгоритмы и методы реализации, которые обеспечивают наиболее эффективное использование архитектурных особенностей ВК серии «Эльбрус». Первые версии библиотек уже доступны, а развитие будет происходить за счет расширения возможностей пакетов из уже реализованных областей и включения в библиотеки новых пакетов из востребованных пользователями областей.


Заключение

Универсальные ВК линии «Эльбрус» и используемые в их составе электронные компоненты, в первую очередь микропроцессоры, полностью разработаны российскими специалистами и, таким образом, представляют собой важнейшее звено информационной безопасности и технологической независимости России. Они обладают целым рядом важных технических характеристик, позволяющих в кратчайшие сроки сократить отставание и зависимость от зарубежной вычислительной техники во многих областях, начиная от настольных компьютеров и встраиваемых ЭВМ и заканчивая мощными серверами и суперкомпьютерами. Основные особенности ВК серии «Эльбрус», делающие важным ее дальнейшее развитие, включают:
  • высокую производительность вычислений за счет использования параллелизма всех уровней, в т.ч. параллелизма операций, векторного параллелизма, параллелизма потоков управления на общей памяти, параллелизма задач на многомашинном комплексе;
  • высокую архитектурную скорость (8 64-разрядных и 16 32-разрядных вещественных операций за такт) за счет освобождения архитектуры от функций распараллеливания и передачи этих функций оптимизирующему компилятору;
  • низкие характеристики энергопотребления, высокий показатель производительности в пересчете на 1 Вт, составляющий 400 Мвещоп/с∙Вт, что значительно лучше многих зарубежных микропроцессоров;
  • полную и эффективную совместимость с архитектурой микропроцессора Intel x86, которая доминирует в сегодняшних универсальных компьютерах, что является важным фактором плавной адаптации пользователей к российскому компьютеру;
  • возможность создания больших программных комплексов повышенной надежности, базирующаяся на аппаратной и системной поддержке защищенного исполнения программ, написанных на языках программирования C и C++;
  • использование многоядерных систем на кристалле, которые позволяют строить ВК различной производительности и проблемной ориентации.

Вычислительные комплексы «Эльбрус» созданы усилиями Российской компании ЗАО «МЦСТ», которая с 2007 г. интегрируется с ОАО «ИНЭУМ им. И.С.Брука» в отраслевой институт с целью ускорения работ по созданию новых поколений ВК серии «Эльбрус». Программа развития рассчитана более чем на 10-летний срок и охватывает совершенствование микропроцессоров, ВК на их основе, включая микропроцессорный набор и конструктивные элементы, а также системное программное обеспечение, в т.ч. операционные системы, компиляторы, технологию двоичной трансляции высокопроизводительные библиотеки.


Литература
  1. Hennessy J.L., Patterson D.A. Computer Architecture: A Quantitative Approach. Fourth Edition, Morgan Kaufmann publishers, 2007.
  2. Postiff M.A., Greene D.A., Tyson G.S., Mudge T.N. The Limits of Instruction Level Parallelism in SPEC95 Application // INTERACT-3 at ASPLOS-VIII, 1998.
  3. Lee H., Wu Y., Tyson G.S. Quantifying Instruction Level Parallelism Limits on an EPIC Architecture // ISPASS, 2000.
  4. Diefendorf K. The Russians Are Coming: Supercomputer Maker Elbrus Seeks to Join x86/IA-64 Melee // Microprocessor report. 1999. Vol. 11, No. 2.
  5. Кузьминский М. Отечественные микропроцессоры: Elbrus E2k // Открытые системы. – 1999. – №№ 05, 06.
  6. Babayan B.A. Main principles of E2k architecture // Free Software Magazine. 2002, Vol. 1, No. 2.
  7. Ким А.К. Развитие архитектуры вычислительных комплексов серии «Эльбрус» // Сб. научных трудов ИТМ и ВТ / Под ред. Калинина С.В. – М: ИТМ и ВТ им. С.А. Лебедева РАН, 2008, № 1.
  8. Волконский В.Ю. Оптимизирующие компиляторы для архитектуры с явным параллелизмом команд и аппаратной поддержкой двоичной совместимости // Информационные технологии и вычислительные системы. – 2004. – № 3.
  9. Рожков С.А. Надежность оптимизирующих двоично-транслирующих систем // Информационные технологии и вычислительные системы. – 1999. – № 1.
  10. Dehnert J.C., Grant B.K. Banning J.P., Johnson R., Kistler T., Klaiber A., Mattson J. The Transmeta code morphing software: using speculation, recovery, and adaptive retranslation to address real-life challenges // Proceedings of International Symposium on Code Generation and Optimization, 2003.
  11. Baraz L., Devor T., Etsion O., Goldenberg S., Skaletsky A., Wang Y. and Zemach Y. IA-32 Execution Layer: a two-phase dynamic translator designed to support IA-32 applications on Itanium-based system // Proceedings of International Symposium on Microarchitecture (MICRO-36). 2003.
  12. Бабаян Б.А. Защищенные информационные системы. ссылка скрыта
  13. Волконский В.Ю. Безопасная реализация языков программирования на базе аппаратной и системной поддержки // Вопросы радиоэлектроники, сер. ЭВТ. – 2008. – Вып. 2.
  14. Бабаян Б.А., Сахин Ю.Х. Система Эльбрус. // Программирование. – 1980. – № 6.
  15. Бабаян Б.А., Ким А.К., Сахин Ю.Х. Отечественные универсальные процессоры серии МЦСТ-R // Электроника НТБ. – 2003. – № 3.
  16. Фельдман В.М. Система на кристалле МЦСТ-R500S // Вопросы радиоэлектроники, сер. ЭВТ. – 2008. – Вып. 2.
  17. Суперкомпьютер RoadRunner. ru/computers/reviews/RoadRunner.
    html
  18. Chen T., Raghavan R., Dale J.N., Iwate E. Cell Broadband Engine Architecture and its first implementation – A performance View // IBM Journal Research and Development. 2007. Vol. 51, №. 5. 2007.