Comment puis-je améliorer mon temps de démarrage / arrêt?

29

J'ai un ordinateur portable assez décent (processeur Intel Core i7-3520M à 2,90 GHz, SSD SataII de Samsung, 8 Go de RAM), mais je ne suis pas satisfait de mes temps de démarrage et d'arrêt ... J'ai installé le diagramme de démarrage et j'essaie de l'interpréter , mais je ne comprends pas certaines parties.

Sortie Bootchart

En particulier, je ne comprends pas ce qui se passe pendant les 10 premières secondes, quand il n'y a presque pas d'utilisation du processeur, ni d'E / S. Que se passe-t-il alors? (il ne semble y avoir que udevd, modprobe et plymouth).

À l'autre bout de mon travail quotidien, j'expérimente également un arrêt lent. Pas de tableau de tir ici, donc je suis encore plus désemparé ...

Mise à jour Je suis tombé sur un indice disant que le fait d'appuyer sur la touche haut pendant l'arrêt donne accès à la console (j'avais déjà combattu avec F1 / Alt F1). J'ai donc vu que le long temps d'arrêt semble avoir à voir avec rpcbind et le modem-manager étant incapable de quitter proprement ... Une idée?

Update 2 J'ai désinstallé rpcbind, ainsi que modemmanager. Cela a amélioré les choses pour l'arrêt, mais j'ai encore plusieurs secondes d'attente entre le message «Tous les processus se sont terminés en 1 seconde» et le véritable arrêt. À ce moment, je reçois un message rapide que je n'ai pas encore pu lire, mais je soupçonne qu'une sorte de délai d'attente se produit ...

Mise à jour 3 D'accord, je pense avoir réduit les choses à l'exécution de la reprise et de l' attente de la racine pendant les 10 premières secondes du processus de démarrage. Cela prend plus de 5 secondes, sans disque ni activité CPU notable. J'ai remarqué que l'UUID de swap dans /etc/initramfs/conf.d/resume ne correspond pas au UUID réel de ma partition de swap, qui se trouve être ... crypté. Peut-être que c'est le point? Un indice sur les outils initramfs et cryptswap?

alci
la source
Je sais que ce n'est pas lié. Mais je ne veux quand même pas manquer de vous suggérer d'utiliser suspend (to ram / to disk) comme alternative. De «hors-état» à «en état de marche», cela prend moins de 3 secondes pour mon système le plus faible
humanANDpeace
1
La suspension sur le disque n'est en quelque sorte pas recommandée lors de l'utilisation de SSD, car cela implique d'écrire la mémoire sur le disque à chaque fois ... mais vous avez raison, la reprise de la suspension au ram est rapide.
alci
1
Je m'attendrais à environ 15 secondes, peut-être 10. Mon SSD est très rapide et mon processeur n'est pas mauvais, je pense que je peux en tirer le meilleur parti. Pour être franc, le temps de démarrage n'est pas si mauvais, mais le temps d'arrêt l'est. Cela dit, avoir supprimé rpcbind et modem-manager (l'a fait aujourd'hui) a amélioré les choses. Je pense aussi que je comprends les 10 premières secondes de démarrage: il semble que ce soit le temps qui se passe dans initramfs, avec udev obtenant les pilotes chargés et / dev remplis. Je ne sais pas si cela peut être beaucoup plus rapide ... (voir www.debian-administration.org/articles/620)
alci
1
il est bon que vous ayez progressé dans l'arrêt. Avez-vous eu de la chance avec le processus de démarrage? UDEV est-il le coupable?
humanANDpeace
1
Merci, rpcbind et modem-manager ont fait l'affaire pour moi - et aussi rngd: bugs.launchpad.net/ubuntu/+source/rng-tools/+bug/1425036 Maintenant, enfin, il faut ma machine (Lenovo W530 avec un SSD, donc toujours puissant) moins de temps pour arrêter puis démarrer (les deux en moins de 10 secondes).
sup

Réponses:

12

Ok, j'ai trouvé le problème. Comme je le ressentais, les 5 secondes d'attente de reprise et d' attente de racine ne sont pas normales.

Googler autour, j'ai finalement trouvé ce rapport de bug: 5 secondes de délai d'attente pour root

Essentiellement, il indique que l'attente de 5 secondes est due à une mauvaise entrée dans /etc/initramfs-tools/conf.d/resume.

Il s'avère que mon échange est crypté et que j'avais l'UUID d'installation initiale dans /etc/initramfs-tools/conf.d/resume. J'ai essayé de mettre celui donné par blkid pour / dev / mapper / cryptswap1, mais cela n'a pas fonctionné ...

J'ai finalement juste commenté l'entrée dans le fichier et le délai de 5 secondes a disparu. Quoi qu'il en soit, la mise en veille prolongée n'est pas activée sur mon système (je pense qu'elle est désactivée par défaut dans Ubuntu). Remarquez le # au début de l'entrée.

#RESUME=UUID=3835540d-0cb4-46fc-b39a-de9ff88dcefd

puis lancez:

sudo update-initramfs -u

Voici donc mon dernier bootchart:

diagramme de démarrage

Bien mieux. En ce qui concerne l'arrêt, la suppression de rpcbind et de modemmanager a fait l'affaire. J'ai maintenant de bons temps de démarrage et d'arrêt.

alci
la source
Il est très agréable de voir que vous avez découvert ce problème lié au swap wait_for_root etc et que vous avez réussi à réduire votre temps de démarrage. @alci à propos de vous "assez gros 8 Go" Je me demandais pourquoi vous utilisez votre PC pour qu'il soit logique pour vous d'utiliser un échange après tout? Avez-vous même déjà utilisé la partition de swap, donc une de vos applications utilise> 8 Go de RAM? sensationnel? Sinon, vous auriez pu éviter les problèmes de swap en ne l'utilisant pas en premier lieu.
humanityANDpeace
1
Mon échange est ici parce que ... J'ai toujours eu un échange avec mes installations Linux. Et j'ai toujours appliqué l'ancienne règle empirique: swap size = ram size :-). Dois-je jamais utiliser plus de 8 Go de RAM? Normalement non. Mais que se passerait-il si je le fais sans échange? Et quel est le coût d'un échange?
alci
-6

Vous voudrez peut-être envisager d'installer votre système d'exploitation sur la RAM? Si la vitesse réelle est ce que vous recherchez, ce serait le cas. La différence entre le temps de chargement SSD et le temps de chargement RAM est tout simplement énorme.

Kaspar
la source
17
Idée sympa, mais je trouverais un peu gênant de devoir réinstaller mon système d'exploitation à chaque fois que j'éteins la RAM ... :-)
alci
Techniquement parlant, un système installé sur RAM disparaîtra une fois la machine éteinte
Ed Villegas
Bien sûr, c'est pourquoi vous achetez un onduleur et ne le laissez jamais s'arrêter.
Kaspar
Installer votre OS en RAM? memcache le pousse déjà, mais installer votre système d'exploitation?
Linuxios
@ Linuxios J'ai en quelque sorte fait ça une fois, en copiant une image de ma partition <2,5 Go / root sur une partition tmpfs dans ram. Après la longue copie de données initiale de 2,5 Go, il s'exécute assez rapidement. Comme le dit @ Linuxios, la mise en cache Linux atteint des vitesses similaires. Ce commentaire est juste pour dire: Ce n'est pas absolument fou de faire tourner Linux sous RAM. C'est faisable. lors de la copie de l'image avant l'arrêt, elle peut même devenir persistante :)
humanANDpeace