353 votes

Comment puis-je améliorer les performances globales du système Ubuntu ?

Quels sont vos conseils pour améliorer les performances globales du système sous ubuntu ? Inspiré par ceci question J'ai réalisé que certains paramètres par défaut peuvent être plutôt conservateurs sur Ubuntu et qu'il est possible de les modifier avec peu ou pas de risque si vous souhaitez le rendre plus rapide.

Il ne s'agit pas d'une application spécifique (par exemple, faire en sorte que firefox charge les pages plus rapidement), mais d'un système global.

De préférence, un conseil par réponse, avec suffisamment de détails pour que les gens puissent le mettre en œuvre.

Quelques-uns des miens seraient :

  • Installer Précharge (via le Centre des logiciels ou sudo apt-get install preload ) ;
  • Changement Swappiness valeur - "qui contrôle le degré auquel le noyau préfère swapper lorsqu'il essaie de libérer de la mémoire" ;

Quels sont les vôtres ?

PS : Comme cette question n'est pas destinée à avoir une réponse unique mais plutôt plusieurs conseils utiles, je fais de cette communauté un wiki prêt à l'emploi.

6voto

Joel Spolsky Points 22686

Fermez les applications qui ne sont pas utilisées en permanence.

Un grand nombre d'applications standard utilisent beaucoup de mémoire et souvent aussi de CPU lorsqu'elles fonctionnent en arrière-plan. Les navigateurs Web, les clients de messagerie, etc. sont très peu efficaces en termes d'utilisation de la mémoire et les javascripts intégrés utilisent souvent le temps du processeur sans que l'utilisateur n'en tire aucun avantage.

En ne faisant tourner que les applications utilisées actuellement, le système sera beaucoup plus rapide. De plus, l'arrêt des applications est le seul moyen de libérer la mémoire perdue dans les fuites de mémoire.

Le démarrage de l'application sur un système rapide est souvent inférieur à celui de Windows sur un système surchargé et lent.

6voto

mblasco Points 2217

Unity a tendance à être un peu gourmand en ressources, mais je suis surpris d'apprendre que vous avez connu des performances aussi faibles même sous Unity2D. Une solution possible serait de jouer avec d'autres environnements de bureau plus légers tels que Lubuntu (LXDE) ou Xubuntu (XFCE). Je pense que vous verrez une différence substantielle dans la réactivité et les performances générales.

En outre, vous pouvez essayer d'aller dans le gestionnaire des applications de démarrage et de décocher les applications et les processus dont vous n'avez pas besoin pour qu'Ubuntu démarre automatiquement à la connexion (par exemple, le gestionnaire Bluetooth si vous n'avez pas de Bluetooth, UbuntuOne si vous ne l'utilisez pas, les programmes que vous n'utilisez pas, etc :

