Здравствуйте, Pzz, Вы писали:
Pzz>Ну потому, что P4 — пример микросхемы, сделанной по технологии 90 nm.
Хорошо. Бабаян обещает "мощность в 30-200 раз большую, чем зарубежные аналоги на аналогичных технологических нормах".
То есть отечественный 90нм процессор должен быть в минимум в 2-3 раза мощнее, чем зарубежные аналоги на передовых технормах. А то и в 20 раз мощнее.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Здравствуйте, Pzz, Вы писали:
A>>И таких нюансов — горы. При этом само ядро процессора работало прекрасно.
Pzz>А что за процессор, если не секрет?
Ты не знаешь. Когда он был жив, он назывался "Кварк". 32-разрядный РИСК-процессор.
Архитектура полностью оригинальная, чтобы не ругаться за авторские права со всякими АРМ-ами и МИПС-ами.
Здравствуйте, alpha21264, Вы писали:
Pzz>>А что за процессор, если не секрет?
A>Ты не знаешь. Когда он был жив, он назывался "Кварк". 32-разрядный РИСК-процессор. A>Архитектура полностью оригинальная, чтобы не ругаться за авторские права со всякими АРМ-ами и МИПС-ами.
Здравствуйте, Pzz, Вы писали:
A>>Ты не знаешь. Когда он был жив, он назывался "Кварк". 32-разрядный РИСК-процессор. A>>Архитектура полностью оригинальная, чтобы не ругаться за авторские права со всякими АРМ-ами и МИПС-ами.
Pzz>А что с ним стало? Закрыли?
Его делали три человека.
Один решил, что он украинец и уехал в Данию.
Второму было уже 70 лет и он ушёл на пенсию.
И я, который решил, что такой проект в одно рыло не потянуть.
Может быть его даже законсервировали, но делать его некому.
A>>>Ты не знаешь. Когда он был жив, он назывался "Кварк". 32-разрядный РИСК-процессор. A>>>Архитектура полностью оригинальная, чтобы не ругаться за авторские права со всякими АРМ-ами и МИПС-ами.
A>Может быть его даже законсервировали, но делать его некому.
я правильно понял, что это честный микроконтроллер под Микроновскую линию, никаких там soft core для fpga?
Здравствуйте, vdimas, Вы писали:
S>>>>Как предполагается переключать сотни потоков? V>>>Дык, а как сейчас останавливают и запускают логические потоки? — программно. V>>>Но я не вижу проблем перенести в железо львиную долю этой логики. N>>Уже было в 80286. Почему-то к тем "таскам" возвращаться не хотят. V>Не тот уровень решения проблемы. V>Нужны многие десятки (сотни?) аппаратных потоков, чтобы это имело смысл.
Или же нужно просто не тратиться на переключение.
Например, те же регистровые блоки хитроспрятанным образом хранятся в процессоре, если он того хочет.
Это как раз сделано в Intel VMX. Супервизор говорит VMLAUNCH и появляется состояние, когда завершается — зовёт VMCLEAR. Процессор может хранить состояния разных VM, что сейчас неактивны, а может не хранить. (Думаю, большинство текущих не хранят
Вот в это я как-то больше верю. Но смущают 1) объём этих регистровых файлов (реальный), 2) сложность переключения при OoO. С остановкой конвейера оно понятно, а без остановки — добавляется ещё один уровень сложности к тому, что имеем.
При параллельной работе — ещё больше.
S>>>>Иметь регистровый банк в несколько тысяч регистров V>>>А он де-факто уже есть даже в мейнстримовых архитектурах на уровне кеша 0-го уровня — в этом банке хранятся как "реальные" регистры, куда ОоО совершает отображение-переименование, N>>Там редко когда аппаратных регистров больше в 10 раз чем архитектурных. V>А и не будет больше это отношение. V>И там не в 10 раз, а поменьше, вроде.
Ой сомневаюсь. Я не видел цифр собственно регистров, но при 97 команд уровня ISA и 224 микрооперациях, которые в пределе могут лежать в конвейере (Skylake и пара ближайших за ним поколений), 10 это даже мало.
V>Просто будет больше самих наборов регистров, т.к. будет больше аппаратных потоков.
Чтобы таки одну нить разогнать, надо много регистров.
V>>> так и таблицы разметки виртуальной памяти. N>>Кэш совсем не резиновый, а тегирование через PCID эффективно работает максимум на 1 процесс назад. По сути от того идентификатора остаётся только упрощение для ОС. V>Это схема показала себя де-факто плохой. V>Переключение контекстов дорого в основном из-за "разогрева" таблиц виртуальной памяти. V>НизачОт современному мейнстриму, кароч. ))
Так PCID как раз для сокращения разогрева и нужен.
А если все харты раздельно работают, то зачем им общий кэш трансляций?
V>И да, много потоков в одном процессе — это не то же самое, что много независимых процессов, т.е. потоки одного процесса шарят контекст исполнения.
Как раз на уровне написания кода чем меньше они будут шарить — тем лучше.
V>>> Просто требуется этот подход тоже довести до абсурда банально через экстенсивное увеличение размера кеша 0-го уровня и снабдив его огромной ассоциативной схемой отображения, N>>Как ты думаешь, почему L1 кэши памяти такие маленькие? V>Потому что сложная ассоциативная схема отображения на память — ведь отображение происходит на произвольную память. V>А для L0 эта схема очень простая — каждый поток имеет свой участок в кеше L0, т.е. "отображение" с большой вероятностью будет заключаться в старших битах адреса обращения к этому кешу, где значения этих бит константны для каждого потока. Динамическое отображение потребуется только для OoO и спекулятивного исполнения. И то... Возможно будет "дешевле" просто взять статической памяти с запасом, чем наверчивать динамическое аппаратное распределение этой памяти. ))
Разъясни подробнее, если можешь.
V>>>И я уже видел не раз эти схемы ранее (не связанные конкретно с Эльбрус-Б) и почитывал обсуждения способов решения проблематики. V>>>Они не изобретают чего-то нового — попытки реализации в железе (но совсем на другом уровне в прошлые десятилетия) уже были. N>>"Попытки", угу. V>Ну так и векторные процессоры были уже в 70-е, но выстрелили только в конце 90-х в первых 3D-видюхах, когда кол-во АЛУ взяли на порядок больше. V>Т.е., количество иногда переходит совсем в новое качество. ))
Если бы то, что ты говоришь, было верным, MMX и SSE появились бы или лет на 15 раньше, или на 10 позже. Но они появились до массовых GPGPU.
V>>>С Эльбрусом E2k та же история — абсолютно ничего нового не было изобретено, была реализация с 0-ля уже хорошо показавших себя подходов в сигнальных процах, просто довели эти подходы "до абсурда", N>>Кавычки явно лишние. V>)) V>Да не, у них на хорошем уровне получилось, не как у бедноватых сигнальных процов.
То-то до сих пор нет ни одного авторитетного независимого обзора. "И вы говорите" (ц).
V>Но это потому что ниша стоимости у проца другая, смог себе позволить.
И не могли себе позволить SRAM с сильно меньшими и более однородными(!) таймингами — за все мегатонны нефти?
Ой не верится.
Здравствуйте, karbofos42, Вы писали:
K>Ну, наладили бы производство Эльбрусов, а потом на той же фабрике хоть с RISC-V занимайтесь, хоть ещё с чем. K>А то в итоге и в Эльбрусы денег вбухали и в Байкалы и в RISC-V, а на выходе ничего, только планы на будущее.
Байкалы есть в силиконе. И изделия на них есть. Но это ARM...
Здравствуйте, koenig, Вы писали:
A>>>>Ты не знаешь. Когда он был жив, он назывался "Кварк". 32-разрядный РИСК-процессор. A>>>>Архитектура полностью оригинальная, чтобы не ругаться за авторские права со всякими АРМ-ами и МИПС-ами.
K>я правильно понял, что это честный микроконтроллер под Микроновскую линию, никаких там soft core для fpga?
Я не понял половину слов, которые присутствуют в твоей фразе.
1) Обычно словом микроконтроллер называют какой-то очень неполноценный, буквально кастрированный процессор,
который по возможностям близок к Интел 8080.
Нет, у нас был нормальный процессор, с нормальным набором команд, 32 разрядной адресацией и виртуальной памятью,
на котором запускался нормальный Линукс с графическим режимом.
2) Любой процессор можно реализовать на fpga и наш тоже.
Но Микрон действительно испёк партию наших процессоров (даже двухядерных).
Они пошли в отечественные роутеры.
Здравствуйте, Pzz, Вы писали:
Pzz>Байкалы есть в силиконе. И изделия на них есть. Но это ARM...
Я про то, что новых моделей процессоров на ARM не будет.
Если кто портировал ПО под ARM и занимался этим, то конечно молодец.
Но, кроме разработанных несколько лет назад M1000 и S1000, ничего похоже уже не появится.
Смысл телодвижений в этом направлении в итоге не понятен, инвестиции сомнительны.
Здравствуйте, koenig, Вы писали:
A>> Но Микрон действительно испёк партию наших процессоров (даже двухядерных). A>> Они пошли в отечественные роутеры.
K>спасибо, это круто K>погуглил, но архитектуру не нашел K>что-то похожее на мипс (как у всех), или что-то особенное?
Все РИСК-процессоры похожи друг на друга.
Ну да, на MIPS тоже похож.
pdf с описанием системы команд дать не могу, он ДСП.
Вот реклама: https://www2.km211.ru/docs/aboutkm211_2017y.pdf
Более полной информации в свободном доступе нет.
Было бы ОЧЕНЬ круто, если бы проект не умер. Но...
Здравствуйте, netch80, Вы писали:
V>>Нужны многие десятки (сотни?) аппаратных потоков, чтобы это имело смысл. N>Или же нужно просто не тратиться на переключение.
Дык, я именно об этом и говорю, что переключения как такового зачастую не будет, бо аппаратных потоков должно быть дохерища.
N>Например, те же регистровые блоки хитроспрятанным образом хранятся в процессоре, если он того хочет.
В кеше L0 всё, где и таблица разметки вирт.памяти.
N>Это как раз сделано в Intel VMX.
И опять это немножко не то, хоть и близко.
Понятно, что любые околопоточные вещи с хранимым контекстом потока можно притянуть за уши за аналогию, но ключевое не это, а способ запуска-останова аппаратных потоков.
N>Супервизор говорит VMLAUNCH и появляется состояние, когда завершается — зовёт VMCLEAR.
Да, программно в том числе, конечно, но больше интересует по аппаратным барьерам, например, как необходимо сводить рабочие потоки при распараллеливании циклов.
А этот барьер — просто ячейка памяти в L0, которую уменьшает счетчик, их динамически-выделяемых должно уметь создаваться немеряно для прикладных целей, сколько хватит некоей свободной для приложений памяти в L0.
N>Процессор может хранить состояния разных VM, что сейчас неактивны, а может не хранить. (Думаю, большинство текущих не хранят
Именно так.
Потоков, как неких хранимых и готовых для запуска "контекстов исполнения", должно быть намного больше, чем хватает выч.блоков для одновременного их исполнения.
Плюс необходим аппаратный форк, да еще с коэф. большим 2-х — вот тебе бесплатное распараллеливание задачи навроде умножения матриц, а то сейчас само создание потоков относительно дорого.
N>Вот в это я как-то больше верю. Но смущают 1) объём этих регистровых файлов (реальный), 2) сложность переключения при OoO.
OoO — это автомат без памяти о прошлом.
Он банально на каждом шаге сортирует независимые (если они независимые) операции по времени их ожидаемой готовности к исполнению.
N>С остановкой конвейера оно понятно
ИМХО, не получится организовать такие же выч. конвейеры как в нынешних суперскалярах в такой архитектуре, придётся разбить на конвейер декодера-предзагрузчика потока (как часть области памяти контекста, при вытеснении потока в обычную память, что делает ОС при оперировании ресурсами, конвейер сбрасывается), и конвейеры векторных инструкций, привязанные к самим выч.автоматам, и там без вариантов — надо дождаться отработки многотактовой векторной инструкции, чтобы снимать поток. А некие выч.блоки не требуют личного конвейера, типа АЛУ простых арифметических и логических операций, бо такие операции однотактные и даже можно кучу таких операций за такт в одном потоке силами OoO.
A>Все РИСК-процессоры похожи друг на друга. A>Ну да, на MIPS тоже похож. A>pdf с описанием системы команд дать не могу, он ДСП. A>Вот реклама: A>https://www2.km211.ru/docs/aboutkm211_2017y.pdf A>Более полной информации в свободном доступе нет.
интересный способ продажи
фактически, такое можно продать тому, кому кровь из носу важно чтобы чипы производились здесь, а технические детали не важны.
скажем, утверждение о высокой плотности кода при известной архитектуре было бы интересно, но в случае когда вообще ничего не известно — голословно и конкурентным приемуществом не является.
Здравствуйте, alpha21264, Вы писали:
K>>я правильно понял, что это честный микроконтроллер под Микроновскую линию, никаких там soft core для fpga? A>Я не понял половину слов, которые присутствуют в твоей фразе. A>1) Обычно словом микроконтроллер называют какой-то очень неполноценный, буквально кастрированный процессор, A> который по возможностям близок к Интел 8080.
STM32 серия — вполне себе называют микроконтроллерами, хотя это может быть мощнее Pentium I.
Здравствуйте, netch80, Вы писали:
A>>1) Обычно словом микроконтроллер называют какой-то очень неполноценный, буквально кастрированный процессор, A>> который по возможностям близок к Интел 8080.
N>STM32 серия — вполне себе называют микроконтроллерами, хотя это может быть мощнее Pentium I.
Ну, я против того, чтобы STM32 называли микроконтроллером