Усредняющие сети: как ускорить 8-битные сети почти без потери точности
Чтобы распознать документ на смартфоне , мало хорошо обучить нейросеть читать текст. Нужно ещё добиться, чтобы она делала это быстро на процессоре с…
Tech news from the best sources
Чтобы распознать документ на смартфоне , мало хорошо обучить нейросеть читать текст. Нужно ещё добиться, чтобы она делала это быстро на процессоре с…
Данная статья является продолжением предыдущей статьи . Здесь рассматривается вариант прямой векторизации алгоритма FFT . Перед чтением рекомендуетс…
Когда профилируешь вычисления или инференс небольших моделей в Python, часто натыкаешься на странную вещь: вроде бы под капотом у NumPy крутится мощ…
Я добавил в Quince AVX2, FMA и немного unsafe. По всем красивым схемам торговая VM после этого должна была полететь. Она не полетела… Сначала SIMD п…
Блендинг считает функцию для всех элементов и сохраняет только нужные. Для дешевых функций это оптимально, но на pow проигрывает в несколько раз. Мо…
Дядя Хашимото сказал разобраться, я попытался. Речь про его эссе «Everyone Should Know SIMD» : SIMD должен знать каждый разработчик; примеры там на…
Уважаемые читатели, в этой статье я хочу рассказать про поиск по строке и представить свои выводы. Началось с оптимизации: сравнил поиск символа цик…
Как разогнать copy_if на NEON в 30+ раз без единой ветки в горячем цикле — эмулируем compress инструкцию, которой в NEON нет, через table lookup и н…
Range minimum query – это классическая задача, в этой заметке решаем статический вариант. Есть массив ; нужно построить структуру данных, которая ум…
За свои 17+ лет в активной разработке я встречал много проблем, но одна преследовала меня постоянно: JSON. Нет, с самим форматом…
В этой статье речь пойдёт не просто об очередном алгоритме, а о том, как можно обойти классический бинарный поиск. Казалось бы, что может быть эффек…
Примерно полгода назад я познакомился с VLIW ‑процессором Эльбрус-8СВ. На тот момент у меня уже был опыт написания кода на …
Как встроить векторизованный движок в OLTP-ядро с нуля — без отдельного аналитического слоя. Разбираем PhysicalType, SelectionVector, RowToColumnBri…