В Windows 11 появится возможность создания специального Dev диска (уже доступно в Public Preview), чтобы ускорить задачи разработчиков. Раздел базируется на ReFS. Требования - 50+ ГБ свободного места на диске и 16 Гб оперативы. Тесты я нашел только от Microsoft, но вдруг вы поделитесь результатами
#performance
#performance
Команда Ozon стоклнулась с проблемой скорости работы Jetpack Compose. Все это они решили, выработали практики и теперь делятся ими в статье (28 мин):
👉 Разберитесь как работает отрисовка и обновление UI в Compose
👉 Правильно выставляйте аннотации @Stable и @Immutable
👉 Правильно готовьте лямбды (не ссылку на метод) через remember
👉 Оптимизируйте функции, так чтобы они были пропускаемые в рекомпозиции
👉 Уменьшайте область рекомпозиции
👉 Быстрые вычисления при смене состояния
👉 Оптимально реализуйте собственные layout
👉 Не менять состояние, которое только что обновилось
👉 Занимайтесь отладкой и профилированием
#compose #performance
👉 Разберитесь как работает отрисовка и обновление UI в Compose
👉 Правильно выставляйте аннотации @Stable и @Immutable
👉 Правильно готовьте лямбды (не ссылку на метод) через remember
👉 Оптимизируйте функции, так чтобы они были пропускаемые в рекомпозиции
👉 Уменьшайте область рекомпозиции
👉 Быстрые вычисления при смене состояния
👉 Оптимально реализуйте собственные layout
👉 Не менять состояние, которое только что обновилось
👉 Занимайтесь отладкой и профилированием
#compose #performance
Строить метрики производительности команда должно касательно пользовательских сценариев использования приложения т.е. положительный опыт использования. Если вы уменьшили расход оперативки на 10% но на скорость для пользователя это никак не повлияло - смысла в этом не было.
Для пользователя важны 2 метрики - плавность интерфейса и скорость отзывчивости. Для продолжительных жестов (drag) реакция должна быть не больше чем за отрисовку 1 кадра, а для дискретных (тап по экрану) - <69 мc.
В статье подробно разбирается как добиться адекватного времени в метриках.
#performance
Для пользователя важны 2 метрики - плавность интерфейса и скорость отзывчивости. Для продолжительных жестов (drag) реакция должна быть не больше чем за отрисовку 1 кадра, а для дискретных (тап по экрану) - <69 мc.
В статье подробно разбирается как добиться адекватного времени в метриках.
#performance
Что считать запуском приложения? От нажатия иконки приложения в лаунчере до показа интерфейса пользователю?
PY, автор LeakCanary, в новой статье рассказывает про запуск, который по его мнению начинается когда на экране нет видимых пользователю Activity. Тут еще и несколько типов стартов: холодный, прогретый и горячий.
#performance
PY, автор LeakCanary, в новой статье рассказывает про запуск, который по его мнению начинается когда на экране нет видимых пользователю Activity. Тут еще и несколько типов стартов: холодный, прогретый и горячий.
#performance
Весь опыт из статьи Py вынес в библиотеку Papa (Performance of Android Production Applications), которая позволяет отслеживать разные типы событий.
ВАЖНО! Библиотека предназначается только для приложений Square и может некорректно работать у вас
#performance
ВАЖНО! Библиотека предназначается только для приложений Square и может некорректно работать у вас
#performance
В новой статье PY рассказывается как утечки памяти в Android приложении негативно влияют на отзывчивость UI. Совет - подключите LeakCanary и отслеживайте работу вашего приложения, особенно на слабых устройствах
#performance
#performance
Forwarded from Kotlin Broadcast (Кирилл Розов)
Хотите узнать насколько хорош K2 компилятор в скорости? Разработчик взял приложения Now in Android и включил везде где можно K2 (kapt все также работает на старом компиляторе). Результаты не впечатляют пока, но надо помнить что это еще в разработке и нужно ждать когда все перейдет на K2. Подробный тест тут
#k2 #performance
#k2 #performance
Особенности SRE и Observability в мобильных приложениях (12 мин)
Менеджер команд производительности и надежности рассказывает про тот как обеспечивается высокая скорость работы приложения и уменьшается количество крешей
#performance
Менеджер команд производительности и надежности рассказывает про тот как обеспечивается высокая скорость работы приложения и уменьшается количество крешей
#performance
Нашел гайд по оптимизации производительности процессора и недопущение его перегрева на основе Android Dynamic Performance Framework (ADPF)
🔗 Пример с использованием API
🔗 Codelab Integrating Adaptability Features Into Your Native Game
#performance
🔗 Пример с использованием API
🔗 Codelab Integrating Adaptability Features Into Your Native Game
#performance
Что нового в Jetpack Benchmark 1.2.0 (7 мин, ссылка без VPN)
Baseline Profiles
👉 Baseline Profiles получили стабильный статус
👉 Android Studio Iguana (Canary статус) содерджит шаблон для генерации Baseline Profile модуля
👉 Gradle плагин для генерации Baseline Profile
👉 Возможность задания какие классы должны быть включены и нет в Baseline Profile
Macrobenchmark
👉 MethodTracing позволит какие методы были вызваны
👉 StackSampling покажет время которое происходит в вызове каждого метода
👉 Быстрая валидация с dryRun
👉 Поддержка Perfetto SDK Tracing
👉 Замер расхода заряда батареи
Microbenchmark
👉 Профилирование теперь запускается после сбора всех метрик
👉 Возможность настройки как собирать метрики
👉 Получение состояния бенчмарка без JUint API
👉 PerfettoTraceRule позволит подробнее анализировать производительность теста
#performance
Baseline Profiles
👉 Baseline Profiles получили стабильный статус
👉 Android Studio Iguana (Canary статус) содерджит шаблон для генерации Baseline Profile модуля
👉 Gradle плагин для генерации Baseline Profile
👉 Возможность задания какие классы должны быть включены и нет в Baseline Profile
Macrobenchmark
👉 MethodTracing позволит какие методы были вызваны
👉 StackSampling покажет время которое происходит в вызове каждого метода
👉 Быстрая валидация с dryRun
👉 Поддержка Perfetto SDK Tracing
👉 Замер расхода заряда батареи
Microbenchmark
👉 Профилирование теперь запускается после сбора всех метрик
👉 Возможность настройки как собирать метрики
👉 Получение состояния бенчмарка без JUint API
👉 PerfettoTraceRule позволит подробнее анализировать производительность теста
#performance
В блоге Android Developers рассказали про оптимизацию порядка файлов для ускорения инициализации нативных библиотек
#performance #ndk
#performance #ndk