LINUX.ORG.RU

Представлена материнская плата RISC-V для ноутбука Framework Laptop 13

 framework laptop, , , ,


1

1

После того, как в ноутбуке Framework Laptop 13 появилась возможность замены материнской платы на базе Intel на материнскую плату RISC-V, компания DeepComputing (которая производит ноутбук DC-ROMA II на базе Ubuntu и планшет Pad II) запустила программу раннего доступа для своей материнской платы DC-ROMA RISC-V для него.

Материнская плата также совместима с корпусами Framework и Cooler Master, которые позволяют использовать материнские платы в качестве настольного ПК, а основана на SoC RISC-V StarFive JH7110 с ядрами SiFive U74. Этот чип используется в одноплатнике Milk-V Mars, который также работает на Ubuntu.

Программа раннего доступа открыта только для корпоративных и бизнес-клиентов, но не для разработчиков RISC-V из сообщества Linux (хотя существуют и другие варианты для них, включая упомянутые устройства и многие продукты от Pine64), поскольку в настоящее время RISC-V не обеспечивает производительность или совместимость с программным обеспечением, которую ожидают обычные пользователи или энтузиасты.

Поддерживаются системы Ubuntu 24.04 и Fedora Workstation 41.

Материнская плата DeepComputing RISC-V стоит от 199$. Это базовая цена, в которую входит сама материнская плата, корпус Coolmaster для использования в качестве мини-ПК, 2 карты расширения USB-C и карта памяти SD на 64 ГБ (на самой плате нет встроенной памяти).

Стандартный вариант вариант поставки за 299$ включает больше карт расширения (USB-A, HDMI, Wi-Fi + антенны). Профессиональный вариант за 368$ заменяет корпус Coolmaster на полноценный ноутбук Framework Laptop 13. Корпоративный вариант помимо остального предлагает 2 материнские платы, ноутбук и корпус для ПК.

>>> Подробности

★★★

Проверено: CrX ()
Последнее исправление: hobbit (всего исправлений: 4)
Ответ на: комментарий от foror

Проблемы микроконтроллеров. Когда они вообще кого-то волновали?

И что, Вы теперь на отечественный MK Amur перешли? Нет? Значит ничего не изменилось.

thegoldone ★★
()
Ответ на: комментарий от foror

А Вы попробуйте надеть галоши с логотипом RISC-V. Возможно тогда док. сразу вышлют. Ведь с Ваших слов RISC-V ситуацию меняет.

thegoldone ★★
()
Ответ на: комментарий от foror

Делать чип имеет смысл обычно когда у него будет достаточно массовое применение. Поэтому в последние пару десятков лет часто видим замену разных специализированных чипов на универсальные микроконтроллеры и программный код в них(в том числе код,прошиваемый в ПЗУ прямо при изготовлении).

если стоимость выпуска будут сравнима с печатью на 3d принтерах.

3d принтер хотя и печатает дешевым пластиком но делает это очень медленно. Мой винт для лодочного мотора печатался что-то около 13 часов. Это не считая построения модели,что тоже не быстро,хотя и намного проще чем спроектировать структуру чипа. Поэтому 3д печать хороша для штучных изделий но не подходит для сколько-нибудь массового выпуска. Аналогично тому как обычные бумажные принтеры и большие типографии сосуществуют параллельно и одно другим не заменяется. А в электронике для штучных изделий можно использовать универсальные ПЛИС,и массово выпускать уже их.

watchcat382
()
Ответ на: комментарий от jpegqs

Не нужно знать схему платы телефона.

Не то чтобы всю схему в подробностях, но нужна информация что и как подключено к чипу,которую как раз проще всего получить глядя на схему.

Но я с вами согласен что приложив титанические усилия эту информацию можно вытащить и из прошивки. Я такое делал,хотя и не с телефонами,а с девайсами попроще. Знаю насколько это сложно и трудозатратно, поэтому и высказал вам свое уважение за проделанный огромный труд.

