Как пощупать Эльбрус, если Эльбруса нет

Этот текст выглядит как каминг-аут Эльбруса
Этот текст выглядит как каминг-аут Эльбруса

Про Эльбрус говорят две вещи: что он наш, и что он тормозит. На этом разговор кончается. Никто не говорит, чем он другой. Не «отечественный». Не «шесть ядер». Другой.

В ноутбуке процессор как кухня с поваром универсалом. Ты даёшь рецепт - он сам решает, что жарить раньше, что подождёт, куда переставить. Ты этого не видишь. Поэтому «как устроен Intel» для большинства - чёрный ящик, и так и надо.

Эльбрус дверь снимает. У него шесть конфорок, и они не одинаковые. Складывать можно на всех. Умножать - на четырёх. Писать в память - на двух. Делить -на одной, и она надолго занята. В одном такте он умеет сделать несколько дел сразу, но только если их заранее разложили по конфоркам. Не процессор жонглирует. Раскладка - это и есть работа

Вот почему его трудно «просто портировать». Вот почему он кажется медленным людям, которые меряют его как Intel. Вот почему слайды про импортозамещение ничего не объясняют: они продают флаг, а не машину.(с Байкалом аналогично ситуация, но у тех хотя бы архитектура арм, которая проще для обучения )

Я сделал штуку, где Эльбрус видно на обычном ноуте. Без железа, без qemu, без заявки. Поставил Python - и открыл.

Железа у меня не было. Эмулятор и закрытый компилятор - это уже другой спорт. Значит, нужна была модель машины и экран, где шесть дорожек видно сразу. Так получился NEX CLI.

Называется NEX CLI. Потому что круто.

Зачем я вообще полез в планировщик

Как пощупать Эльбрус, если Эльбруса нет

Сначала вопрос был другой, и честно сказать.

Если раскладка - это и есть компьютер, то, может, мы просто плохо раскладываем? Жадный компилятор берёт то, что готово раньше. На бумаге это должно оставлять такты. Значит, есть зазор, за который можно бороться.

Я этот зазор измерил.

Он есть. Он маленький. На живом прогоне - один такт из двадцати четырёх, в одном типичном конфликте. Не десятки процентов. Единицы. И источник всегда один: дефицитная конфорка. Чаще всего -та единственная, что умеет делить. Иногда -те две, что умеют писать в память.

То есть Эльбрус тормозит не потому, что «компилятор глупый». Он тормозит там, где машина узкая. Это характер, не баг.

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

Что видно, когда открываешь

Как пощупать Эльбрус, если Эльбруса нет

Ту же кухню. Без двери.

Шесть колонок - шесть конфорок. По ним разложены дела. Где пусто -в этот момент сюда класть было нечего или некуда. Одна колонка надолго занята одним делом. Это и есть та единственная конфорка, что умеет делить. Пока она занята, делить больше негде. Остальные могут работать.

Если в этот момент на неё поставили не то - всё, что ждало деления, стоит.

Это не чертёж процессора. Это тот самый характер: неравные конфорки, одна особая, и из‑за неё ужин опаздывает на шаг.

Дальше можно не смотреть, кто лучше разложил. Можно поменять заказ.

Тот же ужин, но четыре деления. Особая конфорка стоит в очереди к самой себе - долго. Те же четыре действия, только без деления: очередь расходится по всем шести, кухня свободная. Не «лучше разложить». Другой рецепт на той же плите.

Вот что значит пощупать. Не запустить систему. Увидеть, куда уходит время, когда конфорки неравные.

Что на экране

Как пощупать Эльбрус, если Эльбруса нет

Сначала гора и четыре карточки. 1. КОД - рабочее место. Слева ассемблер, снизу вкладки: расписание, замечания, вывод. Сюда приносят свой .s.

2. РАЗБОР - решётка. По вертикали такты, по горизонтали шесть каналов. Это и есть Эльбрус глазами.

3. АГЕНТ - спрашиваешь обычным языком. Он отвечает по уже посчитанным числам, а не «ну, наверное».

4. ЯДРО - маленький. 2+2, sum 8, go. Чтобы пощупать, не имея файла.

Короче говоря, я не знаю как подать свой проект. Суть , если вам нравится Эльбрус , хотите немного комфортнее понять архитектуру, проект вам понравится. Пельмени.

Если вам не нравится Эльбрус , и вообще вы не любите тыкать, вам проект не понравится

На этом все.

Код

Ии модель

Тгк

52
14
7
6
2
1
1
1
1
1