Почему Unity - «медленная» среда рабочего стола?


39

Задний план

Прежде всего, это не вопрос мнений. Я предполагаю, что речь идет о Unity 3D и на компьютере с приличной графической конфигурацией. Под «средой рабочего стола» я предполагаю наиболее общепринятое определение того, что означает DE.

Я видел много сравнений, и многие люди говорили, что Unity - самая медленная среда рабочего стола в Ubuntu (по сравнению с другими, такими как Gnome, XFCE, LXDE и т. Д.). Я не знаю, принимали ли во внимание KDE или нет.

Вопрос

  • Почему Unity работает медленнее по сравнению с другими средами рабочего стола? Это просто из-за высокой графики, используемой в Unity, или чего-то еще? (Я не знаю, что в единстве заставляет его работать медленно.)
  • Какие изменения могут быть внесены / вносятся в Unity для того, чтобы ускорить / улучшить его производительность?

Исходя из текущих критериев, я не думаю, что ваша предпосылка верна.
Белаква

Я думаю, что этот комментарий был бы более полезным, если бы вы предоставили ссылки на те текущие тесты, о которых вы говорите. Следует также иметь в виду, что этот вопрос был задан более полугода назад.
Бхарадвад Сригирираджу

Ориентиры для предварительной версии 13.04 в ответе Луиса Альварадо. Также см. Тот же сайт Phoronix / связанные статьи для новых. Тот факт, что сейчас это старый вопрос, объясняет, почему я поставил здесь оговорку о «текущих» критериях.
Белаква

Ваш домашний каталог контролируется NIS? Недавно я столкнулся с очень плохим Unity, но только для моего NIS-входа, домашний каталог которого находится в сетевой папке. Для локального пользователя производительность казалась лучше.
Стивен Куан

Ответы:


41

Ответ в значительной степени зависит от 3 основных факторов, способствующих ощущению «медленного» или еще лучше, меньше FPS:

  • Версия Ubuntu (обновленная, а не просто оставленная, как она появилась, когда она была выпущена)
  • Видеокарта (Ati, Intel, Nvidia)
  • Версия драйвера (проприетарная, с открытым исходным кодом, актуальная версия)

Я объясню каждый пункт:

Версия Ubuntu

Для версии Ubuntu известно, что использование 11.10 с Unity будет отстой. Буквально заставляют компьютер сосать даже при открытии Gedit или Nautilus в большинстве случаев. Попытка сыграть в игру в OpenGL или через Wine с DirectX или OpenGL приведет к снижению FPS, чем обычно, даже по сравнению с любым другим DE. Это резко меняется в 12.04, а затем снова в 12.10, где количество FPS начинает расти.

Поскольку последняя версия - 12.10, я должен отметить, что для некоторых использование 12.10 без обновлений не решает несколько ключевых проблем, которые были устранены в Compiz и Unity примерно через месяц после выпуска. Таким образом, любой пользователь 12.10 должен выполнить обновление, чтобы получить эти преимущества. Это связано с тем, что две наиболее важные части, о которых идет речь, когда речь идет о производительности FPS и OpenGL, - это Unity и Compiz (Compiz является наиболее важной, когда речь идет о влиянии на производительность).

Преимущества и усовершенствования, которые оба получают, проект Compiz в сериях 0.9.8 и 0.9.9, а Unity в серии 7.x , действительно впечатляют.

Тесты в Phoronix и некоторые мои собственные показали, что для карт Nvidia (единственные тесты, которые я мог сделать, были на картах Nvidia), производительность возросла. И не только 3 или 4 FPS, но примерно от 20 до 70 FPS в зависимости от видеокарты и драйвера.

Это важно, так как, в зависимости от версии Ubuntu, которую использует пользователь, это также будет зависеть от версии Compiz и Unity, доступной для него, и стоимости производительности, которая идет с этим.

Поскольку Unity нужен Compiz, это будет основной причиной низкого количества FPS, но не так много, как раньше, или, по крайней мере, 2 версии назад. Запуск утилиты Compiz для Compiz во время игр в Wine или Open Source дал мне очень хороший FPS в 12.10 и даже больше, когда я тестировал 13.04 с последней версией Nvidia серии 313.xx.

Следует отметить, что производительность видео является одной из точек, которая будет рассмотрена в 13.04 (и в некоторой степени в 12.10 и 12.04) из-за приверженности Ubuntu своим пользователям и Steam (Valve). Над этим работают не только Ubuntu и Valve, но и Nvidia и Intel объединили множество обновлений, которые снова и снова перескакивают на FPS. Если вы следите за улучшениями, которые появятся в ядре 3.7 и 3.8, вы увидите некоторые из них.

Версия видеокарты и драйвера

Известно, что с точки зрения производительности Nvidia стоит на первом месте, за ней следуют Intel и Ati (это не следует путать с простотой использования, поскольку Intel намного лучше в этом). Последние драйверы для Nvidia (например, 306.64 , 310.19 и 313.09 ) принесли улучшения производительности OpenGL специально для Unity. Особенно 313.09, который используется для улучшения Compiz еще больше .

