Эльбрус/архитектура: различия между версиями
м (→Архитектура "Эльбрус": "e2k") |
м (→Производительность: кто поставил лишнюю запятую?) |
||
Строка 20: | Строка 20: | ||
При сборке под e2k для производительности и совместимости следует применять компилятор, настроенный под конкретную версию архитектуры (начиная с [[эльбрус/lcc|lcc 1.23]] -- возможна настройка и под конкретный процессор). | При сборке под e2k для производительности и совместимости следует применять компилятор, настроенный под конкретную версию архитектуры (начиная с [[эльбрус/lcc|lcc 1.23]] -- возможна настройка и под конкретный процессор). | ||
При этом разница по {{cmd|7za b}}, собранным под v3 и v4, на v4 | При этом разница по {{cmd|7za b}}, собранным под v3 и v4, на v4 [[эльбрус/тесты|составила]] у нас порядка процента. | ||
Известно, что при переходе на e2kv6 "штраф" бинарникам, оптимизированным под предыдущие версии архитектуры, в ряде случаев вырастет, т.к. вследствие значительного роста тактовой частоты сильно изменятся планируемые задержки при работе с памятью и не ожидающий этого код будет чаще попадать на останов конвейера. | Известно, что при переходе на e2kv6 "штраф" бинарникам, оптимизированным под предыдущие версии архитектуры, в ряде случаев вырастет, т.к. вследствие значительного роста тактовой частоты сильно изменятся планируемые задержки при работе с памятью и не ожидающий этого код будет чаще попадать на останов конвейера. |
Версия от 19:26, 22 октября 2019
Архитектура "Эльбрус"
Оригинальная 64-битная Little Endian VLIW; также известна как "Эльбрус-2000" (сокращённо e2k).
Версии
Микропроцессоры "Эльбрус" различаются версиями микроархитектуры и системы команд; на июль 2019 года известны следующие:
- v2: "Эльбрус-2С+", "Эльбрус-2СМ" (устарела)
- v3: "Эльбрус-4С" (предыдущая)
- v4: "Эльбрус-8С", "Эльбрус-1С+" (актуальная)
- v5: "Эльбрус-8СВ" (инженерные образцы, расширенные векторные вычисления)
- v6: "Эльбрус-16С", "Эльбрус-12С", "Эльбрус-2С3" (перспективная, с аппаратной виртуализацией)
Совместимость
В процессе портирования Альта была отмечена отличная практическая совместимость процессоров четвёртого поколения с бинарным кодом e2kv3, включая ядро, видеоподсистему и даже бинарный транслятор; тем не менее официально она не гарантируется.
Производительность
При сборке под e2k для производительности и совместимости следует применять компилятор, настроенный под конкретную версию архитектуры (начиная с lcc 1.23 -- возможна настройка и под конкретный процессор).
При этом разница по 7za b, собранным под v3 и v4, на v4 составила у нас порядка процента.
Известно, что при переходе на e2kv6 "штраф" бинарникам, оптимизированным под предыдущие версии архитектуры, в ряде случаев вырастет, т.к. вследствие значительного роста тактовой частоты сильно изменятся планируемые задержки при работе с памятью и не ожидающий этого код будет чаще попадать на останов конвейера.