LINUX.ORG.RU
ФорумTalks

Intel и AMD при участии Линуса Торвальдса создали консультативную группу по экосистеме x86

 , linus


0

2

Компании Intel и AMD объявили о создании консультативной группы по развитию инноваций в экосистеме x86, в число участников которой вошли Линус Торвальдс, создатель ядра Linux, и Тим Суини, основатель компании Epic Games и один из ключевых разработчиков игрового движка Unreal Engine. В группу также приняты представители компаний Broadcom, Dell, Google, Hewlett Packard, Lenovo, Meta, Microsoft, Oracle и Red Hat.

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

Ожидается, что группа поможет объединить лидеров индустрии и учесть интересы как производителей оборудования, так и сообществ разработчиков ПО, для формирования будущего архитектуры и предоставления разработчикам более унифицированного набора инструкций и архитектурных интерфейсов. Область интересов группы охватывает различные применения, среди которых решения для центров обработки данных, клиентских систем, облачных сервисов, встраиваемых устройств, машинного обучения и 3D-графики.

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

https://www.opennet.ru/opennews/art.shtml?num=62056

Одних производителей процессоров Торвальдс уже проконсультировал...

Если это всё приведёт к тому, что будет повсеместно запилен x86s в новых чипах, будет очень круто.

p.s. как-то незаметно прошло впердоливание в GCC Intel APX, добавляющей ещё 16 регистров .0o

https://www.phoronix.com/news/GCC-Intel-APX-Starts-Landing

Когда чипы с этим появятся, гента наконец вновь обретёт смысл!

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

p.s. как-то незаметно прошло впердоливание в GCC Intel APX, добавляющей ещё 16 регистров

Будет паритет с ARM и RISC-V?

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

Ага. Хуже того, они ещё добавили куче инструкций третий параметр, определяющий назначение операции. Типа, можно будет писать add rax, rbc, rcx и результат операции окажется в rcx, а не как сейчас.

Короче, x86 опять превращается в RISC.

Спека тут: https://cdrdv2-public.intel.com/784266/355828-intel-apx-spec.pdf

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

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

В амд оно тоже есть?

Короче, x86 опять превращается в RISC.

Уже и «опять»? Не выдумывай, ничего никуда не превращается и не превращалось.

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

хотя процы с этой штукой можно будет считать само собой подразумеваемыми не раньше 2040 года наверно

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

В амд оно тоже есть?

Стопудов будет. У Intel и AMD ещё со времён появления amd64 есть договор делиться такими штуками.

Уже и «опять»? Не выдумывай, ничего никуда не превращается и не превращалось.

Ну кроме того, что в x86 появляется всё больше свойственных RISC фишек.

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

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

В бинарных дистрах раньше чем через 10 лет после начала производства не жди, никто в здравом уме не будет так портить себе репутацию. Современная 64-бит убунта думаю вполне работает на железе 2010 года.

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

всё больше свойственных RISC фишек

Операция с тремя аргументами это как раз в противоположную сторону. А количество регистров вообще никак не связано.

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

В бинарных дистрах раньше чем через 10 лет после начала производства не жди, никто в здравом уме не будет так портить себе репутацию

лол ты не шаришь. Никто не мешает выкатить отдельные сборки.

AVX до сих пор не база, если что, и если оно кому-то нужно - об этом принято отдельно предупреждать.

AVX не каждому софту поможет. А вот увеличение количества регистров снижает количество запросов в кэш/память на 20% в среднем.

Операция с тремя аргументами это как раз в противоположную сторону. А количество регистров вообще никак не связано.

Ты ошибаешься.

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

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

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

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

ичо? Это вырожденный пример, он нерелевантен ничему вообще. Архитектурам RISC свойственно большое количество регистров общего назначения. У ARM64 и RISC-V их 31, например. Хотя в наше время это всё мало на что влияет. Кстати, в Apple m4 команд в полтора раза больше чем в x86 (включая AVX, да): примерно 1500 против 1000.

С другой стороны, у Intel была абсолютно упоротая CISC архитектура вообще без доступа к регистрам (все команды работают только с памятью), но зато с нативной поддержкой ООП прямо в процессоре. Называлась iAPX432, штеудовцы пытались ей x86 прибить в начале 80х. Настолько хорошо пытались, что вся контора чуть тазом не накрылась. Вот так вот выглядит каноничный CISC.

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

Архитектурам RISC свойственно большое количество регистров общего назначения. У ARM64 и RISC-V их 31, например.

Ну свойственно, и что? Это просто так совпало, это не критерий risc/cisc никаким боком. Я даже подозреваю причину: эти штуки просто более новые сами по себе. А так, у х86 тоже количество регистров начиная с 2000 года стало расти - сначала r08-r15, потом всякие xmm, ymm (они хоть и не совсем общего назначения, но вполне арифметические, да и данные в них тоже можно хранить чтобы быстрый доступ был).

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

больше чем в x86 (включая AVX, да): примерно 1500 против 1000

Вроде ж сейчас x86 с последними AVX и матрицами разросся до ~4.5 тысяч?

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

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

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

Это просто так совпало, это не критерий risc/cisc никаким боком

Это один из признаков. Второй – отсутствие прямой работы с памятью. Т.е. load-store отдельно, работа с данными отдельно.

А так, у х86 тоже количество регистров начиная с 2000 года стало расти - сначала r08-r15, потом всякие xmm, ymm

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

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

Это один из признаков. Второй – отсутствие прямой работы с памятью. Т.е. load-store отдельно, работа с данными отдельно.