Я живу в сельской местности на «особо охраняемой природной территории», и вот прямо сейчас по просьбе знакомого эколога ковыряю китайскую автономную фотовидеокамеру которая должна «просыпаться» по инфракрасному датчику движения и снимать зверей/птиц,которых тут пытаются изучать. В режиме ожидания камера по уверениям китайцев должна кушать 0.35мА,а кушает 6мА. И аккмулятор садится за пару суток вместо пары недель как заявлено. Чтобы мало кушать, питание частей схемы выключается и включается с помощью полевых транзисторов,которыми управляет проц. Так вот на затвор одного из этих транзисторов не приходит управляющий сигнал с ноги проца и транзистор всегда открыт. Очевидно что китайцы перепутали ноги в прошивке. Получится ли найти где именно - пока не знаю.

watchcat382
()
Ответ на: комментарий от foror

ферма 3d принтеров

Только и ферма может производить лишь что-то совсем мелкосерийное. Потому что очень медленный процесс.

В магазинах мы видим множество изделий из пластика но не видим ничего напечатанного на принтере.

watchcat382
()
Ответ на: комментарий от jpegqs

В наш век SoC загрузочная программа спрятана в чип (второй вариант).

Да, у AllWinner было именно так. Минимально запускаться он умел сам,потом читал код загрузчика или из распаяной на плате флэшки или с sd-карточки - смотря где его найдет.

В случае с Intel это таки первый вариант, на матплате есть отдельный чип, на котором работает IntelME.

Вот кстати интересно - насколько код IntelME необходим современному интеловскому процу чтобы запуститься? Я в данном случае не о настройке регистров в чипсете,а именно про сам проц. Его процесс инициализации и загрузки документирован или нет? Соответственно,можно ли теоретически создать свою системную плату в которой интеловский проц будет работать без IntelME и своего проприетарного чипсета?

watchcat382
()
Ответ на: комментарий от watchcat382

В магазинах мы видим множество изделий из пластика но не видим ничего напечатанного на принтере.

Как это не видим? Вполне себе видим: https://geekboards.ru/collection/ergonomic
Но это действительно для мелкосерийных вещей, так как для крупносерийных выгоднее уже отливать пластик.

quantum-troll ★★★★★
()
Ответ на: комментарий от Qui-Gon

до 2022 года это не являлось проблемой потому что это был просто бизнес. С 2022 года владение этими технологиями стало оружием и средством давления.

Да, США наглядно продемонстрировали всему миру к чему ведет технологическая зависимость и изрядно подорвали доверие к продукции своих компаний. Теперь все кто может будут стараться развивать и собственный и открытые стандартизованные технологии. Второе очевидно дешевле так как можно кооперироваться.

watchcat382
()
Ответ на: комментарий от Qui-Gon

если ты не в россии то да.

Они и до нынешнего политического кризиса не поставляли нам то что считали технологиями двойного назначения(продвинутые чипы от Texas Instruments,тепловизоры с высоким разрешением). Да и просто передовыми технологиями делиться не хотели. Например в двухтысячные годы были большие денежные проблемы у Опеля и Сбербанк выразил желание его купить. Так ведь немцы не продали. Не без подсказки вашингтонского обкома естественно,потому что Опель контролировался General Motors. https://www.thetimes.com/article/uncovered-gms-clash-with-the-kremlin-over-opel-nvlk09mpz58

watchcat382
()
Ответ на: комментарий от anonmyous

Смартфон вы вообще не сделаете, и проц там нужен очень даже крутой, равно как и куча другой дорогой периферии.

Тем не менее китайцы делают и продают дешевые смартфоны(и планшеты) на своих процах.

watchcat382
()
Ответ на: комментарий от watchcat382

Минимально запускаться он умел сам,потом читал код загрузчика или из распаяной на плате флэшки или с sd-карточки - смотря где его найдет.

Думаю, что это норма для всех ARM процессоров с очень редкими исключениями. В смартфонах так же, в ТВ-боксах так же, на PI-клонах и девбордах так же. У ARM контроллеров для Bluetooth/WiFi есть свой ROM, при том что всё равно драйвер для них загружает еще программного кода.

Вот кстати интересно - насколько код IntelME необходим современному интеловскому процу чтобы запуститься?

IntelME, кроме «закладочных» функций вроде включения по сети, в норме только управляет энергопотреблением процессора. Он же и включает процессор. Слышал о методах отключения ME после включения процессора. Похоже пока без него никто процессор не включал.

jpegqs
()
Ответ на: комментарий от watchcat382

