Эльбрус/архитектура — различия между версиями

Материал из ALT Linux Wiki
Перейти к: навигация, поиск
м (чуть доверстал картинку)
м (Ссылки: +1 и чуть переупорядочил)
Строка 37: Строка 37:
 
* [http://www.mcst.ru/doc/book_121130.pdf Микропроцессоры и вычислительные комплексы семейства «Эльбрус»] (книга, PDF)
 
* [http://www.mcst.ru/doc/book_121130.pdf Микропроцессоры и вычислительные комплексы семейства «Эльбрус»] (книга, PDF)
 
* [http://www.mcst.ru/files/5c9c8f/e30cd8/509328/000000/t.r._mustafin_a._i._alyohin_e.m._kravtsunov_b.o._makaev_bezopasnaya_sreda_ispolneniya_kriticheskih_prilozheniy_vo_vstraivaemyh_sistemah_na_baze_vychislitelnyh_sredstv_semeystva_elbrus.pdf Безопасная среда исполнения критических приложений во встраиваемых системах на базе вычислительных средств семейства «Эльбрус»] (PDF)
 
* [http://www.mcst.ru/files/5c9c8f/e30cd8/509328/000000/t.r._mustafin_a._i._alyohin_e.m._kravtsunov_b.o._makaev_bezopasnaya_sreda_ispolneniya_kriticheskih_prilozheniy_vo_vstraivaemyh_sistemah_na_baze_vychislitelnyh_sredstv_semeystva_elbrus.pdf Безопасная среда исполнения критических приложений во встраиваемых системах на базе вычислительных средств семейства «Эльбрус»] (PDF)
 +
* [http://mcst.ru/files/57571b/cf0cd8/50722d/000000/alfonsodemenkokozhin_i_dr-mikroarhitektura_vosmiyadernogo_mikroprotsessora.pdf Микроархитектура восьмиядерного универсального микропроцессора «Эльбрус-8C»]
 +
* [http://www.mcst.ru/files/5ef0c2/db0cd8/50c164/000001/d._znamenskiy_a._blinnikov_apparatnaya_podderzhka_virtualizatsii_arhitektury_elbrus.pdf Аппаратная поддержка виртуализации архитектуры «Эльбрус»]
 
* [http://www.mcst.ru/tag/51a87e3564871aef1a000000 МЦСТ > Тэги > Архитектура микропроцессоров]
 
* [http://www.mcst.ru/tag/51a87e3564871aef1a000000 МЦСТ > Тэги > Архитектура микропроцессоров]
 
** [http://www.mcst.ru/e2k_arch.shtml Основные принципы архитектуры Е2К] (2001)
 
** [http://www.mcst.ru/e2k_arch.shtml Основные принципы архитектуры Е2К] (2001)
Строка 44: Строка 46:
 
* [https://github.com/smxi/inxi/issues/197 inxi: Elbrus CPU support data and implementation]
 
* [https://github.com/smxi/inxi/issues/197 inxi: Elbrus CPU support data and implementation]
 
* [http://trueconf.ru/blog/wiki/chto-takoe-proczessor-elbrus Что такое процессор "Эльбрус"? История создания. Где применяется?]
 
* [http://trueconf.ru/blog/wiki/chto-takoe-proczessor-elbrus Что такое процессор "Эльбрус"? История создания. Где применяется?]
* [http://mcst.ru/files/57571b/cf0cd8/50722d/000000/alfonsodemenkokozhin_i_dr-mikroarhitektura_vosmiyadernogo_mikroprotsessora.pdf Микроархитектура восьмиядерного универсального микропроцессора «Эльбрус-8C»]
 
 
* [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://github.com/nrdmn/elbrus-docs elbrus-docs] ''попытка разобраться со стороны''
 
* [http://github.com/nrdmn/elbrus-docs elbrus-docs] ''попытка разобраться со стороны''

Версия 09:24, 25 февраля 2021

Elbrus arch.jpg

Архитектура "Эльбрус"

Оригинальная 64-битная Little Endian VLIW; также известна как "Эльбрус-2000" (сокращённо e2k).

Не путать со SPARC и иными RISC, а также x86 (CISC).

Архитектура ядра Эльбрус

Версии

Микропроцессоры "Эльбрус" различаются версиями микроархитектуры и системы команд; на январь 2021 года известны следующие:

Совместимость

В процессе портирования Альта была отмечена отличная практическая совместимость процессоров четвёртого поколения с бинарным кодом e2kv3, включая ядро, видеоподсистему и даже бинарный транслятор; официально она не гарантируется, хотя неофициально и подтверждается.

Производительность

При сборке под e2k для производительности и совместимости следует применять компилятор, настроенный под конкретную версию архитектуры (начиная с lcc 1.23 -- возможна настройка и под конкретный процессор).

При этом разница по 7za b, собранным под v3 и v4, на v4 составила у нас порядка процента.

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

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

Ссылки