LINUX.ORG.RU

Использование машинных инструкций ИИ в ядре Linux

 , , ,


0

2

Не так давно прочёл новость, что в Intel с 14го поколения будет аппаратное ускорение в виде инструкций ассемблера для работы с ИИ. Вопрос, в ядре линукс как-то это планируется использовать или нет?

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

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

bomjevik
()

ну просто до ИИ большую кучу мат.вычислений использовали медиа-приложения: от аудио-видео-кодеков до 3д-рендеринга. там использовались операнды с плавающей точкой и больших разрядностей.

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

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

при появлении очередной идеи, эти идеи будут реализовываться ИИ

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

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

Сможешь за пол часа накидать десяток не банальных тест кейсов? А если ещё и с предметной областью не знаком?

А кто сказал, что ИИ не будет знаком с предметной областью? Файн-тюнинг генеративной модели на примерах => генерация. И здесь «галлюцинации» будут полезны. Детектирование проблем - это out-of-distribution detection. На такой задаче трансформеры (точнее BERT+VAE) тоже в топе.

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

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

Сначала я думал что это все просто бесполезная шумиха, но когда JetBrains мне насильно подсунул «Full Line code completion», я сначала его выключил, потому что где то 50% это просто бред, но потом я попробовал научится его использовать, и теперь довольно быстро прохожу глазом по нему, и определяю, подходит ли оно мне, если да, то оставляю. Дальше T9 не особо ушло, но приятное дополнение.

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

Обучается оно локально, на проекте. Бесполезный Copilot идет отдельно, по моему он полезен только в типичном Java проекте, где бесполезного кода больше чем самой логики в несколько раз.

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

MOPKOBKA ★★★★★
()
Последнее исправление: MOPKOBKA (всего исправлений: 4)
17 ноября 2024 г.
Ответ на: комментарий от u5er

А какие вообще задачи может решать ии в работе ядра?

  1. Планирование потоков. Например если по каким-то признакам ядро понимает, что данный поток пользователю не слишком важен, то его можно разместить на энергоэффекивном ядре. То же со всеми остальными ресурсами: планирование ввода-вывода, сетевых пакетов и тд.

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

  3. Выбор процессов для завершения при нехватке памяти.

  4. Выбор страниц памяти для размещения их в файле подкачке.

Сейчас ИИ даже в процессоре предсказывает переходы. А уж в ОС ему задач найдётся много.

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

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

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

Ты серьёзно считаешь, что тут вообще нужен какой-то ии? Пункт 1 должен решать разработчик по. Пункты 2, 3 и 4 разруливаются простыми алгоритмами.

Спрошу ещё раз (прошу подумать 2 раза перед ответом): какие задачи может решать ии в ядре?

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

Может таки с ИИ в ядре линукс сможет в грамотное распределение ресурсов компьютера с приоритетами и OOM killer не будет рандомно убивать процессы при зависании, а всё же будет приходить за виновником сего действа. А то у меня до сих пор попа горит как висела одна программа и выжирала все ресурсы процессора и оперативки а OOM killer грохал пш-пш аудио и кеды с иксами (когда иксы грохались то та программа сама падала, но так быть не должно).

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

Ты лучше скажи почему вот у нас и ии есть и много чего ещё, а поиграть толком не во что, 95% игр шлак полный, такое чувство что в куче навоза копаешься когда в стиме и гугле с реддитом игру ищешь. Приходится играть в старые бородатые игры. В этом году вот ничего хорошего не сделали, только рогалик elona в раннем доступе продают, но он как говно сырой и кривой пока без половины фич и является игрой по мотивам куда более старого рогалика. Были же времена - делали всякие поешки, доты, варкрафты, старкрафты, факторки, оксигенки, неголодайки, дварфов тех же, да даже жрущие в своё время процы кризисы были не так уж плохи, про чуть более хорошие AAA игры типа гта, батлфилды и прочие ассасинс криды я не говорю, но в этом году прямо вообще говно-говном делают, что говорить финалка очередная в топе игр, а вся серия финалок уныла и поди только анимешникам заходит.

peregrine ★★★★★
()

Ну про 14 поколения интела бред какой-то. Там добавили NPU - вернее его добавили еще в 10-м но вроде как он растет и толстеет от поколения к поколению. Но это отдельная штука и ее под онтопиком можно использовать скачав и поставив определеные тулзы и библиотеки от интела. У амд тоже подобное есть и еще боле жырное оно у куалкома. Но в любом случае это отдельный юнит и в ядре он никому не сдался.

Не исключаю что со временем появится и расширение инструкций для ускорения работы с этим всем и в основных ядрах процессора. Но тут смотрите - ядро в основном написано на С. Ну и ассемблерных вставок которые совместимы по идее с самыми древними поддерживаемыми процами, ну и чуть на rust. С и rust в машинные инструкции переводит компилятор, который опять же в базовой поставке ядра зарезан опциями совместимости с самым базовым вариантом x86-64, максимум можно включить core2-duo. Правда есть патчи позволяющие использовать более современные расширения - опять же эти патчи просто подставляют флаги в в мейкфайл а не патчат сам код ядра

То есть чтобы в ядре появились эти ИИ инструкции надо

  1. чтобы они появились в железе в основных процессорных ядрах, а не в нейральном сопроцессоре.
  2. чтобы эти инструкции начал поддерживать компилятор - в нашем случае это gcc и clang.
  3. вам при сборке ядра придется подсунуть компилятору опции использовать расширенный набор инструкций.

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

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

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

ext4
()