Но я с вами согласен что приложив титанические усилия эту информацию можно вытащить и из прошивки.

Мне повезло найти структуры, как карту пинов и карту кнопок, и написать алгоритм для их автоматического поиска в прошивке. Чаще всего проблема с дисплеем, который может подключаться через специальный LCD контроллер или через SPI, или даже через GPIO. И есть десятки разных экранов от разных производителей, у них разные команды (даже команда получения ID для определения LCD контроллера не стандартизована), для них нужны разные настройки, бывают разные разрешения экрана.

jpegqs
()
Ответ на: комментарий от anonmyous

Не знаю, вся инфа на китайском, касательно вашей последней ссылки.

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

Другой вопрос,что довольно многие китайские сайты дико медленным и голючны при доступе «снаружи». Могут к примеру грузиться без картинок и минут по несколько на страницу.

watchcat382
()
Ответ на: комментарий от foror

Современные ТВ-приставки это почти мини-пк.

Вообще-то всякие есть. Например те что для приема российского цифрового ТВ - довольно тупые. А на плате от андроидной приставки Mele A2000G я лет десять назад именно что ПК сделал и Дебиан поставил. По производительности - как ноут на третьем пентиуме с частотой 800-1000МГц. Я даже электронные схемы в KiCAD на этом рисовал и код для МК Atmega писал и компилировал. А самое для меня важное - этот комп кушал 8 ватт электричества в процессе рисования и кодописательства так как у меня полностью автономный дом.

watchcat382
()
Ответ на: комментарий от thegoldone

Новость читали? Вышел какой-то медленный отстой на микроконтроллере, вместо процессора. Мало того, что медленный, так ещё и ужасно дорогой.

Вышел вполне себе юзабельный комп по производительности на уровне всяких пентиум-селерон или как там сейчас называется тот шлак который продается в DNS до 40 тыр. Дорогой потому что мелкосерийный. Пока продается для техногиков, о чем собственно и заявлено. Но по факту если эту штуку пустить в серию - то будет и правда 300 долларов за вполне себе приемлемый школьно-студенческий ноут.

Потом надо сказать что там достаточно достойный конструктив - ну по крайней мере в MuseBook не дешовая пластмасса как в разных irbis а вполне качественный люминий, и приличная 100% sRGB матрица.

Qui-Gon ★★★★★
()
Ответ на: комментарий от anonmyous

И второй вопрос: 5г и всякие ЛТЕ - умеют?

Пишу это через подключение через модем Huawei E3372H,китайский естественно. LET умеет, 5г нет но и не интересно из-за хронически убогой дальности. LTE можно и за 30км от вышки поймать,а 5G уже в паре км умирает.

Или будете с хайесовским протоколом управления искать?

Радиомодемы примерно все AT-командами управляются. Даже те что в роутеры встроены и самое удивительное - в смартфоны! Сам лично когда-то возился с HTC HD2,ставил на него Дебиан и запускал его радиомодем,подключался к интернету (разве что голосовые функции не пробовал задействовать,хотя соответствующие команды там есть). У кого есть андроидный девайс с root-доступом могут поискать через какой там порт модем отвечает на команды. Смотреть в сторону чего-то типа /dev/ttyACM0 и тому подобного. Можно покомандовать модемом через запущенную в андроиде терминальную программу,они есть готовые,я на APKpure находил. Как только модем ответит на ATZ,скормите ему AT+CLAC - он покажет список поддерживаемых команд. Иногда попадаются весьма интересные - например сканирование диапазона и выдача видимых CellID.

Тогда это блэк бокс.

Так любой радиомодем это блэк бокс. Кроме разве что софтовых реализаций на основе универсальных SDR-приемопередатчиков.

ещё вайфай и блютус понадобятся - ну с этим уже по-проще, но тоже открытые драйвера далеко не всегда есть.

Никто же не заставляет покупать те на которые драйверов нет. Благо сейчас не 90е годы и выбор имеется.

фон на сейлфише. Что ж вы-то не купили?

А много кто их вообще в магазине видел чтобы купить?

Звонилка.

Кому нужен не телефон,а средство доступа в всякие фейсбуки,вконтакты и инстаграмы - покупают то, на чем работает софт для доступа в эти сервисы. Вас же не удивляет когда десктопный комп выбирают под нужный пользователю софт чтобы он на нем работал. Вот и с мобильными устройствами также.

