LINUX.ORG.RU

AMD создаёт команду для внедрения Rust в GPU-стек — от компиляторов до прошивок

 , , , ,

AMD создаёт команду для внедрения Rust в GPU-стек — от компиляторов до прошивок

0

1

5 сентября стало известно о новом направлении AMD по использованию Rust в низкоуровневом программном стеке графических процессоров. Сотрудник AMD Харш Менон (Harsh Menon) сообщил о формировании небольшой специализированной команды, задача которой — «push Rust deep into the GPU stack». В качестве направлений он перечислил компиляторы, runtime, firmware, архитектуру GPU и совместное проектирование аппаратного и программного обеспечения.

Объявление подтверждается опубликованной самой AMD вакансией Software Development Engineer — Rust, Compilers, and GPU Systems. В ней компания прямо называет Rust «core technical direction» при разработке системного ПО следующего поколения для GPU. Работы должны охватить компиляторы, runtime, низкоуровневое ПО GPU, прошивки и средства разработки. AMD отдельно подчёркивает: «Rust is not incidental to this role» — язык рассматривается не как вспомогательный инструмент для отдельных утилит.

Одной из целей объявлено превращение Rust в полноправный инженерный язык в соответствующих частях GPU-стека. Речь идёт не только о написании отдельных компонентов, но и об интеграции toolchain, создании библиотек, правил разработки, диагностики, тестирования и способов развёртывания такого кода в production. Разработчик должен заниматься как ближайшими реализациями, так и долгосрочной архитектурой применения Rust на нынешних и будущих платформах AMD.

Особое место отводится компиляторам. В описании обязанностей AMD перечислена практически вся цепочка преобразования программы: rustc → MIR → промежуточные представления и MLIR → LLVM IR → AMDGPU code generation. Планируется разработка проходов анализа и преобразования кода с учётом особенностей исполнения на GPU: отдельных пространств памяти, синхронизации, аппаратных возможностей и специализированных GPU-операций. Это указывает на работы не просто по переносу существующего host-кода на Rust, но и по развитию инфраструктуры, необходимой для использования Rust значительно ближе к исполняемому на GPU коду.

Другим направлением станут интерфейсы между различными уровнями системы. AMD собирается разрабатывать типизированные и пригодные для аудита границы между компилятором, host runtime, кодом GPU, firmware и аппаратурой. Отдельно упоминаются ABI, размещение аргументов, calling conventions, работа linker и loader, ELF и метаданные AMD GPU code objects. Таким образом, ставка делается не только на защиту памяти, обычно ассоциируемую с Rust, но и на уменьшение числа ошибок на границах между компонентами сложного GPU-стека.

В самой вакансии AMD подчёркивает, что memory safety не решает проблему корректности целиком. Для GPU-систем имеют значение конкурентный доступ, порядок выполнения операций, совместимость ABI, поведение устройства и преобразования, выполняемые компилятором. В перечне требуемых областей знаний поэтому фигурируют также анализ программ и formal methods — предполагается формализовать часть предположений, существующих между программным обеспечением и аппаратурой, и проверять их при разработке.

Rust планируют применять и ещё ниже — в средах без полноценной стандартной библиотеки. AMD прямо упоминает разработку или усовершенствование bare-metal и no_std компонентов на Rust, где требуется предсказуемое взаимодействие с аппаратурой, ограниченное состояние и контролируемое поведение при ошибках. В сочетании с отдельно названным firmware это означает, что область эксперимента не ограничивается пользовательскими библиотеками и компиляторами.

Для Linux направление представляет дополнительный интерес из-за структуры программного стека AMD. ROCm распространяется как открытый программный стек для вычислений на GPU и включает средства разработки, API, runtime, компиляторы и взаимодействует с драйвером AMDGPU. В документации ROCm сама AMD описывает современный стек своих ускорителей как взаимозависимый набор из GPU firmware, драйвера AMDGPU и пользовательских компонентов ROCm.

При этом из объявления не следует, что AMD собирается переписывать существующий драйвер Linux amdgpu на Rust. В первоисточниках говорится шире о «low-level GPU software», firmware, runtime и компиляторах, но конкретного плана замены написанных на C частей amdgpu не опубликовано. Поэтому формулировки вроде «AMD переводит Linux-драйвер на Rust» на данном этапе были бы преждевременными.

Не объявлено и то, что весь создаваемый на Rust код обязательно станет открытым. Значительная часть Linux- и ROCm-стека AMD развивается как открытое ПО, однако в новой вакансии речь идёт прежде всего о технической архитектуре и production-разработке, а условия распространения будущих компонентов там не определены.