Теперь не только Nvidia проделывает большую работу, чтобы улучшить дорогу для Compiz / Unity. Intel также усердно работает (очень усердно) над несколькими ключевыми функциями для Mesa, которые должны улучшить производительность в целом для всех видеокарт Intel, особенно 965, 2000 HD, 3000 HD и 4000 HD Series. Наконец, у Ati / AMD уже есть несколько обновлений, которые исправят многие ошибки и проблемы с Compiz.

В общем, наличие последнего драйвера для каждого улучшит производительность, но наличие карты Nvidia улучшит ее, а затем Intel и Ati.

После прочтения всего этого, какие изменения вносятся для улучшения производительности в целом, вот некоторые из них:

  • Несколько лет назад Nvidia работает над улучшением производительности Unity с более чем 50-процентным улучшением по сравнению со старыми версиями.

  • Intel работает с Mesa над улучшением производительности Unity

  • Ubuntu и Valve работают над улучшением производительности для Compiz и Unity

  • Как видно на Launchpad, есть несколько исправлений, сделанных в Compiz для улучшения скорости отклика и повышения производительности в целом (включая использование памяти и процессора)

  • Как видно на Launchpad, Unity получила множество исправлений в отношении большинства проблем, с которыми сталкиваются конечные пользователи.

  • Compiz сократил объем используемой памяти год назад более чем на 50%.

  • Unity чувствует себя быстрее и легче по сравнению с версией, использованной год назад.

  • Сэмс Спилсбери проделал некоторую работу для последних Compiz и Unity, которая решит некоторые распространенные проблемы, известные в Unity.

  • Версии ядра 3.7 и 3.8 принесут улучшения видео в целом

Итак, как вы можете видеть, проделана большая работа по улучшению Unity и Compiz. Честно говоря, сравнивать Unity с Xfce или Lxde несправедливо. Это похоже на сравнение велосипеда с автомобилем. Оба могут сделать некоторые вещи лучше. Compiz предлагает, например, некоторые очень аккуратные эффекты, которых нет у Xfce или Lxde, и хотя большинство из нас не использует их, они являются опцией (как прикуриватель в автомобиле).

То же самое касается сравнения KDE, Gnome3 и любого другого DE с низким уровнем DE. Они низкого конца по причине. Они стремятся избегать внесения огромных изменений, которые будут влиять на производительность, в то время как высокопроизводительные DE будут пытаться добавлять функции, которые могут потребовать больше ресурсов в начале. Например, наличие виджетов, возможность поворота окна в любой возможной степени, эффект размытия, который скрывает фон, или наличие анимированного фона. Существуют варианты, которыми пользуются некоторые пользователи, предлагаемые некоторыми настольными компьютерами, которые другим DE не нужны или не используются, так как они больше ориентированы на низкоуровневую систему.

Имея это в виду, любой, кто тестировал KDE с версии 4.0, знает, какие огромные улучшения он получил до последней версии 4.9. Огромные действительно. Любой, кто тестировал Gnome 3.0 до последней версии 3.8, знает об огромных изменениях в производительности, которую он получил, и любой, кто тестировал Unity с 3.x до 6.x (и скоро 7.x), узнает, как производительность подскочила. Например, я скучаю по gnome2, но есть несколько случаев, когда я не могу использовать gnome2, потому что Unity намного удобнее и быстрее помогает мне достичь некоторых из этих случаев.

Итак, какие советы я могу дать, чтобы улучшить производительность?

Хорошо установите диспетчер настроек Compiz Config (ccsm)

и играть с плагином OpenGL:

введите описание изображения здесь

Некоторые из этих опций повысят производительность, другие мне понадобились, чтобы избежать проблем с видео. Если кто-нибудь найдет вопрос по этому поводу, я буду рад, если они отредактируют этот ответ, добавив ссылку на него здесь. Я не могу найти это прямо сейчас, но я знаю, что был ответ, который говорил об этом.

Другое - это обновление драйверов и, если возможно, использование Nvidia. Помимо этого, ожидание 13.04 будет стоить.

Для некоторых обзоров, вот тесты от Phoronix, которые проверяют работу Unity 11.04, 12.04, 13.04 и 13.10:

Настольный бенчмарк 11.04

Настольный бенчмарк 12.04

Настольный бенчмарк 13.04

Настольный тест 13.10

И это то, что произошло с Nvidia за последние месяцы

Также некоторые статьи об Ati / AMD ЗДЕСЬ , ЗДЕСЬ , ЗДЕСЬ и ЗДЕСЬ

И наконец, Intel, Mesa и Opengl ЗДЕСЬ , ЗДЕСЬ и ЗДЕСЬ


1
Рад помочь @BullfrogBlues ^^. Я всегда рекомендую попробовать все варианты Ubuntu, чтобы вы изучали каждый рабочий стол и то, как он был задуман.
Луис Альварадо

Возвращаясь к единству в 13.04 из гнома 3 в 12.04, я могу сказать, что единство теперь быстрее. Кроме того, gnome-shellполно ошибок, увеличивая процессор даже в режиме ожидания. Моя единственная претензия к Unity - это панель значков.
user117
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.