Линейка процессоров Эльбрус и основные компоненты аппаратно-программной платформы "Эльбрус"

Страница создана Артур Соколов
 
ПРОДОЛЖИТЬ ЧТЕНИЕ
Линейка процессоров Эльбрус и основные компоненты аппаратно-программной платформы "Эльбрус"
Линейка процессоров Эльбрус и основные компоненты
аппаратно-программной платформы "Эльбрус"
Линейка процессоров Эльбрус и основные компоненты аппаратно-программной платформы "Эльбрус"
Универсальные микропроцессоры «ЭЛЬБРУС»
Логические и электрические схемы аппаратуры, средства                От 1-го поколения МП «Эльбрус»
разработки, BIOS, операционная система (ОС, ОПО)                     произв-ть выросла в 300 раз
созданы/портированы в России, имеются в исходных
кодах.

                                                     Эльбрус-16С             Эльбрус-2С3       Эльбрус-12С
                 Эльбрус-8С          Эльбрус-8СВ                                 16нм               16нм
Эльбрус-1С+                                               16нм
                                        28нм
    40нм             28нм                           6 поколение             6 поколение        6 поколение

 4 поколение       4 поколение        5 поколение   –1.5 TFLOPS             –0,18 TFLOPS       –1 ,1 TFLOPS
                                                    –16 ядер                –2 ядра            –12 ядер
 –25 GFLOPS        –250 GFLOPS        –580 GFLOPS
                                                    –2.0 ГГц                –2.0 ГГц           –2.0 ГГц
 –1 ядро           –8 ядер            –8 ядер
                                                    –Виртуализация          –Виртуализация     –Виртуализация
 –1 ГГц            –1.3 ГГц           –1.5 ГГц
                                                    –48 MB L2 + L3          –2 MB L2 на ядро   –36 MB L2 + L3
 –2 MB L2          –16 MB L3          –SIMD-128
                                                    –SoC                    –SoC мобильный     –SoC, 2 кан. DDR4
 –3D GPU           –DDR3              –DDR4
                                                    –8 каналов DDR4         –3D GPU+codec      –Доступная цена

    2015             2015                2018              2020                 2022                2022

  Красным – качественные изменения                   проходит испытания
                                                    Завершение исп-й 2021
Линейка процессоров Эльбрус и основные компоненты аппаратно-программной платформы "Эльбрус"
Эльбрус-16С
•   Система на кристалле
•   Производительность - до 1500/768 Gflops;
•   Количество ядер – 16;
•   архитектура Эльбрус v6
    –   Аппаратная поддержка (полной) виртуализации
    –   Поддержка (полной) виртуализации в кодах х86
    –   Доп. улучшение работы с невыровненными данными
    –   Поддержка инструментирования кода для динамической
        компиляции
•   Тактовая частота – 2 ГГц;
•   ОЗУ – DDR4-3200, 8 каналов (до 200 ГБ/с)
•   PCI-Ex. 3.0 x 16/32 (30 Гбайт/с в каждом направл-и)
•   До 4 микропроцессоров с общей памятью
•   Потребляемая мощность ~110 Вт;
•   Технология – 16 нм;
•   Количество транзисторов ~12 млрд;
Линейка процессоров Эльбрус и основные компоненты аппаратно-программной платформы "Эльбрус"
Преимущества архитектуры Эльбрус
Параллельная энергоэффективная архитектура
•  25 скалярных оп. за такт за счет явного параллелизма (микро)операций
•  Микрооперации планирует российский оптимизирующий компилятор
•  Возможности для оптимизации программистами
•  Высокая однопоточная производительность

Эффективная двоичная совместимость с Intel x86, x86-64
•  Аппаратно-программная технология динамической двоичной трансляции
•  ДТ любых операционных систем в кодах х86/x86-64 Windows , Linux, QNX и т.д.
•  ДТ приложений в кодах x86/x86-64, функционирующих в среде Linux
•  Производительность до 80% от нативной (изначально в кодах Эльбруса)

