Forum Linux.debian/ubuntu Utilisation de la RAM

Posté par  . Licence CC By‑SA.
Étiquettes :
4
10
mar.
2023

Bonjour,

J'ai un PC sous KDE Neon depuis un bout de temps déjà et tout marchait plutôt bien.
Ces derniers temps en revanche la gestion de la RAM est plutôt un désastre.
Il m'arrive plusieurs fois de devoir redémarrer au bouton car la machine sature tellement niveau RAM que plus rien ne répond. Pourtant je ne fait rien de spécial.
Utilisateur de Firefox avec pas mal d'onglets souvent. La en lançant Krita, tout s'est figé.

Concernant le PC, il s'agit d'un Dell Optiplex 3020 avec 8Go de RAM.
C'est pas énorme certes mais vu mon usage cela devrait suffire.

Avez-vous des outils a suggérer afin d'analyser les composants afin de voir s'il y a un autre problème ? Aussi, est-il possible de paramétrer le système afin d'avoir une gestion de la mémoire un peu plus agressive pour pour d'éviter la saturation ?
Je suis preneur également pour toute autre suggestion et conseil.

Merci d'avance pour l'aide.

  • # Quelques idées...

    Posté par  (Mastodon) . Évalué à 5. Dernière modification le 11 mars 2023 à 09:25.

    Curieux ton histoire, car oui, 8Go de RAM c'est censé être largement suffisant même pour FF qui c'est vrai est un gros bouffeur de RAM :)

    Deux questions :
    - as-tu une partition swap ? de quelle taille ? sur un SSD ou un HDD ?
    - et d'abord qu'est-ce qui te fait dire que c'est la RAM qui est pleine ? quelles commandes as-tu lancé ? (vraie question)

    En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.

    • [^] # Re: Quelques idées...

      Posté par  . Évalué à 2.

      pour ce qui me concerne, j'essaie de limiter autant que faire se peuu le swapping ; il y a un parametre permettant de régler le taux d'utilisation du swap : swappiness ; regarde aussi du coté de htop.

      • [^] # Re: Quelques idées...

        Posté par  . Évalué à 3.

        il y a aussi cette commande qui me semble intéressante pour voir qui consomme le plus de swap : smem -a -s swap -r | head -15

        la commande top permet de voir l'équilibrage entre swap et buffering.

    • [^] # Commentaire supprimé

      Posté par  . Évalué à 4.

      Ce commentaire a été supprimé par l’équipe de modération.

      • [^] # Re: Quelques idées...

        Posté par  (Mastodon) . Évalué à 3.

        Et attention les bidouillages du swap peuvent être contre-productifs.

        J'avoue que la gestion de la RAM est d'une telle complexité que je la laisse avec plaisir à des personnes plus compétentes que moi.

        En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.

        • [^] # Re: Quelques idées...

          Posté par  . Évalué à 2.

          Oui, malheureusement c'est très compliqué…

          Ayant peu de mémoire selon les standards d'aujourd'hui (4GB partagés avec la vidéo et aussi 10% pour le swap désormais), j'ai essayé d'expérimenter diverses solutions :
          1. swappiness au minimum, 1 (n'empêche pas de swapper si besoin),
          2. zswap (ou précédemment zram) pour utiliser du swap sans la lenteur du HDD,
          3. systemd-oomd, ça j'ai rapidement arrêté, ça a tendance à tuer toute la session au lieu de juste firefox par exemple.

          L'out of memory killer, c'est très compliqué à configurer… il faut maitriser les principes de memory pressure, de cgroups, etc. Le seul truc que j'ai compris c'est qu'on peut ajuster l'OOMScore (+1000 pour firefox).

          Donc, pour l'instant, je me contente de surveiller l'occupation de la RAM et du swap avec une applet ("Resource monitor") !

    • [^] # Re: Quelques idées...

      Posté par  (Mastodon) . Évalué à 4.

      8Go de RAM c'est censé être largement suffisant même pour FF qui c'est vrai est un gros bouffeur de RAM :)

      Il y a quelques mois quelqu'un ici avait donné un paramètre magique pour limiter la mémoire utilisée par Firefox. Chez moi, pour un souci similaire, ça avait été vraiment efficace. Hélas, je n'arrive pas à retrouver mes notes à ce sujet…

      Si ça parle à un spécialiste, c'est peut-être la piste à suivre.

      • [^] # Re: Quelques idées...

        Posté par  . Évalué à 3.

        Ce paramètre magique pourrait m'intéresser.

        En attendant, pour libérer un peu de mémoire sans relancer FF :
        1. ouvrir about:memory
        2. cliquer sur minimize memory usage

      • [^] # Re: Quelques idées...

        Posté par  . Évalué à 2.

        J'avais sensiblement le même problème avec mon netbook.
        Je désactivais le cache en RAM sur Firefox dans about:config.
        Ça faisait du bien niveau consommation :

        browser.cache.memory.enable --> à passer en false

    • [^] # Re: Quelques idées...

      Posté par  . Évalué à 1.

      Oui c'est très curieux car je n'avais pas ce problème avant.
      J'ai un SSD Kingston 250 Gb qui a environ 2-3 ans je dirais.
      Voici son état.

      Ensuite, qu'est qui me fait dire que c'est ça.
      La première fois je suis sur que c'était la RAM car j'ai eu le temps d'ouvrir le moniteur système KDE et j'ai pu voir que la mémoire était a son maximum. J'ai tout simplement redémarré au bouton comme je devais travailler.

      La seconde fois en revanche plus rien ne répondais. J'ai ouvert quand même une console virtuelle (ce qui a pris un temps dingue déjà) dans l'espoir de lancer un top. Je n'ai pas réussi a me connecter. En mettant l'utilisateur il ne me demandait pas mon mot de passe (ça chargeait) puis j'avais droit a un timeout.

      Concernant la swap, j'en ai une effectivement de 1Go. D'ailleurs c'est curieux d'avoir mis 1Go mais comme l’installation date d'un moment déjà, je ne me souviens pas pourquoi j'ai fait ça.

  • # plugins

    Posté par  (site web personnel) . Évalué à 5. Dernière modification le 11 mars 2023 à 10:26.

    Essaie de lancer Firefox en "mode de dépannage" (menu Aide) pour voir si ça change quelque chose. Parfois ce sont les plugins qui ont des fuites de mémoire.

    Ca m'arrive d'avoir des freezes sur une machine avec 8 Go mais c'est quand j'utilise une machine VirtualBox un peu trop volumineuse, avec d'autres logiciels ouverts.

    Si tu n'as pas de partition de swap, tu peux mettre en place un fichier de swap :
    https://doc.ubuntu-fr.org/swap

    Ca permet au minimum de sentir quand le problème arrive et de fermer le gros consommateur avant que ça coince plus…

  • # Est-ce bien la RAM ?

    Posté par  . Évalué à 6.

    Comment as-tu déterminé que c'était la RAM qui bloquait ton PC ?
    Personnellement, je pencherais plus pour un disque dur un peu mou.

    Par exemple, sur mon Raspberry qui tourne sur une carte SD, j'ai régulièrement des petits blocages qui durent parfois quelques minutes, à cause d'un accès au disque trop lent (la petite diode verte reste allumée pendant ces blocages). Au début, j'ai crut que ça venais du CPU car il m'affichait 100% d'utilisation, mais j'ai vite compris qu'il se consacrait à 100% à attendre.

    Après je peux me tromper.

    L'informatique n'est pas une science exacte, on n'est jamais à l'abri d'un succès

    • [^] # Re: Est-ce bien la RAM ?

      Posté par  . Évalué à 6.

      un outil comme dstat est assez pratique pour voir ce genre de problème : il affiche sur la même ligne l'état CPU, les IO disque, réseau, le swap, etc…

    • [^] # Re: Est-ce bien la RAM ?

      Posté par  . Évalué à 5.

      ou alors un disque avec quelques secteurs défaillants ; quand on essaie de les lire, le noyau Linux reste bloqué ; on peut en voir des traces avec la commande "sudo dmesg".

      • [^] # Re: Est-ce bien la RAM ?

        Posté par  . Évalué à 1. Dernière modification le 14 mars 2023 à 06:48.

        Le problème c'est que tout se fige, vraiment, lorsque j'ai ce problème.
        Quasiment plus rien ne répond donc pas évident de lancer les commandes.

        En tout cas je la garde sous le coude pour la prochaine fois si j'arrive a taper quelque chose.

        • [^] # Re: Est-ce bien la RAM ?

          Posté par  . Évalué à 1. Dernière modification le 15 mars 2023 à 09:45.

          Comme dit ci-dessous, quand il semble impossible d'ouvrir un émulateur de terminal, souvent faire Ctrl+Alt+F3 et se connecter en mode texte fonctionne, mais ça peut mettre 30 bonnes secondes.

  • # quelques pistes

    Posté par  (site web personnel) . Évalué à 6.

    Dans ton cas, la première chose que je fais d'analyser les log systèmes à la recherche d'un message anormal.
    Ensuite, il faut essayer de savoir si c'est un souci avec l'environnement graphique : passe en mode console (alt + ctrl + f2) et lance la commande top, ou mieux htop, elle te permettra de voir si la mémoire est saturée ou pas.
    Enfin dernière piste : vérifie ta mémoire avec un programme comme memtest ou memtest86.

  • # Raccourci utile que je viens de découvrir...

    Posté par  . Évalué à 1.

    Désolé de déterrer un post…

    Si tu as les touches systèmes magiques du noyau activées (Kernel's Magic Sysrq keys): presse Alt+Syst+F quand tu manques de mémoire (et seulement quand tu en manques, ça tue le processus avec le plus gros oomscore dans TOUS les cas).

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.