Таким образом, пока речь идёт не о завершённом продукте или переносе существующего проекта, а о формировании внутри AMD отдельной компетенции по системному Rust для GPU. Судя по перечню задач, компания рассматривает язык сразу на нескольких уровнях — от rustc, MLIR и LLVM до runtime, ABI, firmware и взаимодействия непосредственно с аппаратурой. Насколько далеко Rust в итоге проникнет в открытый Linux/ROCm-стек AMD, станет понятно после появления первых результатов работы новой команды.

>>> Источник

★★★★★

Проверено: cetjs2 ()

Узнал автора с 11 слов.

А вот скажите - их кто то заставляет - тайное мировое правительство там? Или раст настолько крут? Ведь реально - как по щелчку пальцами вжух и все начали его внедрять.

Ну вот мозилла нихрена не та организаия, которая обладает каким то нереальным влиянием.

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

Это ровно та же ситуация, что в РФ с «импортозамещением». Rust даёт дополнительные баллы пои оценке для госухи, даже если его там микроскопические количества. А госуха позволяет брать жЫрные контракты, военка, аэроспейс, вот это всё.

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

Старые пердуны этого не то что написать, осознать бы не смогли что тут вообще происходит. Значит в принимающие решения пролезли молодые и шибко деятельные. У кого то в жопе засвербело и он решил «сделать мир лучше».

Это единственное адекватное объяснение. Впрочем, это объясняет вообще все события в мире в последнее время.

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

А вот скажите - их кто то заставляет - тайное мировое правительство там? Или раст настолько крут?

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

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

А вот скажите - их кто то заставляет - тайное мировое правительство там?

Си и плюсы управляются большими комитетами, где все приходится обсуждать и доказывать, пропозалы слать. В зиге вообще ЛПРы имеют свое мнение и даже нейронками не пользуются. Натуральные экстремисты.

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

Lrrr ★★★★★
()

Обожаю такие новости: так много фриков набегает. Забавно, что никто из них не является разрабом на C или Rust, но мнение имеет.

zloelamo ★★★★
()

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

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

Си и плюсы управляются большими комитетами, где все приходится обсуждать и доказывать, пропозалы слать.

По итогу «У семи нянек дитя без глазу».

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

Да, прогресс сейчас двигается корпами, такова жизнь.

Gordon
()

теперь дрова будут на 100% делать в нейросетках потому, что никто не будет с этой кучей руста разбираться, проще переписать.

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

То есть тайное правительство. А им какая от этого выгода? Мне первопричины понять.

Хитрый план прибить конкурентов?

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

Партия поставила перед комсомолом задачу: кровь из носа найти применение LLMкам дабы высосать под них еще больше баблишка из окружающей действительности. Ну там развести крупных и ритейл инвесторов, присосаться к бюджетным дойкам тёти Сэми (stargate), и тп.

Комсомол ответил: есть! И начал переписывать все что шевелится на раст, бо в переписывании LLMкам применение судя по всему действительно находится.

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

Я не думаю, что такая сложность использовать ИИшки с сишкой.

Тем более с учетом количества доступного для обучения кода на сишке. Это на два порядка проще.

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

Для того чтобы освоить бюджетные и инвесторские средства на создание, развитие и поддержание работы LLM, очевидно же. Solution in search of a problem.

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

внедрения Rust в GPU-стек — от компиляторов до прошивок

Чтобы ИИшечку туда можно было поместить, очевидно же.

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

Мне первопричины понять.

0. Стая малолетних дебилов из американских вузов с крайне левыми либеральными настроениями, желательно с синими волосами и средним полом;
1. Кучка ушлых неудачников, для которых любая движуха == попил госбюджета;
2. Кучка старых пердунов на гос вакансиях, которых невозможно уволить и которые живут с откатов предыдущей кучки;
3. ???
4. Rust везде

Добро пожаловать в систему, Нео.

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

а вы? своим мнением поделитесь? (имеете опыт си-раст?)

Опыт есть и с тем и с тем, но он нерелевантен новости.

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

Claude хорошо пишет на Расте несопровождааемый человеком код. Причем эти - даже не скрывают цели «push Rust deep».

Да, считайте меня конспирологом, но это все в угоду новому направлению делается - насадить всех на кукан ИИ разработки, да на такой, чтобы ты , если что, с него не слез. И на другой - не пересел :)

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

Я почти уверен, что на сишке оно пишет лучше. Просто потому что доступного для обучения кода на сишке в сто раз больше любой направленности. Причем совместимого.

А на раст мало того что кода 1%, так еще и куча несовместимых версий.

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

На сишке оно ошибается, а на расте ему компилятор не дает глупость написать :). Идея в том, чтобы

  1. Ты использовал Claude
  2. Генерируемый код был бы огромен и сложен. Раст - сложен, синтаксически, не говоря уж..
  3. Тебе приходится использовать Claude, потому что та codebase, которая уже нагенерена - это священный копролит, там не разобраться человеку.