watchcat382
()
Ответ на: комментарий от anonmyous

А 5г?

Заявленная дальность у 5г всего 1-2 км если верить тому что находится в гугле. Ну и нафига он такой нужен,если LTE может и на три десятка км работать? Территория у РФ большая и дальность связи имеет первостепенное значение.

watchcat382
()
Ответ на: комментарий от thegoldone

нужно менять систему команд на что-то более вменяемое. Не такое убогое.

А на что? И чем система команд RISC-V принципиально хуже/лучше системы команд ARM? Это если рассматривать именно системы команд отдельно от их реализаций в железе. То,что для системы команд RISC-V не сделали быстрых реализаций как у ARM - так это лишь вопрос времени. Сделают,чтобы АРМу не платить лицензионные отчисления.

А RISC-V – микроконтроллер.

ARM тоже довольно долго был только в микроконтроллерах. А потому появились и смартфоны,и планшеты и ноуты и даже серверы.

watchcat382
()
Ответ на: комментарий от foror

Линукс очень убогая система, тем более для смартфона.

Не,ядро - нормально. А вот всю пользовательскую часть под смартфон надо другую делать. И получим очередной андроид.

Микрософт уже пытался совместить в одной системе десктопный и мобильный пользовательский интерфейс. Ничего хорошего не получилось ни там ни там.

watchcat382
()
Ответ на: комментарий от Clayman

У меня отношение к RISC-V так себе, но ты тут манипулируешь выставляя на сервант одно и пряча в комод тоже самое. К чему угодно можно присобачить политику, есть она там или не не важно, все архитектуры конкурирующие по определению, RISC-V это технология, технологии воспринимаются технически.

Потому что на 99% это не техническая история и никогда (можете скринить) ей не станет)

Что такое «техническая история»? Там вон ARM у X86 пользователей отжимает, и для последнего аж группу стран и корпораций объединили в целях поддержания X86 на плаву в том числе чисто искусственно и рекламно. Ой а во времена амигри да мотороллы что творилось, видов процессоров и архитектур было больше чем их пользователей.

LINUX-ORG-RU ★★★★★
()
Последнее исправление: LINUX-ORG-RU (всего исправлений: 1)
Ответ на: комментарий от anonmyous

Основная проблема - крайняя забагованность базового функционала

Так это не потому что проц плохой,а потому что налажали те кто софт писал. И это не винды двадцать лет назад где приходилось баги терпеть потому что прикладной софт под многие задачи тогда был только под них. В мире мобильных девайсов альтернативы есть и можно не терпеть.

ну и отсутствие приложений.

Это только вопрос вложенных производителем денег. Но чтобы вложить много - надо быть Гуглом или Эпплом. Даже Микрософт с их Винмобайлом не потянул.

Достали меня уже друзья с их вечными «да поставь ты уже телегу и ватсап».

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

watchcat382
()
Ответ на: комментарий от thegoldone

Сядьте и набросайте на коленке систему команд. Потом выложите в открытый доступ. Знаете что произойдёт? Ничего.

Так это потому что «на коленке» и без наличия научной степени в области CS. Разработка оптимальной системы команд - это задача не для одного дилетанта(в области процессоростроения). Прошли времена когда систему команд ARM придумала одна тётка. Впрочем, с тех пор и сама система команд была очень сильно доработана коллективами компетентных специалистов.

watchcat382
()
Ответ на: комментарий от thegoldone

Вы теперь на отечественный MK Amur перешли?

Можно подумать что этот Amur кто-то частному лицу в единичных количествах продаст. Как кстати и большинство отечественных МК и ЦПУ. И уж тем более - полную документацию и средства разработки под них. Потому что всё это делается для спецприменений,чаще всего не совсем мирных,а то и совсем не мирных.

Для частных лиц есть китайский дешевый ширпотреб. Безотносительно того,микроконтроллеры это или например одежда.

watchcat382
()
Ответ на: комментарий от quantum-troll

Вполне себе видим: https://geekboards.ru/collection/ergonomic

А где там написано что эти клавиатуры именно на 3д принтере напечатаны?

Но это действительно для мелкосерийных вещей