load-store в аккумулятор, а не в кучу байт памяти в виде регистров. Что-то индексируемое в качестве операнда арифметики это уже признак cisc. От того, что это умеют все современные процы, позиционируемые как RISC, оно RISC не становится, просто производители разумные и понимают что надо не слепо следовать придуманному 40 (?) лет назад шаблону, а делать так как будет эффективнее. Чистый RISC проц это весьма печальное зрелище и никто их скорее всего не делает, кроме может быть каких-то совсем специальных применений.

mmx в fpu располагались, так что они не новые. r08-r15 общего назначения и их все компиляторы используют. xmm да, чуть посложнее, я об этом сразу и написал, но в целом ими можно пользоваться почти как общего назначения. То что компиляторы это не умеют (или не догадались) - это проблема компиляторов.

Как бы то ни было, идея моего сообщения была в том, что в начале х86 линейки, с одной стороны, технологии производства микросхем вынуждали экономить на каждом транзисторе, а с другой те процы не позиционировались как что-то производительное, и поэтому делать много регистров было нецелесообразно. Со временем оба этих аспекта ушли в прошлое, но взять и сделать вдруг 32 регистра вместо 8 и при этом сохранить везде преемственность и совместимость - весьма нетривиальная задача, поэтому вот сначала удвоили до 16, теперь видимо до 32. А те, кто зародился уже во времена развитой микроэлектроники и не был связан требованиями совместимости, сразу сделали их много. RISC тут ни при чём.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 2)

консультативную группу по экосистеме x86

Правильней наверное было бы назвать «спасательная группа x86», судя по успехам Apple в ARM, финансам Intel, доле nVidia в тратах корпораций на железо и бодром развитии RISC-V.

snizovtsev ★★★★★
()
Последнее исправление: snizovtsev (всего исправлений: 3)

И зачем нам это огороженная проприетарщина? Пусть тихо-мирно уходят на задворки истории, пока им пенделя хорошего не врезали. Я буду за risc-v голосовать разработкой софта и [s]рублём[/s] биткоином.

foror ★★★★★
()
Последнее исправление: foror (всего исправлений: 2)
Ответ на: комментарий от firkax

mmx в fpu располагались, так что они не новые.

Ващет новые. Хотя бы потому что больше регистров x87 размером и потому что их можно напрямую адресовать, а не долбить сраный стек FPU.

То что компиляторы это не умеют (или не догадались) - это проблема компиляторов.

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

Со временем оба этих аспекта ушли в прошлое, но взять и сделать вдруг 32 регистра вместо 8 и при этом сохранить везде преемственность и совместимость - весьма нетривиальная задача, поэтому вот сначала удвоили до 16, теперь видимо до 32.

До 16 их удвоили AMD, потому что херли бы нет-то. И проблемы почему-то не возникло. Т.е. софт скомпилированный под amd64 сразу стал использовать r8-15, потому что это вопрос компилятора. Благо, на асме никто давно не пишет. Вот так же будет с r16-31.

Как я и написал, сначала это будут гентушники и прочие собиратели дистров. Потом игруны подтянутся (куча игр уже без AVX не стартует). А потом и все остальные. Вопрос тривиальный: насколько тебе как разработчику или мейнтейнеру насрать на юзеров старого железа. И, ты не поверишь, но многим вот реально насрать.

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

Ващет новые. Хотя бы потому что больше регистров x87 размером и потому что их можно напрямую адресовать, а не долбить сраный стек FPU.

Всё наоборот. Были 80-битные регистры, из них по 64 бита выделили под MMX. А стек там и так с индексируемым доступом.

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

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

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

насколько тебе как разработчику или мейнтейнеру насрать на юзеров старого железа. И, ты не поверишь, но многим вот реально насрать.

Также как и пользователям старого железа насрать на этих разработчиков. Ибо за прошедшие три десятка лет софта под x86 уже написали столько что под любой х86-проц найти можно. И если его производительности для прикладной задачи хватает то можно использовать. Вон в управлении станками и лабораторным оборудованием до сих пор нередко трудятся процы аж из 90х годов. Да и для большинства десктопных применений топовые процы не нужны. А пример массового переезда бытовых юзеров с десктопов на смартфоны и планшеты показыват что даже и для развлекательных целей топовые процы мало кому нужны.

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

Всё наоборот. Были 80-битные регистры, из них по 64 бита выделили под MMX.

Да, ты прав. Мой косяк.

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

Про это очень много кто думал. Вот что я нашёл:

For example with a line like this - MOVQ XMM0, RAX - we are storing the value of RAX in the lower half of XMM0 register. The problems are that it’s 5 bytes long, 0.5-clock throughput and a 2-clock latency compared to MOV RBX, RAX which is 3 bytes long, 0.33-clock throughput and only 1-clock latency. We will win in situations where otherwise PUSH/POP instructions or other memory-related moves are needed. Moving back to RAX is faster having 0.33-clock throughput.

Тыц: http://x86asm.net/articles/using-xmm-for-general-purpose-simd-with-gpr/index.html

То есть, доступ в xmmX медленнее и в целом сравним с L1 кешем, плюс приводит к увеличению размера кода, а значит нагрузка на память растёт в любом случае. Кеш использовать проще. Такие дела.

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 2)

Вангую, что ШТЕУД будет сверху, а этот ваш АМуДэ — снизу.

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

...дальше OpenBSD...

Пофиксил, не благодари.

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

Вот как, обман, это ненастоящий регистр :(

firkax ★★★★★
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)