Как мы автоматизировали генерацию Baseline Profile | Даниль Гатиатуллин, Авито

Поделиться
HTML-код
  • Опубликовано: 10 июн 2024
  • Даниль расскажет, что вообще такое Baseline Profile и каким приложениям он может быть интересен. В качестве примера возьмёт наш дешевый эксперимент, который ускорил время запуска приложения на 15%. О чём ещё поговорим:
    - О самой автоматизации.
    - Об итогах в проде и влиянии на время холодного старта и время отрисовки первого кадра на экране.
    - О дальнейших шагах по улучшению.
    О спикере: Инженер в юните Performance: отвечает за производительность приложения Авито. Любит когда всё работает быстро и плавно
    Презентация Даниля: clc.to/Vdk6eQ
    Другие доклады с Митапа: • Avito Android meetup #2
    00:00 | Начало
    00:10 | Вступление
    01:06 | Что будет в докладе
    01:30 | Baseline Profiles - кому и зачем?
    01:39 | Откроем профилировщик
    02:21 | Как выполняется код
    04:20 | Profile Guided Optimization + Cloud Profiles
    05:15 | Baseline Profiles решают проблему
    05:54 | Baseline Profile - это файл
    06:24 | Что можно ускорить?
    07:10 | Распределение разных типов старта в Авито
    07:36 | Наша мотивация вкладываться в Baseline Profile
    08:37 | Как мы проверили профили локально
    09:50 | Ускорение по версии macrobenchmark-тестов
    10:21 | Проверка эффекта в проде
    12:34 | Ускорение по версии продакшена
    12:52 | Перф-тесты vs. продакшен
    14:44 | План на автоматизацию. Когда запускать сборку профиля?
    15:37 | Задача на CI для отправки релизного артефакта
    16:15 | Сборка профиля
    17:33 | Кастомные раннеры
    19:21 | Раннер тестов + macrobenchmark
    20:43 | А как сохранять?
    21:22 | Итоговый пайплайн сборки профиля
    22:24 | Итоговый пайплайн сборки релиза
    22:56 | Тест на генерацию профиля
    24:09 | Плохой тест vs.хороший тест
    24:59 | Тест на генерацию профиля
    25:47 | Результат - медленных запусков стало меньше
    26:22 | Детализация холодных запусков
    27:40 | А что с FPS в проде?
    28:20 | Дальше - расширять сценарий
    29:01 | Пробовать startup profiles
    29:44 | «Мониторинг»
    30:14 | Нужен ли вам Baseline Profile
    33:08 | Ответы на вопросы
    AvitoTech - это команда инженеров Авито. Подпишитесь на наш канал, соцсети и блоги, чтобы узнавать больше о технологиях Авито 👇🏻
    ВК: avitotech
    Телеграм: t.me/avitotech
    Хабр: habr.com/ru/company/avito
    Медиум (eng): / avitotech
    Гитхаб: github.com/avito-tech
    Сайт: avito.tech
  • НаукаНаука

Комментарии • 3

  • @olegleonov1310
    @olegleonov1310 3 месяца назад

    А какую пользу бизнесу принесло ускорение на 20%? Больше людей начали размещать объявления или больше покупать начали? Какая была гипотеза и какое подтверждение/опровержение получили после ускорения на 20%?

    • @user-ql2ed7ku2d
      @user-ql2ed7ku2d 3 месяца назад +1

      @olegleonov1310 Привет, поскольку профили катили не через АБ-тесты, то и эффект на продуктовые метрики напрямую не оценивали. Опирались здесь на прошлый опыт похожих АБ-тестов, в которых были аналогичные по размеру замедления или ускорения экранов главной или поиска. В них мы как раз видели стат значимые изменения в продуктовых метриках - например, в числе переходов по объявлениям или контактов покупателей с продавцами

    • @olegleonov1310
      @olegleonov1310 3 месяца назад

      @@user-ql2ed7ku2d Интересно, хотя для меня выглядит как будто это не должно влиять значительно на пользователей.