Вот и я о том же.

watchcat382
()
Ответ на: комментарий от jpegqs

Мне повезло найти структуры, как карту пинов и карту кнопок, и написать алгоритм для их автоматического поиска в прошивке.

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

watchcat382
()
Ответ на: комментарий от watchcat382

Можно подумать что этот Amur кто-то частному лицу в единичных количествах продаст

Где-то в предыдущих тема кто-то выкладывал ссылки на продавцов, но там цена была откровенно «негуманная»...

Для частных лиц есть китайский дешевый ширпотреб. Безотносительно того,микроконтроллеры это или например одежда.

Его и покупаем, да, ибо ценник несравненно более приемлем....

Somebody ★★
()
Последнее исправление: Somebody (всего исправлений: 1)
Ответ на: комментарий от watchcat382

И чем система команд RISC-V принципиально хуже

Тем, что элементарное действие растягивается на кучу команд.

Понимаете? Скармливаете компилятору какую-то математическую функцию. Он её преобразует в машинный код. Размер этого кода тем больше, чем проще система команд.

А это и размер исполняемого файла. И подтягивание его в память. И нагрузка на кэш. И прочее.

Смысл процессора общего назначения как раз во всяких оптимизация около вычислительного ядра. Просто делать конъюнкцию быстро недостаточно.

Сделают, чтобы АРМу не платить лицензионные отчисления.

Вы видите проблему в том, чтобы платить за разработку. А я вижу, что пока я продолжаю платить за разработку – продукт будет развиваться. И он развивается.

ARM тоже довольно долго был только в микроконтроллерах.

Никто не будет платить. Но он сам дорастёт, по Вашему? Он заморожен в своей текущей форме. И будущее её туманней некуда.

thegoldone ★★
()
Последнее исправление: thegoldone (всего исправлений: 1)
Ответ на: комментарий от watchcat382

Прошли времена

Сложность микроконтроллеров осталась такой же как и была раньше. Ничего не изменилось.

thegoldone ★★
()
Ответ на: комментарий от thegoldone

Тем, что элементарное действие растягивается на кучу команд.

Понимаете? Скармливаете компилятору какую-то математическую функцию. Он её преобразует в машинный код. >Размер этого кода тем больше, чем проще система команд.

А пруфы будут? А то гугление показывает что RISC-V выигрывает в плотности команд и наравне с ARM-овским Thumb2.

https://riscv.org/announcements/2016/04/risc-v-offers-simple-modular-isa/

https://www.bitsnbites.eu/cisc-vs-risc-code-density/

У тебя прям такая ненависть к RISC-V что можно подумать кто-то насильно заставляет тебя пользоваться RISC-V.

V1KT0P ★★
()
Ответ на: комментарий от V1KT0P

Серьёзно, верить чему-то с сайта рекламирующего RISC-V?

По второй ссылке видно, что AArch64 плодит меньше инструкций. В AArch64 нет thumb режима, у RISC-V есть кривое расширение вроде thumb2. Так почему там 32-бит ARM нет, потому что это проплаченное сравнение рекламирующее RISC-V? А значит туда не пустили конкурентов, что уделают RISC-V.

Самый смак в том, что вторая статья абсолютно не релевантна. Потому что сравнивается код скомпилированный на -O2 и -O3. Оба режима предполагают оптимизации. И мы еще не знаем другие опции компиляции, которые очень важны в сравнении плотности кода. Дело в том, что для ARM, если включить опциями поддержку векторного расширения, то компиляторы давно умеют в автовекторизацию. А это очень раздувает код. Мало того, если не использовать подсказки типа restrict на указатели (а их мало кто использует), то компилятор сделает два варианта цикла, одну векторизованную, на случай если массивы не пересекаются, и другую на случай если пересекаются.

Для такого сравнения нельзя компилировать с опциями предполагающими производительность в ущерб плотности кода. Особенно когда одни архитектуры старые, а другие новые. Потому что для старых в компиляторах за многие годы добавлено много способов ускорения кода за счёт увеличения размера. А для новой архитектуры их еще нет. Нужно компилировать с -Os для GCC и -Oz для Clang.

P.S.: Глянул комментарии, и первом же комментарии замечают про автовекторизацию и про -Os. Это тупо реклама RISC-V - проплаченные необъективные исследования.

