Pull to refresh

Comments 40

В системе с двадцатью четырьмя SmartSSD скорость чтения сжатых данных (LZ4) может достигать 72 Гбит/с.


Получаем 375 MiB в секунду на одном накопителе. На CPU можно сжимать по 780 MiB/s на ядро.
А в чём профит? CPU там не может быть мощнее хоста, иначе он станет не нужен на хосте.
Меньшие задержки — тоже сомнительно, скорости M.2 x4 PCIe4 и так слишком большие чтобы быть узким местом.
Противоречивые чувства вызывает это поделие с учётом необходимости писать софт ещё и под диск, но посмотрим, может и займёт нишу в проф. вычислениях.
На CPU можно сжимать по 780 MiB/s на ядро

А можно его занять чем-то более полезным, чем шифрование данных. Аппаратный оффлоад это удобно.
UFO just landed and posted this here

«софт» под диск пишется вендором и помогает разгрузить CPU на хосте для другой, более полезной работы

Фигвам. Базы данных — это сложно. Вот засунуть в устройство sequential scan — это пожалуйста. А всякие b-tree и optimistic locking — это и на процессорах с трудом делают, а уж в силиконе точно не получится.

UFO just landed and posted this here

Как вы его себе представляете в силиконе?

UFO just landed and posted this here

Как вы себе представляете оптимистичную блокировку в отсутствие compare-n-store операции между независимыми устройствами? Если не делать, то база данных либо будет тогда ограничена размером одного устройства, либо будет делать блокировку в софте.

UFO just landed and posted this here

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


Каким образом соседние устройства будут координировать оптимистичные блокировки в конкурентной среде?


Вот у вас тут база шуршит, и тут кто-то запускает foosql_client < dump.sql. И каким образом у вас образуется ACID из набора локальных блокировок per device?

UFO just landed and posted this here

… ACID не нужен, я понял. До тех пор, пока он не оказывается нужен.


Я с большим интересом хочу послушать, в какой базе у гугла хранятся финансовые транзакции с visa.

UFO just landed and posted this here
Код MySQl не такой уж и большой. Легко помещается в пзу на 100 мб и ОЗУ на 500. Для бытовых применений самое то.

При ценнике в 5K бакинских за одну только плис в этом SSD решение сразу выпадает из рамок бытового применения.

СУБД в железяке — целиком и полностью сдохнет вместе с этой железякой, что практически всегда неприемлемо. А вот переложить на железяку работу с файловой системой — это, пожалуй, было бы разумно (если только у нас не RAID).
Получается что-то типа встроенного файл-сервера внутри компьютера?

Раньше в машины IBM вставлялась плата.
С памятью, процессором и… Windows NT.
Для реализации файл сервера :)

UFO just landed and posted this here
с интерфейсом PCIe Gen3 x4


Я правильно понимаю, что они предлагают воткнуть программируемую железяку в слот с Direct Memory Access?
Интересно, насколько он защищён от несанкционированной перепрошивки?
Интересно, а теоретически какую-нибудь дедупликацию потянет? ОЗУ, правда, маловато будет на такой объем.

P.S. Когда фраза запустить Doom на SSD становится неоднозначной.
было бы интересно если бы они дали прямую возможность перепрошивать ПЛИС. получилась бы такая маленькая узкопрофильная отладочная плата с ПЛИС.) хотя наверняка на этой ПЛИС половина работы диска завязано
Я так понял в том и суть, чтобы писать под это приложения для обработки данных на лету. Для работы диска там остаётся обычный контроллер Samsung.

Звучит интересно, в условиях возможностей ПЛИС — прям идиллия. Однако, учитывая
1) сложность разработки прошивок [разработчиков таких маловато на рынке на фоне фронтендеров и иже с ними]
2) малую универсальность [на ПЛИС чаще всего решают одну задачу с целью достижения максимальной эффективности ее решения]
3) неясность, можно ли вообще будет эти прошивки туда лить, или это просто способ ускорить работу того или иного софта за счёт левых подключаемых библиотек от производителя,
4) вопросы сохранности данных [если диск занимается только записью и чтением, вероятность что-то дописать при резком отключении, к примеру, изрядно выше, чем если он по пути что-то шифрует или пакует. в конце не сойдется контрольная сумма, и куча данных будет потеряна]
на выходе имеем крайне нишевый продукт с высокой стоимостью.


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

сложность разработки прошивок

