Эльбрус/архитектура: различия между версиями
м (→Ссылки: +1 (в двух экз.)) |
м (→Ссылки: +1) |
||
Строка 49: | Строка 49: | ||
* [http://zen.yandex.ru/media/electromozg/filosofiia-arhitektury-rossiiskogo-processora-elbrus-v-chem-ego-fishka-60351f8e2dc57956366c8bb1 Философия архитектуры российского процессора Эльбрус. В чём его фишка?] | * [http://zen.yandex.ru/media/electromozg/filosofiia-arhitektury-rossiiskogo-processora-elbrus-v-chem-ego-fishka-60351f8e2dc57956366c8bb1 Философия архитектуры российского процессора Эльбрус. В чём его фишка?] | ||
* [http://www.ixbt.com/cpu/e2k-spec.html Эльбрус Бабаяна и Pentium Пентковского] <!-- http://web.archive.org/web/19991115185234/http://developer.intel.com/technology/itj/q21999/articles/art_2who.htm: Vladimir Pentkovski is a Principal Engineer in the Microprocessor Product Group in Folsom. He was one of the architects in the core team, which defined the Internet Streaming SIMD Extensions of IA-32 architecture. Vladimir led the development of Pentium III processor architecture and performance analysis. Previously he led the development of compilers and software and hardware support for programming languages for Elbrus multi-processor computers in Russia. Vladimir holds a Doctor of Science degree and Ph.D. degree in computer science and engineering from Russia. His e-mail is vladimir.m.pentkovski@intel.com. --> | * [http://www.ixbt.com/cpu/e2k-spec.html Эльбрус Бабаяна и Pentium Пентковского] <!-- http://web.archive.org/web/19991115185234/http://developer.intel.com/technology/itj/q21999/articles/art_2who.htm: Vladimir Pentkovski is a Principal Engineer in the Microprocessor Product Group in Folsom. He was one of the architects in the core team, which defined the Internet Streaming SIMD Extensions of IA-32 architecture. Vladimir led the development of Pentium III processor architecture and performance analysis. Previously he led the development of compilers and software and hardware support for programming languages for Elbrus multi-processor computers in Russia. Vladimir holds a Doctor of Science degree and Ph.D. degree in computer science and engineering from Russia. His e-mail is vladimir.m.pentkovski@intel.com. --> | ||
* [http://t.me/e2k_chat/89326 Так что у VLIW/EPIC ровно один наблюдаемый прогрессивной общественностью недостаток: это российская разработка. Повторюсь, никогда такого не было...] | |||
* [http://github.com/nrdmn/elbrus-docs elbrus-docs] ''попытка разобраться со стороны'' | * [http://github.com/nrdmn/elbrus-docs elbrus-docs] ''попытка разобраться со стороны'' | ||
Версия от 18:23, 19 августа 2021
Архитектура "Эльбрус"
Оригинальная 64-битная Little Endian VLIW; также известна как "Эльбрус-2000" (сокращённо e2k).
Не путать со SPARC и иными RISC, а также x86 (CISC).
Версии
Микропроцессоры "Эльбрус" различаются версиями микроархитектуры и системы команд; на январь 2021 года известны следующие:
- v2: "Эльбрус-2С+", "Эльбрус-2СМ" (устарела с лета 2018[1])
- v3: "Эльбрус-4С" (предыдущая) e4c, он же e2s
- v4: "Эльбрус-8С", "Эльбрус-1С+" (актуальная) e8c, он же p1; и e1cp, он же e1c+ или p2
- v5: "Эльбрус-8СВ" (опытная серия, расширенные векторные вычисления) e8c2, он же p9
- v6: "Эльбрус-16С", "Эльбрус-12С", "Эльбрус-2С3" (инженерные образцы, аппаратная виртуализация) e16c, e12c, e2c3
Совместимость
В процессе портирования Альта была отмечена отличная практическая совместимость процессоров четвёртого поколения с бинарным кодом e2kv3, включая ядро, видеоподсистему и даже бинарный транслятор; официально она не гарантируется, хотя неофициально и подтверждается.
Производительность
При сборке под e2k для производительности и совместимости следует применять компилятор, настроенный под конкретную версию архитектуры (начиная с lcc 1.23 -- возможна настройка и под конкретный процессор).
При этом разница по 7za b, собранным под v3 и v4, на v4 составила у нас порядка процента.
Известно, что при переходе на e2kv6 "штраф" бинарникам, оптимизированным под предыдущие версии архитектуры, в ряде случаев вырастет, т.к. вследствие значительного роста тактовой частоты сильно изменятся планируемые задержки при работе с памятью и не ожидающий этого код будет чаще попадать на останов конвейера.
В то время как компилируемый код благодаря большим возможностям оптимизации (в т.ч. выявления и задействования скрытого параллелизма) во время компиляции находится в потенциально выигрышном положении по сравнению с суперскалярными архитектурами, виртуальные машины для байткода и интерпретаторы симметрично находятся в положении проигрышном (для их работы характерна высокая степень зависимости по данным в циклах). Это стоит учитывать при планировании разработки.
Ссылки
- Руководство по эффективному программированию на платформе «Эльбрус»
- Краткое описание архитектуры Эльбрус
- Микропроцессоры и вычислительные комплексы семейства «Эльбрус» (книга, PDF)
- Безопасная среда исполнения критических приложений во встраиваемых системах на базе вычислительных средств семейства «Эльбрус» (PDF)
- Микроархитектура восьмиядерного универсального микропроцессора «Эльбрус-8C»
- Аппаратная поддержка виртуализации архитектуры «Эльбрус»
- МЦСТ > Тэги > Архитектура микропроцессоров
- Вычислительная платформа «Эльбрус» и её практическое применение (SECR-2018)
- О советском происхождении VLIW (тж. Вектор-инструкция: о советском происхождении VLIW; Пётр Советов)
- Оптимизация кода для платформы Эльбрус на простых примерах
- Портирование JS на Эльбрус
- inxi: Elbrus CPU support data and implementation
- Что такое процессор "Эльбрус"? История создания. Где применяется?
- Философия архитектуры российского процессора Эльбрус. В чём его фишка?
- Эльбрус Бабаяна и Pentium Пентковского
- Так что у VLIW/EPIC ровно один наблюдаемый прогрессивной общественностью недостаток: это российская разработка. Повторюсь, никогда такого не было...
- elbrus-docs попытка разобраться со стороны
- ↑ нет поддержки в OSL после 3.0-rc35, где ядро 3.14.79 и компилятор 1.21.25