Pourquoi Unity est-il un environnement de bureau «lent»?

39

Contexte

Tout d’abord, ce n’est pas une question d’opinions. Je suppose que nous parlons d’Unity 3D et d’un ordinateur doté d’une configuration graphique correcte. Par "environnement de bureau", je suppose la définition la plus généralement acceptée de ce que signifie un DE.

J'ai vu beaucoup de comparaisons et beaucoup de gens affirmer qu'Unity est l'environnement de bureau le plus lent sur Ubuntu (comparé à d'autres tels que Gnome, XFCE, LXDE, etc.). Je ne sais pas si les gens ont pris KDE en considération ou non.

Question

  • Pourquoi Unity est-il lent par rapport aux autres environnements de bureau? Est-ce juste à cause des graphiques de haut niveau utilisés dans Unity ou de quelque chose d'autre? (Je ne sais pas ce qui dans l'unité le ralentit.).
  • Quels changements peuvent / sont apportés à Unity pour le rendre plus rapide / améliorer ses performances?
Bharadwaj Srigiriraju
la source
D'après les points de repère actuels, je ne pense pas que votre prémisse soit correcte.
Belacqua
Je pense que ce commentaire aurait été plus utile si vous fournissiez des liens vers les repères actuels dont vous parlez. Il faut aussi garder à l'esprit que cette question a été posée il y a plus de six mois.
Bharadwaj Srigiriraju
Points de repère pour la pré-version 13.04 dans la réponse de Luis Alvarado. Voir également le même site Phoronix / articles connexes pour les plus récents. Le fait qu'il s'agisse d'une question plus ancienne est exactement la raison pour laquelle je mets ici la mise en garde concernant les points de repère "actuels".
Belacqua
Votre répertoire personnel est-il contrôlé par NIS? J'ai récemment rencontré de très mauvaises Unity, mais uniquement pour mon identifiant NIS dont le répertoire personnel est sur un partage réseau. Pour un utilisateur local, les performances semblaient meilleures.
Stephen Quan

Réponses:

41

La réponse dépend fortement de 3 facteurs principaux contribuant au sentiment de "lent" ou mieux encore, moins de FPS:

  • Version d'Ubuntu (mise à jour et non pas laissée telle quelle lorsqu'elle est sortie)
  • Carte vidéo (Ati, Intel, Nvidia)
  • Version du pilote (propriétaire, Open Source, version actuelle)

Je vais expliquer chaque point:

Version d'Ubuntu

Pour la version d'Ubuntu, il est connu qu'utiliser 11.10 avec Unity sera nul. Rendre le PC vraiment nul à ouvrir même Gedit ou Nautilus dans la plupart des cas. Essayer de jouer à un jeu avec OpenGL ou via Wine avec DirectX ou OpenGL donnera moins de FPS que la normale, même par rapport à tout autre DE. Cela change radicalement dans 12.04 puis à nouveau dans 12.10 où le nombre de FPS commence à augmenter.

La dernière en date étant la 12.10, je dois mentionner que pour certains, utiliser 12.10 sans mises à niveau ne résout pas plusieurs problèmes clés résolus dans Compiz et Unity environ un mois après la publication. Ainsi, tout utilisateur 12.10 doit mettre à niveau pour bénéficier de ces avantages. Cela tient au fait que les deux parties les plus importantes dont on parle quand on pense aux performances FPS et OpenGL sont Unity et Compiz (Compiz étant le plus important en termes d’impact sur les performances).

Les avantages et améliorations apportés par le projet Compiz dans les séries 0.9.8 et 0.9.9 et dans Unity dans la série 7.x sont en réalité très impressionnants.

Des tests effectués à Phoronix et certains des miens ont montré que pour les cartes Nvidia (les seuls tests que je pouvais réellement faire étaient avec des cartes Nvidia), les performances ont augmenté. Et pas seulement 3 ou 4 FPS mais environ 20 à 70 FPS en fonction de la carte vidéo et du pilote.

Ceci est important car, en fonction de la version Ubuntu utilisée par l'utilisateur, cela dépendra également de la version Compiz et Unity disponible, ainsi que du coût en performances associé.

Comme Unity a besoin de Compiz, ce sera la principale cause du faible nombre de FPS, mais pas autant qu'avant, ou au moins deux versions antérieures. Exécuter l’utilitaire Benchmark de Compiz en jouant à des jeux vidéo sous Wine ou Open Source m’a donné un très bon FPS en 12.10 et même plus pendant que je testais 13.04 avec la dernière série Nvidia 313.xx.

Il convient de noter que la performance vidéo est l’un des points abordés en 13.04 (et dans une large mesure en 12.10 et 12.04) en raison de l’engagement pris par Ubuntu envers ses utilisateurs et Steam (Valve). Non seulement Ubuntu et Valve travaillent-ils sur ce sujet, mais Nvidia et Intel ont également adhéré à de nombreuses mises à jour qui ont dépassé le nombre de FPS à maintes reprises. Si vous suivez les améliorations apportées aux noyaux 3.7 et 3.8, vous en verrez certaines.

Version carte vidéo et pilote

Il est connu que, du point de vue des performances, Nvidia est au top, suivi par Intel et Ati (à ne pas confondre avec la facilité d’utilisation, car Intel est bien meilleur à cet égard). Les derniers pilotes pour Nvidia (par exemple, les 306.64 , 310.19 et 313.09 ) ont tous apporté des améliorations des performances OpenGL spécifiquement pour Unity. Spécialement le 313.09 qui est utilisé pour améliorer encore Compiz .