sudo sed -i 's/NoDisplay=true/NoDisplay=false/g' /etc/xdg/autostart/*.desktop

6voto

paul Points 1
  1. Utilisez JFS système de fichiers. C'est solide comme un roc . Il a la plus faible utilisation du CPU et une très bonne performance globale.

  2. Définir vm.vfs_cache_pressure. Voici mon /etc/sysctl.d/10-desktop-responsiveness

    [préfixez les lignes de commentaires par un #, cette interface web ne les aime pas...]

    Ces paramètres augmentent la réactivité pour une charge de travail de bureau typique.

vm.swappiness indique au noyau linux de favoriser le code d'application par rapport aux caches lorsque ces deux éléments sont en concurrence pour la RAM.

vm.vfs_cache_pressure contrôle le cache inode/dentry (c'est-à-dire le système de fichiers) par rapport aux autres caches. autres caches, c'est-à-dire que nous voulons garder les méta-données du système de fichiers en RAM si possible.

De : http://rudd-o.com/linux-and-free-software/tales-from-responsivenessland-why-linux-feels-slow-and-how-to-fix-that

vm.swappiness=15

vm.vfs_cache_pressure=50

5voto

Moshe Points 582

Si vous voulez voir quels services sont lancés après le démarrage sur Ubuntu 10.04, lancez "jobs-admin".

sudo apt-get install jobs-admin

5voto

Jon Hanna Points 738

Configurer le Swap

Première partie. La permutation des ensembles. Ce site かもしれません être selon la réponse de degusa, mais ça pourrait être le contraire, et ça aura plus d'effet si c'est le cas.

Un scénario dans lequel certains d'entre nous sont heureux de se trouver est celui où nous avons beaucoup de RAM. En général, un petit pourcentage de celle-ci est utilisé directement par le noyau et les applications, une partie (peut-être une grande quantité si vous avez utilisé d'autres astuces pour améliorer les performances comme le montage de /tmp en mémoire) est utilisée pour ramfs et tmpfs, et des gigas et des gigas sont utilisés comme cache disque pour accélérer l'accès aux fichiers.

Dans ce scénario, une fois que la mémoire totale utilisée, y compris le cache, devient élevée, et qu'une application a besoin de plus de RAM, linux doit décider s'il faut prendre un peu de cache dans le système de fichiers, ou le transférer dans la partition/fichier d'échange.

Puisque nous avons des tonnes de RAM, et que nous n'avons probablement pris la peine d'utiliser le swap que pour pouvoir activer l'hibernation, nous voulons qu'il tende à prendre une partie de ce copieux cache, et donc que le swap soit faible. Si nous ne nous soucions pas de pouvoir hiberner, nous pourrions même trouver qu'une telle machine à haute RAM n'a pas besoin de swap du tout.

Un autre scénario est celui d'une personne disposant d'une faible mémoire vive qui passe d'une application lourde à une autre et passe un temps raisonnable sur chacune. Imaginez un développeur web qui passe un peu de temps sur son IDE, un peu sur un éditeur graphique, un peu sur son navigateur de choix, un peu sur d'autres navigateurs pour vérifier les problèmes de compatibilité, et peut-être 5 minutes toutes les heures sur son client de messagerie. Il est également probable qu'ils utilisent les mêmes fichiers de manière répétée en lecture et en écriture et qu'ils bénéficient donc de la mise en cache des fichiers. Cette personne pourrait probablement bénéficier d'un linux plus prompt à échanger la mémoire utilisée par n'importe laquelle de ces applications lourdes sur lesquelles elle n'est pas active actuellement, donc le swappiness devrait probablement être plus élevé pour elle.

Non seulement le meilleur réglage pour eux est susceptible d'être plus élevé que le conseil le plus courant, mais ils vont probablement le remarquer davantage que la personne qui a toujours des concerts en réserve de toute façon, aussi.

Partie 2. Priorité et nombre de partitions.

Chaque partition swap a une priorité, et linux utilisera celle qui est la plus élevée en premier. Si elle n'est pas définie dans /etc/fstab, elle sera traitée comme négative en commençant par -1 (les paramètres explicites sont compris entre 0 et 32767 et donc -1 est inférieur à tout paramètre explicite) et en continuant dans l'ordre dans fstab vers -2, -3 et ainsi de suite.

Le meilleur réglage dépend de l'emplacement physique des partitions. Si vous n'en avez qu'une, cela n'a pas d'importance (mais vous devriez peut-être en avoir plus d'une, alors lisez ce qui suit).

Si vous en avez deux ou plus sur le même disque physique, ils devraient avoir des priorités différentes afin qu'il n'essaie pas d'utiliser deux partitions qui nécessitent une recherche entre elles (quelqu'un sait-il si cela est automatiquement évité ?). Les valeurs par défaut sont correctes. Ce n'est probablement pas une bonne idée d'avoir deux swaps sur le même disque de toute façon, mais cela peut arriver si vous en créez un et décidez ensuite que vous avez besoin de plus de swap plus tard (peut-être en ajoutant plus de RAM).

Si vous avez deux ou plusieurs disques physiques de vitesse à peu près égale, le fait de leur attribuer la même priorité signifie que linux les utilisera tous les deux en même temps, ce qui offre de meilleures performances pour des raisons analogues à celles du RAID ou en s'assurant simplement que les fichiers fréquemment utilisés se trouvent sur les deux disques - le travail est réparti entre eux.

Si vous avez deux ou plusieurs disques physiques de vitesse égale mais que vous n'avez le swap que sur un seul, vous devriez peut-être changer cela, pour les raisons ci-dessus.

Si vous disposez de deux disques physiques ou plus, de vitesses très différentes, vous souhaitez généralement que le disque le plus rapide ait une priorité plus élevée que le plus lent, afin qu'il soit utilisé en premier. Vous pouvez même ne pas vouloir avoir de swap sur le plus lent, bien que cela puisse avoir du sens si vous avez par exemple un petit swap sur un disque rapide mais petit pour un swap rapide, et un plus grand swap sur le disque plus lent afin d'avoir assez d'espace pour hiberner.

Si le plus rapide des deux est un SSD, il y a alors deux alternatives avec des avantages et des inconvénients différents :

  1. L'échange le plus prioritaire, ou peut-être le seul, sur le SSD, pour la vitesse.
  2. N'échangez que sur le non-SSD, pour réduire les écritures sur le SSD et donc augmenter sa durée de vie.

Le numéro 2 est probablement celui qu'il faut choisir si vous n'avez qu'un espace de permutation pour l'hibernation et que votre abondante RAM signifie que vous n'en avez pas vraiment besoin (et si vous dépensez de l'argent pour un SSD, vous devriez aussi le dépenser pour la RAM), à moins que vous ne soyez un fanatique de la vitesse de démarrage qui veut sortir de l'hibernation à une vitesse qui mettra en valeur votre plate-forme de luxe ! Sinon, l'équilibre est une question de vitesse par rapport à la durée de vie du SSD.

Si vous avez un lecteur qui existe uniquement pour le swap afin de ne pas entrer en compétition avec d'autres entrées/sorties de fichiers, alors vous êtes vraisemblablement très à cheval sur les performances et vous connaissez déjà ces choses mieux que moi et vous ne lisez ceci que pour voir si je n'ai rien de faux !

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X