simd.
Выжимаем максимум из BERT: токенизация в 50 раз быстрее
Статья о том, как отказ от лишней обработки ASCII ускорил токенизатор BERT в 50 разПоследние несколько месяцев мы активно возвращаем к жизни библиотеку tokenizers. Наша цель — ускорить токенизацию и снизить потребление ресурсов. Сейчас мы готовим эти улучшения к стабильному релизу v1.0.0. Главным ориентиром для нас стала скорость токенизации в МБ/с исходного текста, прежде всего для BPE (Byte‑Pair Encoding) — алгоритма, который используется в большинстве токенизаторов LLM. Теперь классические BPE‑токенизаторы обрабатывают текст до 30 раз быстрее, чем в tokenizers 0.23.
Усредняющие сети: как ускорить 8-битные сети почти без потери точности
Чтобы распознать документ на смартфоне, мало хорошо обучить нейросеть читать текст. Нужно ещё добиться, чтобы она делала это быстро на процессоре самого устройства. При разработке Smart Document Engine, системы распознавания и анализа документов, мы решаем именно такие задачи: обработка должна выполняться локально, а вычислительные ресурсы ограничены. Поэтому для нас поиск более экономных способов вычисления нейронных сетей — вполне практическая задача.
Орел или решка. C++ Edition
Джон Эдмунд Керрич известен, как человек, подкинувший монетку 10 000 раз, чтобы проверить закон больших чисел на практике. Достоверно неизвестно, сколько времени у него занял подобный утомительный эксперимент, но обстоятельства ему так или иначе помогли: он был в немецком плену, и — как иронично или издевательски это не прозвучит — у него было много свободного времени. К тому же у Джона был помощник Эрик Кристенсен, который, вероятно, удвоил скорость проведения эксперимента.
StarRocks и Trino: сходства, различия, бенчмарки и кейсы
Проект Trino (ранее PrestoSQL) изначально разработан в Meta, чтобы аналитики могли выполнять интерактивные запросы по широкому спектру хранилищ данных на базе Apache Hadoop. Благодаря эффективной обработке крупных наборов и сложных запросов, а также гибкому подключению к множеству источников данных, Trino быстро стал предпочтительным инструментом аналитики для крупных организаций.
Оптимизация языковой модели Mamba для выполнения на CPU
Большие языковые модели с успехом применяются в биоинформатике. Неудивительно, ведь язык биологических последовательностей – всего лишь часть множества знаковых систем, существующих в природе. Но есть нюанс: осмысленные фразы языка биоинформатики, как правило, гораздо длиннее фраз языков межчеловеческого общения. Популярные языковые модели на основе трансформеров требуют квадратичного увеличения объема вычислений с ростом длины входной последовательности.
Зажигаем миллиард цветов миллионом строк
16KВот мы и добрались до финальной части, в которой я расскажу, как делал большой софт, который управляет большой подсветкой
Разгон Мандельброта: SIMD с бубнами, OpenMP и CUDA
Построение множества Мандельброта — классический пример чрезвычайно параллельной задачи (embarrassingly parallel problem).Вначале мы разберем наивную реализацию, поиграемся с интринсиками (intrinsics) и, не теряя переносимости, заставим компилятор генерировать нам SIMD-инструкции. Далее добавим многопоточность и в заключение обесценим все наши старания несколькими строчками на CUDA.

