morfizm (morfizm) wrote,
morfizm
morfizm

Category:

Adobe Lightroom

Лайтрум в плане перформанса говно говном. Но если раньше это была интуитивное знание, то сейчас я немножко потестировал. На странице написано что они могут утилизовать до 6 ядер. Я последил за процентами использования CPU, Memory, Disk, GPU на разных задачах.
*) GPU: не более 1% в любом режиме.
*) CPU: 15% на импорте; около 10-15%, до 20% на непрерывном накладывании эффектов; до 35% на экспорте.
*) Disk: какое-то тривиальное количество диска, я даже не заметил, строго меньше 1 MB/sec.
*) RAM: самый высокий working set был 7 GB, причём я заметил, что на разных операциях он иногда толчкообразно подскакивает. Т.е. лайтрум аллоцирует временные объекты и деаллоцирует.
*) Попробовал интересный юскейс: на полоске предварительного просмотра фоток (нижней) просто нажимать клавишами много раз "вправо"-"влево", чтобы нажатия накопились в буфере, и лайтрум их обрабатывал - так быстро, как мог. Использовалось 6-11% CPU, до 0.8 MB/sec диска и до 1% GPU. Т.е. по сути были заняты только 2 ядра из 16, и диск не является bottleneck'ом. Трудно понять, что же это. Ожидания, из-за того, что внутренняя архитектура приложения event-driven? Частые переключения в системные вызовы?

Для тестов я отключил оверклок проца (оставил базовый 3.4 GHz на 16 ядрах), но оставил overclock памяти (3200 MHz DDR4, quad-channel, 32 GB).
Винчи - NVMe RAID0 из трёх, с каким-то гигантским throughput'ом и IOPS не хуже, чем в SSD.

Выводы по конфигам (конечно, из маленького sample, я поигрался всего час, в каталоге всего 200 фоток, и попробовал только некоторые вещи, но end-to-end):
*) По процессору для лайтрума круче, чем 4-core with hyperthreading не нужно (20% на 16-ядерной машинке это 3.2 core). Разницу на 6-ядерном можно будет заметить только на экспорте, а экспорт никого не волнует, всё равно на экспорт и импорт люди ходят на перекур.
*) Утилизация CPU в task manager'е включает ожидание памяти, поэтому предыдущий вывод тем более верен, если память будет более медленная. Будет либо так же, либо всё замедлится и CPU утилизация ещё больше упадёт, т.к. нужно будет ещё меньше CPU power, чтобы её ждать более долгих ответов от памяти. Подозреваю, что скорость памяти не является bottleneck'ом в моём сетапе. Будет время - потестирую потом, что будет, если память задаунклокать.
*) По количеству памяти - с рекомендуемыми 8 GB, вероятно, будет "почти хорошо", но тот факт, что я видел число 7 GB, говорит о том, что желательно минимум 16 GB. На системе с 8 GB, часть памяти используется системой, файловым кэшем и другими процессами, и 7 GB для одного приложения там никогда не будет. Нужно ли больше, чем 16 GB - фиг знает, но для моего теста было не нужно.
*) Думаю, что лайтруму больше всего подойдёт геймерский сэтап. В них акцент идёт на maximum single-core performance, но так чтобы ядер было 4-6, памяти много, но не очень много (16 GB уже считается нормально для новых high end сетапов), и диск быстрый но не фанатично. В общем как раз для лайтрума.
*) Главный вывод - приложение написано через одно место и вряд ли от этой компании можно ожидать каких-то улучшений на отрезке в года три. Потому что там, небось, нужно нахрен всё переписать с нуля, а быстрее, чем за 2-3 года, для таких приложений это не делается... там же нужно поддерживать тысячи профайлов линз, тысячи user setting'ов, всякие странные workflow features, к каждой из которых наверняка привыкли какие-нибудь 5% пользователей, и т.п. Другими словами, для performance нужно искать другой софт.
Tags: devices, photography, software
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 15 comments