jpegqs
()
Ответ на: комментарий от jpegqs

Так давайте объективное сравнение, не у чатгпт же спрашивать…

foror ★★★★★
()
Ответ на: комментарий от thegoldone

Понимаете? Скармливаете компилятору какую-то математическую функцию. Он её преобразует в машинный код. Размер этого кода тем больше, чем проще система команд.

Ну прям капитан очевидность. Или генерал ясен х.

Ну да - это собственно основа изначальной теории RISC. Не помню точно имен но какие-то ученые профессора проанализировали туеву хучу кода и выяснили что примерно в 80% случаев если не больше процессор гоняет простые команды и только в остаточке вызывает сложные и наровоченные. А если посмотреть транзисторный бюджет - то выясняется что 80% транзисторов в чипе заняты обработкой сложных команд которые выполняются в 20% случаев. Получили две кривые - одну по частоте использования команд другую по транзисторному бюджету и так примерно установили что х86 актуальный на время исследования далек от оптимума и надо бы чуток порезать команд.

Но при этом всем было понятно что те 20% которые выброшены из железа надо реализовывать программно.

Соответственно риск - это обмен транзисторного бюджета на более многословный ассемблерный код. Но при этом рутинный операции - которые выполняются существенно чаще чем «какая-то математическая функция» - выполняются быстрее и с большей эффективностью.

С определенного момента транзисторный бюджет перестал беспокоить ибо технологии основательно закобанели, но вот с приходом в жизнь батарейных устройств транзисторный бюджет заиграл новыми красками. И риск в лице арм не дал x86 даже шанса на мобильных устройствах - как не тужился-пыжился интел всеравно получалась горячая и прожорливая тыква. Но с другой стороны как ни тужился и не пыжился арм - до последнего времени он не мог вывалиться на рынок компьютеров и серверов.

Сейчас вот все примерно выравнялось - но судя по всему и арм уже не настолько RISC как был раньше а оброс расширениями, и активное продвижение arm на рынок компов сдерживает только огромное количество софта под x86 - в отличии от монокультурного эппла который щелчком пальцев меняет архитектуру и это сразу же триггерит пересборку всего актуального софта - в виндоуз такого не происходит (не надо только про эмуляцию которая множит на ноль все преимущества арм ).

Что до RISC-V - он тоже живет развивается и обрастает расшиерниями.Spacemit содержит векторный набор RVA22 - недавно вышел более продвинутый RVA23 , и как я понимаю не векторами едиными. Вопрос когда это реализуют в железе - ну раз вышел стандарт то значит реализуют со временем. И что-то еще будет добавляться. Тут же поймите - эта архитектура очень долго жила на бумаге и в виде смешных контроллеров типа ардуины. Более-менее серьезные компьютерные железки на ней появились вот пару лет как - а это уже качественный переход. Есть на чем пограммировать и тестировать. Значит потянутся студенты - а сегодняшние студенты это завтрашние профессора, и так далее. И главная задача этой платы в framework не конкурировать со зрелыми платформами в скорости, а просто дать возможность вживую потрогать эту платформу.

Qui-Gon ★★★★★
()
Ответ на: комментарий от jpegqs

ускорения кода за счёт увеличения размера

Ты же сам говорил, что увеличение размера плохо сказывается на производительности.

luke ★★★★★
()
Ответ на: комментарий от Qui-Gon

И риск в лице арм не дал x86 даже шанса на мобильных устройствах

Сейчас вот все примерно выравнялось - но судя по всему и арм уже не настолько RISC как был раньше а оброс расширениями

Бесплатные сдвиги были в ARM еще со времён v4, а может и раньше (более старые я просто не смотрел). А это уже нифига не RISC. В 32-бит ARM вообще мало что от минимализма RISC. В ARM есть флаги, у ортодоксальной RISC архитектуры не должно быть флагов. Почти любая инструкция может быть выполнена по условию, без прыжков. AArch64 сделал несколько шагов обратно к RISC, но всё равно далеко.

Значит потянутся студенты - а сегодняшние студенты это завтрашние профессора, и так далее.

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

jpegqs
()
Ответ на: комментарий от luke