Maintenant, Nvidia fait beaucoup de travail pour améliorer la route de Compiz / Unity. Intel travaille aussi très fort (très fort) sur plusieurs fonctionnalités clés de Mesa, ce qui devrait améliorer les performances en général pour toutes les cartes vidéo Intel, en particulier les séries 965, 2000 HD, 3000 HD et 4000 HD. Enfin, Ati / AMD dispose également de plusieurs mises à jour qui résoudront de nombreux bogues et problèmes avec Compiz.

Donc, en général, avoir le dernier pilote pour chacun va améliorer les performances, mais avoir une carte Nvidia l’améliorera davantage, suivi par Intel et Ati.

Après avoir lu tout cela, quels sont les changements apportés pour améliorer les performances en général, en voici quelques-uns:

  • Nvidia travaille depuis plusieurs versions sur l'amélioration des performances d'Unity avec une amélioration de plus de 50% en général par rapport aux versions antérieures.

  • Intel travaille avec Mesa pour améliorer les performances de Unity

  • Ubuntu et Valve travaillent sur l'amélioration des performances pour Compiz et Unity

  • Comme vu dans Launchpad, plusieurs corrections ont été apportées à Compiz pour améliorer la réactivité et les performances en général (y compris l'utilisation de la mémoire et du processeur).

  • Comme dans Launchpad, Unity a reçu de nombreuses corrections concernant la plupart des problèmes rencontrés par les utilisateurs finaux.

  • Compiz a réduit de plus de 50% la quantité de mémoire utilisée il y a un an.

  • Unity se sent plus rapide et plus léger que la version utilisée il y a un an.

  • Sams Spilsbury a effectué des travaux sur les dernières versions de Compiz et Unity qui permettront de résoudre certains problèmes courants connus avec Unity.

  • Les versions 3.7 et 3.8 du noyau apporteront des améliorations vidéo en général

Comme vous pouvez le constater, beaucoup de travail est fait pour améliorer Unity et Compiz. Pour être juste, comparer Unity à Xfce ou à Lxde n’est pas juste. C'est comme comparer un vélo à une voiture. Les deux peuvent mieux faire certaines choses. Compiz offre par exemple des effets très soignés que Xfce ou Lxde ne font pas et même si la plupart d'entre nous ne les utilisent pas, ils sont une option (comme l'allume-cigare à l'intérieur de la voiture).

Il en va de même pour comparer KDE, Gnome3 et tout autre DE au DE bas de gamme. Ils sont bas de gamme pour une raison. Ils ont tendance à éviter d’énormes modifications qui auront une incidence sur les performances, tandis que le DE haut de gamme essaiera d’ajouter des fonctionnalités susceptibles de nécessiter plus de ressources au début. Par exemple, avec des widgets, possibilité de faire pivoter une fenêtre dans la mesure du possible, effet de flou masquant l’arrière-plan ou animation d’un arrière-plan animé. Il existe des options dont bénéficient certaines utilisations proposées par certains ordinateurs de bureau que d'autres n'ont pas besoin d'utiliser ou d'utiliser car ils sont plus orientés vers un système bas de gamme.

Dans cette optique, quiconque teste KDE depuis la version 4.0 sait quelles améliorations majeures il a reçues jusqu'à la dernière version 4.9. Les énormes en effet. Quiconque a testé Gnome 3.0 jusqu’à la dernière version 3.8 connaît les énormes changements de performances qu’il a subis et quiconque a testé Unity de la 3.x à la 6.x (et bientôt 7.x) saura comment le la performance a sauté. Par exemple, je manque de gnome2, mais il y a plusieurs cas où je ne peux pas utiliser gnome2 car Unity est beaucoup plus convivial et plus rapide pour m'aider à résoudre certains de ces cas.

Quels conseils puis-je donner pour améliorer les performances?

Bien installer le gestionnaire de paramètres Compiz Config (ccsm)

et jouez avec le plugin OpenGL:

entrez la description de l'image ici

Certaines de ces options amélioreront les performances, d’autres auront besoin d’éviter les problèmes de vidéo. Si quelqu'un trouve la question à ce sujet, je serai heureux s'il édite cette réponse pour y inclure un lien. Je ne le trouve pas pour l'instant, mais je sais qu'une réponse a été donnée à ce sujet.

Autre consiste à mettre à jour les pilotes et, si possible, à l’aide de Nvidia. Sinon, attendre 13.04 en vaut la peine.

Pour certains avis, voici des points de repère de Phoronix qui vérifient les performances d’Unity les 11.04, 12.04, 13.04 et 13.10:

Indice de référence du bureau 11.04

Indice de référence de bureau 12.04

Indice de référence de bureau 13.04

Indice de référence de bureau 13.10

Et c’est ce qui s’est passé avec Nvidia ces derniers mois

Aussi quelques articles sur Ati / AMD ICI , ICI , ICI et ICI

Enfin, Intel, Mesa et Opengl ICI , ICI et ICI

Luis Alvarado
la source
1
Heureux d'aider @BullfrogBlues ^^. Je recommande toujours d'essayer toutes les saveurs d'Ubuntu, de cette manière, vous apprendrez chaque bureau et la façon dont ils ont été conçus.
Luis Alvarado
Revenant à l'unité dans 13.04 de gnome 3 à 12.04, je peux dire que l'unité est maintenant plus rapide. En outre, gnome-shellest plein de bugs, maximisant sur le processeur, même au ralenti. Mon seul reproche avec Unity est cette barre d’icône.
user117