Информационная защищённость
•  Российский BIOS (сертифицирован ФСБ)
•  Защищённость против ряда кибератак «из коробки»
•  Технология безопасных вычислений
     –   Аппаратная защита целостности структуры памяти программы
     –   Отладка приложений на скорости ~80% от базовой (в незащищённом режиме)
     –   Гарантированное обнаружение атак, нарушающих структуру памяти
Линейка процессоров Эльбрус и основные компоненты аппаратно-программной платформы "Эльбрус"
Микропроцессоры Эльбрус – арх-ра ядра

                                                    RF – 256 80/128 -
                                                    битных регистров с
                                                    тегами, из них до 128
                                                    с программным
                                                    переименованием

                     /FP

                                                    PF – 32 1-битных
                                                    регистра для
                                                    хранения
                                                    предикатов с
                           /FP
                                                    тегами и
                                                    программным
                                                    переименованием

Красным указаны изменения для архитектуры в.4/в.5
(Эльбрус-8С/8СВ)
Линейка процессоров Эльбрус и основные компоненты аппаратно-программной платформы "Эльбрус"
Технология безопасных вычислений
•     Защита от ошибок программиста:
      •   неинициализированные данные
      •   контроль границ объектов
      •   обращение к освобождённой памяти
•    Защита от эксплуатации ошибок
     злоумышленником:
      •   Переполнение буфера (buffer overflow)
      •   use-after-free
•    Изоляция недоверенного модуля / защита от
     утечек информации через библиотеки
      •   межмодульная защита
•     Рост производительности труда
      программистов в несколько раз

                                                  Ошибки с системах АСУ ТП,
    В каждой тысяче строк кода содержится         связанные с неправильной
    минимум одна ошибка                           работой с памятью

    В ядре Linux содержится 20+ млн строк кода    - Отчёт Positive Technologies, 2016
Линейка процессоров Эльбрус и основные компоненты аппаратно-программной платформы "Эльбрус"
Компиляторы для АПП Эльбрус
                                                                                                                                    lcc 1.25
                                        прирост производительности (логической скорости) за
                                                  счет оптимизаций компилятора
                                                                                                                                    С: совместимость с gcc-7.3.0;
                                                                                                                                    • C90 (ANSI/ISO 9899:1990);
                                              целочисленные задачи                          вещественные задачи
                                                                                                                                    • C99 (ISO/IEC 9899:1999 as modified
                          4,00                                                                                                         by Technical Corrigenda 1 through
                                                                                                                             3,58      3);
рост производительности

                          3,50
                                                                                                                         3,28       • C11 (ISO/IEC 9899:2011) за
                          3,00                                                                                    3,07
                                                                                                           2,82                        исключением необязательного
                                                                                                    2,63
                          2,50
                                                                                     2,30
                                                                                             2,48                                      расширения _atomic.
                                                                       2,09   2,19
                          2,00                                  1,91                                              1,85   1,942,05
                                                         1,71                                       1,66   1,74
                                                                              1,50   1,55    1,59
                          1,50                    1,39                 1,45
                                           1,24
                                                  1,11
                                                         1,27   1,33                                                                C++:
                                    1,00   1,04
                          1,00
                                                                                                                                    • совместимость с g++-7.3.0;
                          0,50                                                                                                      • libstdc++ от gcc-7.3.0;
                          0,00                                                                                                      • zero cost exceptions (0eh);
                                 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020                              • C++03 (ISO/IEC 14882:2003)
                                 1.10   1.14 1.14.1 1.15    1.16   1.17   1.18   1.19   1.20   1.21   1.22   1.23   1.24   1.25     • C++11 (ISO/IEC 14882:2011)
                                                                                                                                    • C++14 (ISO/IEC 14882:2014)
                                                                версии компилятора
                                                                                                                                    • C++17 (ISO/IEC 14882:2017)
                      Руководство по оптимальному
                                                                                                                                    llvm: бета (clang + golang + rust)
                      программированию - на сайте mcst.ru
Линейка процессоров Эльбрус и основные компоненты аппаратно-программной платформы "Эльбрус"
Программная экосистема
• Собственные средства разработки:
• Fortran2003 , С11, С++17 -> 20
• Совместим с gcc, в разработке llvm back-end

• Java 8, 11
• Mono 5.16, (2021: 6.12), .NET Core 3.1.8
• NodeJS: 12.16.3