Они же пишут про поддержку разработки с использованием HLS. Т.е. если не можете на HDL, пишите на C, а среда попытается это превратить в железячную прошивку.

неясность, можно ли вообще будет эти прошивки туда лить

Можно, они же пишут про Vitis и библиотеки, Vitis — это среда для разработки прошивок ПЛИС и SoC.

малую универсальность

Имхо, конкретно эта вещь представляет собой аналог Alveo, только уже для storage, а не для сетей. Если глянете Альвео, то там тоже плата с интерфейсами и широкими возможностями программирования, в т.ч. не на голом HDL, а на всяких более знакомых обычным программистам вещах типа С. По сути и альвео и данная вещь — это полуфабрикаты, на базе которых можно сделать то, что надо конкретно вам, без возни с пайкой и разработкой печатных плат и прочего.

С, конечно, в некотором смысле решает вопрос — но только до некоторого порядка. Программирование на С для ядра Linux, микроконтроллеров вроде STM32, и долбеж в указатели, требуемый для втягивания в проекты всяких библиотек с сишным интерфейсом — очень разное программирование с разными предметными областями. Да, проще, чем Verilog/VHDL, но аппаратуру понимать надо. Любого "сишника" туда не посадишь, а их нынче на рынке немного больше нуля. Из них ещё искать придется… С++- программисты, которых больше на порядок (однако, и мой вымирает вид...), на эту позицию не подойдут, ибо языки и возможности разные абсолютно, стиль, близкий к С, в современном С++ абсолютно неприемлем.


Короче, сомнительная процедура. Найти готового HDL-паяльщика-разработчика-плат-разраба-прошивок, ИМХО, проще, чем посадить за эту задачу кого-то со знанием С.

По части необходимости понимать железо, чтобы получать нормальные результаты на HLS, с вами согласен на все 100.
Имхо, у Xilinx план следующий: они хотят расширить аудиторию пользователей (рынок), уменьшая порог вхождения, отсюда заигрывания с HLS. Кроме HLS у них в таком же ключе была тема с генерацией нейронок, когда задаешь параметры, указываешь железяку и оно генерит код или прошиву под неё без всякого понимания железячной части. Ещё была тема с генерацией сетевых вещей — SDNet, когда также без всякой возни с железом можно было генерить свои сетевые ускорители.
Почитал тут их примеры на С — макросня, куча всяких goto с метками, и прочий крайне низкоуровневый код. Снижение порога вхождения, ИМХО, близко к нулю.

Реальные подходы к снижению порога вхождения, думаю, включают написание каких-нибудь аппаратно ускоренных бэкэндов к пользовательским библиотекам на вендорных прошивках. Для того же AI/ML — например, аппаратно ускоренная реализация TensorFlow/PyTorch на их железяке, чтоб гонять модели из Kerasa в Питоне в аппаратно-упоротом режиме.

Ну, или если на уровень пониже — например, какой-нибудь бэкэнд для математики вроде BLAS сделать такой же.
Почитал тут их примеры на С — макросня, куча всяких goto с метками, и прочий крайне низкоуровневый код.

Не являясь фанатом HLS, хочу заметить, что это всё-таки гораздо выше уровня HDL.

Для того же AI/ML — например, аппаратно ускоренная реализация TensorFlow/PyTorch на их железяке, чтоб гонять модели из Kerasa в Питоне в аппаратно-упоротом режиме.

Эта тема у Xilinx уже пару лет есть, что в предыдущем комменте я и упоминал. Они купили стартап Deephi, и в том числе на его основе сделали DNNDK. DNNDK как раз включает ядро для плис и программную инфраструктуру для работы с ним. На ядрышке можно гонять TensorFlow и Keras модели. Ядрышко с теми или иными настройками можно поднять практически на любой плис, в том числе и на той, которую мы видим в данном девайсе.
Для разнообразия задач — например, вендорные прошивки существуют в количестве N штук (BLASы там, AI, сети, БД, и прочие радости) + есть документация для разработки своих, если кто хочет в HLS упороться…
Прикольная вещь. Выглядит как девайс для забав с near-data computing.
Примечательно, что ссылка в публикации Xilinx на умный твердотельный накопитель ведет на несуществующую страницу.
Ну как так можно!..
(вроде, пофиксили уже).
UFO just landed and posted this here
Название Кинтекс напоминает о компании по контролю над ядерной энергетикой в сериале Чернобыль — зона отчуждения: Эпилог
Sign up to leave a comment.

Other news