Минималистичный векторный JIT-компилятор Loops. Оптимизация инференс-движков и СУБД с помощью слияния циклов и других приёмов.
Доклад принят в программу конференции
Целевая аудитория
Тезисы
Оптимизация - тема неиссякающая. Одним из классических методов оптимизации как для edge, так и для серверов является векторизация. При этом автовекторизация хорошо работает только на относительно простых задачах, а значит актуальной остаётся задача ручной векторизации. Мы разработали небольшой кросс-платформенный векторный JIT-компилятор для x86, Arm и Risc-V - удобный инструмент для хардкор-оптимизаторов, пишущих на C++.
В докладе обсудим:
Нишу нашего проекта, сравним его с разными JIT и AOT-решениями: xbyak, llvm, mir, rcc.
Коротко остановимся на архитектуре и дизайне.
Рассмотрим API и живые примеры использования, чтобы продемонстировать удобство.
Узнаем, как библиотека применялась в реальных проектах и какие результаты это принесло.
Дальнейшие планы развития проекта.
Профессионально программирует на C++ с 2008 года. С 2015 - компьютерное зрение, с 2017 - CAD, с 2022 - компиляторы. Сейчас занимается компьютерным зрением на производстве. Ходит в горы.
Видео
Другие доклады секции
Языки программирования и технические стеки