Статья удалена

Этот материал был удалён по просьбе автора.

Если кто прочитал статью и нихуя не понял:


1. Эта память не "быстрее" сама по себе, и новость вообще не про собственно память, а про то, что к ней припаяли.

2. На каждые 64MiB памяти воткнули по крошечному, очень простому процессору с ограниченным набором инструкций.

3. Для всех этих процессоров можно писать нормальный человеческий код на C (с ограничениями на то, что там можно выполнять, офк). Например 
так: https://github.com/upmem/dpu_demo/blob/sdk-2019.3/checksum/dpu/src/task.c

4. Потом можно заливать этот код на все DPU. Потом запускать его. Потом собирать результат. 
Например так: https://github.com/upmem/dpu_demo/blob/sdk-2019.3/checksum/host/src/app.c

5. Если не очень понятно, нафига оно: ваш проц в большую часть времени занимается не какими-то возвышенными задачами, а перемалывает тривиальное говно. Копирует вещи туда-сюда, сравнивает строчки, умножает стопицот маленьких векторов на маленькие матрицы, и пр. Какая-то часть этого говна очень локальна (взаимодействует только с очень маленьким фрагментом памяти) и не требует ничего сложного: хэши, криптография, распаковка (не вся), поиск, и т.д. Ну и совсем низменное, типа "забить вот эти 2Mb памяти таким-то числом". Это всё очень тривиально выгрузить на DPU и гонять одновременно на них на всех. Это более чем офигенно.

6. Поможет ли оно с не-играми? Да, и где-то очень сильно. x10 кажется преуменьшением для некоторых задач. Не для всех, офк.

7. Поможет ли оно с играми? Если вытащить в DPU всякую тривиальщину от соверменных игр, поможет не сильно, т.к. игры и так стараются минимизировать траты времени на такое. Вещи поинтересней (распаковывать звук, там) тоже можно перенести, но это надо переписывать код под DPU. Я не смотрел на набор инструкций, и пока непонятно, что именно можно было бы перенести безболезненно, а что будет сложно (кажется там нет работы с float, но может я проглядел).

Уже было чем-то похожее с SPU на PS3. Несколько очень быстрых сопроцессоров, которые работают со своим крошечным окошком памяти. Под конец жизни приставки, на них чего только не выгружали. И кадры интерполировали, и физику считали, и т.д. Там, правда, набор инструкций был здоровенный, а тут простенько всё, но зато чипов дохренища.

Если кому интересно покопаться: https://sdk.upmem.com/2019.3.0/

Короче, моё отношение: "боже ж мой, ну наконец-то, давайте уже становитесь много-миллиардной компанией и подписывайте контракты со всеми производителями памяти, чтоб завтра оно было в каждой машине".

Вам не кажется странным, что в каждой сраной копеечной microSD с алиэкспресса впаян маленький проц (иногда даже неплохой ARM), который мэнеджит всё, а вашей дорогущей геймерской плашке DDR нельзя сказать "забей вот это всё 0xFF", и надо обязательно выгружать единички с CPU небольшими кусочками? Ну наконец-то кто-то что-то сделал с этим.

247
Ответить

Спасибо, держи плюс, интереснее поста, может сам постить будешь?

21
Ответить

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

8
Ответить

 Вам не кажется странным, что в каждой сраной копеечной microSD с алиэкспресса впаян маленький проц 

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

(иногда даже неплохой ARM)

Бредятина. Там специализированный контроллер со статической логикой.

 а вашей дорогущей геймерской плашке DDR нельзя сказать "забей вот это всё 0xFF", и надо обязательно выгружать единички с CPU небольшими кусочками

А? Может ещё и импульсы на обновление ячеек процессор генерирует? Контроллер памяти на что?

3
Ответить

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

2
Ответить

Комментарий недоступен

3
Ответить

Поможет ли оно с играми?

А всё просто: если это появится на массовых устройствах — поможет. Иначе — нет.

1
Ответить

Вот это бы в содержание новости)

Ответить

Аппаратная нейросеть почти.

Ответить