Именно такого я не говорил. Обесценивает кэш - да. Сталкивались с тем, что на -O3 код может работать медленнее, чем на -O2? Я сталкивался. Когда компилятор пытается оптимизировать каждое место - может выйти и во вред в целом. Потому что компилятор не знает в какую стороны чаще выполняются переходы. Какое количество итераций у циклов. В итоге оптимизирует каждый цикл, если у цикла мало итераций, а компилятор предположил что много - то это будет только во вред. И еще во вред, потому что всё это обилие кода забивает кэш.

Смешно когда я слышу утверждения что современные компиляторы умеют круто оптимизировать код. А профилирование делали? Этим почти никто не занимается. Если не делали, то компилятор оптимизирует в слепую и часто ошибается, путая где код горячий, а где холодный.

Тут главное количество инструкций, если процессору нужно больше инструкций, даже если они короткие - это обесценивает его частоту. Апелляции к суперскалярности не принимаются, её нет не только в микроконтроллерах, но и в средних чипах для разной электроники. Потому что за это нужно платить энергопотреблением и ценой. Так что ARM со своей упаковкой нескольких действий в одну команду выигрывает. Как если бы у него частота была в полтора раза выше.

jpegqs
()
Последнее исправление: jpegqs (всего исправлений: 1)
Ответ на: комментарий от jpegqs

Так что ARM со своей упаковкой нескольких действий в одну команду выигрывает. Как если бы у него частота была в полтора раза выше.

Те RISC-V процессоры что поддерживают MOP Fusion могут несколько команд в одну слить. Прикинул что для DDR5 прям из памяти можно спокойно по две полновесных команды декодировать за такт, из L3 уже около 30 штук, из L1 уже 60 штук.

V1KT0P ★★
()
Ответ на: комментарий от V1KT0P

Сколько из существующих поддерживает MOP Fusion, где найти список?

А ничего что RISC с таким расширением превращается в CISC? Появляются сложные команды, что состоят из нескольких слов. Спохватились, что сразу эти команды не предусмотрели и теперь пытаются такими костылями это исправить.

jpegqs
()
Ответ на: комментарий от jpegqs

Спохватились, что сразу эти команды не предусмотрели и теперь пытаются такими костылями это исправить.

Какие-же это костыли если без MOP Fusion можно реализовать энергоэффективные процессоры а с MOP Fusion высокопроизводительные. Кстати и ARM и x86 используют MOP Fusion сливая некоторые команды в одну, хотя из твоих слов они вместо этого должны были добавить новые инструкции вместо этого.

V1KT0P ★★
()
Ответ на: комментарий от V1KT0P

Кстати и ARM и x86 используют MOP Fusion сливая некоторые команды в одну

x86 только популярные инструкции изменения/сравнения счётчика цикла сливает с прыжком. Скорее всего потому, что на заре x86 была специальная инструкция loop, что делает декремент (e)cx и прыжок. Но компиляторы не хотели её использовать. Поэтому пришлось это делать на уровне процессора.

Arm supports a number of macro-op fusion operations in their recent microarchitectures.

И это не ARM, а именно AArch64, который мне НЕ нравится.

movw + movt

Это команды для загрузки константы в регистры. Длина команды ограничена 32-бит, поэтому для загрузки длинной константы приходится выкручиваться. Так себе fusion, всего лишь костыль. В 32-бит ARM загружали константы через чтение через PC со смещением, занимало те же 8 байт, но одну команду. Видимо решили так сделать чтобы избежать критики, что загрузка констант стала медленнее. По сути очередной пример, что когда прижимает, то RISC изменяет своим принципам и делает шаг в сторону CISC.

aese + aesmc aesd + aesimc

Какие-то редкие команды для AES, видимо кому-то очень упёрлось шифрование. Скорее всего и задумывалось для продолжения предыдущей команды, но все операнды не влезли.

Ваше возражение звучит так, будто у ARM и x86 десятки, если не сотни MOP fusion, а на деле RISC-V уже планирует добавить больше чем у обоих конкурентов вместе взятых. А разговоров то было.

jpegqs
()
Последнее исправление: jpegqs (всего исправлений: 1)
Ответ на: комментарий от jpegqs

а именно AArch64, который мне НЕ нравится