• Библиотека EML ~ 1500 функций

• Двоичный транслятор system / application
• Дистрибутив
    • Ядра: 5.4. и более ранние. Версии для Эльбрус, х86-64, SPARC
    • Более 5000 программных пакетов
    • Арх.-зависимые фрагменты и оптимизации
• PD
• + Экосистема проприетарного российского ПО…
Линейка процессоров Эльбрус и основные компоненты аппаратно-программной платформы "Эльбрус"
Программная экосистема

Lotos              Энстрим
                   СВД Встраиваемые        СЭД Дело          ЭОС
ЗОСРВ «Нейтрино-Э» системы                 СЭД Бюрократ      ИВК
Эльбрус Линукс     МЦСТ
Ось                НЦИ                     OpenSCADA      OpenSorce/ИНЭУМ   ВКС ТруКонф
Роса Линукс        Роса                    MasterSCDA     ИНСАТ             ВКС НИПС
                                                                            ВКС IVA/Масштаб
СУБД Линтер        Релекс                  Электронный Архив ЭлАР
СУБД РЕД БД        РЭД СОФТ                                                 ГИС Панорама
СУБД PostgresPro   Postgres Professional   Аналитика LuxBI     LuxMS        ГИС Горизонт
Линейка процессоров Эльбрус и основные компоненты аппаратно-программной платформы "Эльбрус"
Принципы миграции на платформу Эльбрус
                                                                           Перенос всех
    •      Исходное ПО       Перевод на стек ПО     Постепенный перенос     приложений
•       для платф. Windows   для платф. Linux/x86    ПО на арх. Эльбрус   на арх. Эльбрус

                                                                           ПОРТИРОВАНИЕ

        Слой совместимости    Слой совместимости     Слой совместимости
           Эльбрус – х86         Эльбрус – х86          Эльбрус – х86
Комбинация виртуализации и дв. трансляции
- Виртуализация: возможность исполнения гостевых ОС в кодах Эльбрус
- Двоичная трансляция: возможность запуска отдельных приложений и целиком
  ОС в кодах х86 (работает на всех поколениях архитектуры Эльбрус)
- Новое в в. 6 – возможность одновременно работать в виртуальной среде и
  использовать любой вид двоичной трансляции (отдельных приложений,
  целиком ОС)

Результат: возможность переносить с х86 на Эльбрус существующую
программную инфраструктуру целиком и постепенно мигрировать отдельные
элементы ПО на архитектуру Эльбрус.
Успешные проекты на базе СВТ Эльбрус

ФГБУ НИИ Восход                            Россети
• ЦОД для ГИС «МИР» для обработки          • Применение для цифровой
  паспортно-визовых документов нового        подстанции (РЗА) («Борская» и
  поколения (ПВДНП) с программной            «Семеновская»)
  инфраструктурой и сервисом, 24х7,
                                           РЖД
Банк России                                • Использование ВК Эльбрус для
• Прототипы Резервного решения Платежной     управления стрелочным хозяйством
  системы, Транспортного шлюза             • Подготовка к использованию ВК
• Прототип Центра обмена сообщ-ми            Эльбрус как тонких клиентов
  Системы передачи финансовых сообщ-й
                                           ПФР России
МВД России                                 • Использование СУБД PostgreSQL в
• Серверы Эльбрус для ЦАФАП и                production контуре
  дактилоскопического анализа
Модель взаимодействия АО МЦСТ с кооперацией
-   поставка материнских плат
-   поставка процессоров
-   предоставление лицензий на готовую КД, разработка под заказ
-   предоставление референс-дизайнов для самостоятельной доработки
        - поддержка
        - услуги по кастомизации
- ранний доступ партнёров к документации
- сайт сообщества
        - Форум
        - Wiki
- поставка ВК для пилотных проектов и демо-образцов

- Ферма серверов с удалённым доступом
- Демо-фонд, демо-зона (аренда, временная передача)
Ресурсы по поддержке и обмену опытом

                             https://t.me/ElbrusCPUTeam

                             https://t.me/ElbrusMCST

                             https://www.youtube.com
                             /user/ElbrusTV
Вы также можете почитать