Одна контора заплатила другой, чтобы осложнить пользователям жизнь. Норм. Работал я в игрушечной конторе в 2000х и нашей конторе платил Интел, чтобы мы сделали игрушку совместимую лишь с самым новым железом, а старое - дропнули. Дали денег и Интеловские семинары по Undocumented Intel Ж)))

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

Что «зачем», зачем на раст переписывать? Я думал, что этот вопрос уже 100 раз обсудили в разных контекстах и интерпретациях. За последний месяц ничего не изменилось.

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

внедрения Rust в GPU-стек — от компиляторов до прошивок

Чтобы ИИшечку туда можно было поместить, очевидно же.

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

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

создаёт «элит» группу из двух человек

Один - актив, второй - пассив?

Или в другой терминологии, начальник - подчинённый.

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

Я почти уверен, что на сишке оно пишет лучше.

Это абсолютно неверно. Если вы подумаете, вы сами объясните, почему модель пишет очень плохой Си-код. И дело не в наличии большого объёма кода. Дело в неоднозначности. Лучше иметь 355 несовместимых, но строго детерминированных версий, чем одну недетерминированную.

VIT ★★★
()

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

Нейросети пишут код на Си под Xorg и sysvinit ничуть не хуже чем на Rust под Wayland и systemd.

И если завтра ЦРУ заявит, что «2 + 2 = 4», то от этого математика не станет ложной.

Хейтеры Rust'а допускают как логическую ошибку Ad Hominem Сircumstantial, так и строят на ней целые теории заговора.

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

Нейросети пишут код на Си под Xorg и sysvinit ничуть не хуже чем на Rust под Wayland и systemd.

И вы, безусловно, сможете этот тезис аргументированно доказать?

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

Ну основной посыл Антропиков - смотрите, на Расте не хуже, и, сюрприз, вот вам ИИ-генератор кода на Расте, он платный, но зато хороший!

Антропики спонсируют много проектов по переписыванию на Расте - или прямо или опосредовано.

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

То есть целая страна (а по сути империя на половину мира) продвигает интересы одной типа частной компании? Ну тут есть над чем подумать.

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

Ну, не без армии полезных идиотов это все двигается, конечно. Это моя гипотеза, я считаю - обоснованная. Но кому-то покажется теорией заговора - ну, спорить не буду. Может - за NVIDIA гонятся. А может - тем и тем заплатили, «to push Rust deep». Вот и пушат.

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

При этом вас не удивляет, если такую компанию называют «Шелл», «Бритиш Петролиум», или «Шеврон», а если компанию называют «ОпенЭйАй» или «Антропик», то что-то сильно изменилось в мире?

VIT ★★★
()

AMD должна сначала научится делать железо! В смысле чипы. Они проигрывают всем во всем. Какая разница есть ли у них там Rust или нет? У них железо заржавело. Сейчас выходит Mac Studio и он по всем параметрам уделает AMD. Они больше не нужны.

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

Через год будут нужны: «New updated GPU software thanks Rust, ….(список необычайных улучшений и достижений)»

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

А я не собираюсь его доказывать. Я просто обращаю внимание на то, что он логичен.

ИИ учатся подражать человеку обучаясь на его текстах. И кода на Си, на котором могут обучить эти модели, вагон и тележка.

На том же Паскале, например, они пишут гораздо хуже, потому что им мало дают для обучения кода на Паскале.

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

А на раст мало того что кода 1%, так еще и куча несовместимых версий.

Все с точностью до наоборот! С и С++ это катастрофа в плане совместимости. И нет никаких возможностей узнать на какой версии был написан код. В Rust это не так.

А кода мало - да. Но это меняется.

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

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

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

Если вы посмотрите последние публикации на том же архиве, вы увидите, что последние года два - всплеск статей на тему ИИ разработки на Раст. Там ситуация простая (и на эту тему есть статьи) - Компилятор Раст становится частью контура. Агент нагенерил - cargo check проверил, агент исправил, повторил. Размер датасета обучающего тут мало на что влияет. На Си\Си++ ИИ генерирует хуже из-за особенностей языков (читай - в память и указатели не умеет)

Антропик не хочет просто продавать Claude отдельным программистам. Он хочет, чтобы Claude стал производственным инструментом, от которого зависят целые инженерные организации. Чем больше - тем лучше. Потому что большие корпорации задают ИТ тренды, постепенно все проржавеет, с головы. «Пиши, как в Микрософте! А что там? Раст!»

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

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

Очень просто делается - опцией компилятора задаете версию и смотрите - скомпилировалось или нет :). Что это за код такой , интересно? Си++ активно меняется, да. Но Си…

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