Как раз именно Aarch64 смог наконец вылезти из ниши микроконтроллеров и процессоров для смартфонов и попасть в производительные десктопные компьютеры от Apple. Все эти сомнительные фичи 32 битной версии вроде кодов условий в каждой инструкции оказались не нужны.

X512 ★★★★★
()
Ответ на: комментарий от X512

попасть в производительные десктопные компьютеры от Apple.

Так не было расширения с 32 до 64-бит. Только AArch64, который по сути другая архитектура, лишь наполовину сохранившая черты ARM. И в чём состоит гордость от того, что Apple что-то выбрала? Apple как продажная женщина, прыгает с одной архитектуры на другую.

Между прочим им пришлось заново изобретать инструкции для быстрого копирования памяти. В 32-бит ARM можно было загрузить/выгрузить одной командой хоть все 16 регистров. Но в AArch64 максимум два.

jpegqs
()
Ответ на: комментарий от jpegqs

В 32-бит ARM можно было загрузить/выгрузить одной командой хоть все 16 регистров.

В x86 тоже можно было одной командой сохранить/загрузить на стек все регистры, а в x86_64 уже нельзя. Видимо там не дураки сидят и этому есть причина, раз в обеих архитектурах пришли к одному и тому-же.

V1KT0P ★★
()
Ответ на: комментарий от jpegqs

И в чём состоит гордость от того, что Apple что-то выбрала?

В том, что у ARM Limited почему-то за всю историю не получилось сделать ядра сравнимой производительности.

Но в AArch64 максимум два.

Опять инструкции считаем?

X512 ★★★★★
()
Последнее исправление: X512 (всего исправлений: 1)
Ответ на: комментарий от V1KT0P

То же касается x86 инструкций для работы со стековыми фреймами ENTER/LEAVE. Инструкции которые слишком много чего делают доставляют больше проблем, чем пользы, для реализации микроархитектуры. Не всегда меньше инструкций значит лучше.

Почему-то PUSH EBP; MOV EBP, ESP работало быстрее чем ENTER.

X512 ★★★★★
()
Последнее исправление: X512 (всего исправлений: 1)
Ответ на: комментарий от V1KT0P

В x86 тоже можно было одной командой сохранить/загрузить на стек все регистры
на стек
все регистры

Именно что все, а не выбранные, и только на стек. Поэтому использовать эту команду для копирования памяти как в ARM - невозможно. Возражение не засчитано.

jpegqs
()
Ответ на: комментарий от X512

В том, что у ARM Limited почему-то за всю историю не получилось сделать ядра сравнимой производительности.

Много ли ARM зарабатывает, по сравнению с Apple? Похоже что разница примерно раз в сто.

Предположу, что если Apple решит в очередной раз менять архитектуру, то сделают свою. И у них есть опыт и средства, чтобы сделать это хорошо. Будет полная противоположность RISC-V, никому не дадут, всё закрыто, зато быстро и продуманно.

jpegqs
()
Ответ на: комментарий от jpegqs

Поэтому использовать эту команду для копирования памяти как в ARM - невозможно.

Меняешь указатель стека на нужный участок памяти и выполняешь команду сохранения/загрузки, после восстанавливаешь указатель. Стек это просто участок памяти, а не какая-то особенная память.

V1KT0P ★★
()
Ответ на: комментарий от jpegqs

Спохватились, что сразу эти команды не предусмотрели и теперь пытаются такими костылями это исправить.

Да наоборот. Они изначально рассматривали варианты: либо ввести циск команды, либо фьюзить рисковые. Народ проголосовал за второе. Тем более, что это опционально. Можно и не делать. А вот если бы первое выбрали - там уже обязаловка бы была.

А ничего что RISC с таким расширением превращается в CISC?

Вы ещё вспомните времена, когда трушный риск должен был софтварный пейдж-волк делать на фолтах.

anonmyous ★★
()
Ответ на: комментарий от X512

В том, что у ARM Limited почему-то за всю историю не получилось сделать ядра сравнимой производительности.

Почему не получилось? Просто они за определённый TDP не хотели вылезать. Не было у них цели сделать утюг, который бы всех порвал по производительности. У интела столько спекулятивного исполнения, что львиная доля энергии уходит на пустую работу, которая потом откатывается.

anonmyous ★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.