Профессиональная конференция разработчиков высоконагруженных систем

Как мы оптимизировали ML-ки и обогнали xgboost в 7 раз

Бэкенд, теория программирования

C/C++
Алгоритмы и их сравнение
Оптимизация
Рекомендации / ML

Программный комитет ещё не принял решения по этому докладу

Целевая аудитория

Те, кто интересуется, можно ли в продакшене вычислять обученные ML-ки быстрее, чем позволяют известные инструменты

Тезисы

В нашем продакшене ML-модели используются давно, и во многих сервисах они развивались параллельно и реализованы у кого как. Настало время унифицировать инференс и повысить производительность. Чтобы избежать требования переписать весь ML, мы решили написать общее ядро для инференса деревьев решений, которое бы работало идентично xgboost/catboost, только в рамках наших ограничений (CPU и один поток). В итоге получилось сделать отдельные алгоритмы, работающие как оригинальные, но обгоняющие их по скорости.

В докладе будет как про низкоуровневые оптимизации (включая cache locality и доступ к памяти), так и про ML-специфику, и про внутренности xgboost. Попробую дать общие советы, как лучше обучать модельки, если вы хотите сильно запариться, но ускорить их вычисление под нагрузкой.

Александр Кирсанов

VK, ВКонтакте

Внутри ВКонтакте занимается разработкой KPHP и ряда других Open Source-проектов, оптимизацией ядра и работой на стыке PHP – KPHP – движки.

VK, ВКонтакте

ВКонтакте — крупнейшая социальная сеть в России и странах СНГ. Мы ставим перед собой масштабные вызовы и делаем технологии доступными для каждого пользователя. ВКонтакте помогает решать любые повседневные задачи — и даже больше!

Видео