Journal Cache du système de fichier en RAM

Posté par  .
Étiquettes :
5
11
jan.
2010
Je possède un ASPIRE ONE, qui me sert essentiellement à surfer sur le net et qui a un disque SSD (8Go, type P-SSD1800).

Depuis que j'utilise firefox 3, les lenteurs sont insupportables (surtout au démarrage et à la saisie d'informations dans les formulaires), j'ai donc décidé de trouver une solution à ce problème (après avoir essayé modifier les options de firefox, rajouter des options au boot loader, et autres optimisations avec hdparm).

Voici donc la solution que j'utilise (avec ma propre distribution, linuxconsole) :
  • le montage de la partie "données et systémes" se fait grâce à aufs : la partie "ancienne" reste en lecture seule, la partie "nouveautés/changements" en ramfs (rw)
  • La synchronisation de la ramfs vers le système de fichier se fait toutes les 10 minutes et à l'arrêt du système

Avec cette astuce, Firefox (et le reste des programmes) sont bien plus réactifs !

Notes :
  • Je ne veux pas utiliser de système de fichier 'spécifique au SSD' pour le moment (je suis en ext2)
  • Je suis conscient que la solution que j'ai trouvé ne fonctionne qu'avec une quantité suffisante de RAM, et peut entraîner des pertes de données
  • Je veux rester fidèle à Firefox

Si vous avez une meilleure idée, je suis preneur ...

Yann Le Doaré
  • # Cache disque en RAM

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

    Je ne vois pas bien ... Linux ne gère-t-il pas déjà un cache disque en RAM ?

    sur ma Debian préférée :

    ouasse@tardis:~$ free
    total used free shared buffers cached
    Mem: 1991036 350896 1640140 0 27928 138904
    -/+ buffers/cache: 184064 1806972
    Swap: 5857272 0 5857272


    La colonne "cached" indique la quantité de RAM utilisée par les données dans le cache disque. En plus, la taille du buffer s'adapte à l'utilisation de la machine : si beaucoup de RAM est nécessaire à une appli, la taille du cache sera réduite, par contre si la machine ne fait tourner que des petites applications avec plein d'accès au disque (genre, un serveur web, un seveur de fichiers, etc), la taille du cache disque sera bien plus importants et permettra de bien accélérer certaines choses.
    • [^] # Re: Cache disque en RAM

      Posté par  . Évalué à 2.

      Dans ce cas un 'sync' devrait mettre ta taille de cache à zéro, non ?
      • [^] # Re: Cache disque en RAM

        Posté par  . Évalué à 1.

        Il y a aussi du cache en lecture :-)

        Et je ne suis même pas sûr que le cache en écriture des FS ou des devices soient comptés ici... il faudrait voir le doc du kernel.
      • [^] # Re: Cache disque en RAM

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

        non, la commande 'sync' ne fait qu'ordonner l'écriture des données du cache non encore écrites sur le disque. Ensuite le cache n'est pas vidé pour autant, et reste utilisable pour la lecture.

        après, je ne sais pas si Firefox effectue une grosse quantité d'écritures, mais généralement, il est rapide à se lancer dès le deuxième lancement, quand les fichiers sont en cache, justement.
  • # Firefox 3? On en est déjà à 3.6RC !!

    Posté par  . Évalué à 2.

    Moi je commencerais par utiliser une version récente de Firefox plutôt qu'une version sortie il y a déjà deux ans...
    • [^] # Re: Firefox 3? On en est déjà à 3.6RC !!

      Posté par  . Évalué à 2.

      Effectivement, c'est juste que la version 2 de firefox est plus rapide, j'utilise la version 3.5.6.
      En fait il n'y a pas que firefox qui soit lent sur cette machine (comparé à une machine à disque dur), le problème ne vient donc pas seulement de Firefox.
  • # Utiliser chromium ?

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

    ça a résolu tous mes problèmes de lenteur ..
  • # Imprécisions

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

    « surfer sur le Net » : on surfe plutôt sur le Web, surtout avec Firefox.

    « disque SSD » : lecteur Flash intégré, périphérique SSD, stockage Flash, tout ce qu'on veut, mais pas un disque !
    • [^] # Re: Imprécisions

      Posté par  . Évalué à 5.

      « surfer sur le Net » : on surfe plutôt sur le Web, surtout avec Firefox.

      Non, tu peux accéder aux FTP aussi :)
  • # tmpfs

    Posté par  . Évalué à 3.

    Sur mon netbook, j'ai /tmp (ainsi que quelques autres partitions) qui sont en tmpfs. Les partitions sont donc montées en RAM.
    J'ai ensuite changé le répértoire que firefox utilise pour bosser (dans /home par defaut il me semble) et l'ai remplacé par /tmp.
  • # Un ancien journal

    Posté par  . Évalué à 3.

    http://linuxfr.org/~octane/28089.html

    Lis les commentaires, il ya une ou deux amélios.
    Ca marche très bien, je n'utilise plus que ça.
  • # dirty page

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

    Il y a un certain nombre de paramètre que l'on peut modifier pour gérer l'accès au disque dure sous linux.

    Dans le document suivant, sont listé un tas de variable qui gère le problème. Si tu n'as pas peur de perdre des données, tu peux accroitre les chiffres. Cela parle du 2.6.10, j'espère que le nom des clefs n'a pas changé.

    http://www.cs.rochester.edu/~kshen/csc573-spring2008/assignm(...)

    "La première sécurité est la liberté"

    • [^] # Re: dirty page

      Posté par  . Évalué à 2.

      Je pense que c'est une bonne piste, en effet c'est toutes les 5 secondes que pdfush ([http://www.westnet.com/~gsmith/content/linux-pdflush.htm]) écrit sur le disque, je vais essayer de modifier ces options pour voir quels sont les gains de performances
      • [^] # Re: dirty page

        Posté par  . Évalué à 3.

        Ajoute un commit=30 (ou autre valeur en secondes) dans tes options de montage. Et voilà, plus d'écriture toutes les 5s.

        DLFP >> PCInpact > Numerama >> LinuxFr.org

        • [^] # Re: dirty page

          Posté par  . Évalué à 5.

          Plutôt que de faire ça à la main on peut utiliser laptop-mode qui intègre des tas d'optimisations destinées aux portables.
  • # fsync ?

    Posté par  . Évalué à 2.

    Pas sûr, mais ça a peut-être un lien avec les "problèmes" de fsync, dont on avait parlé ici : https://linuxfr.org/~JoeltheLion/27997.html

    C'est donc "à peu près" résolu avec ext4 ou un autre FS récent (avec les bonnes options au montage, peut-être).

    Avec ta manière de faire, le fsync se fait sur le tmpfs, donc c'est très rapide.

    Enfin, je ne comprend pas trop ta peur des FS "modernes" : OK, ext4 est encore un peu jeune mais il apporte pas mal de choses (surtout par rapport à ext_2_ !). Perso je suis en btrfs, et ça marche vraiment pas mal.

    En tous cas, c'est vrai que récemment j'ai vu des choses qui font peur : un SSD transcend bas de gamme qui ne tiens pas plus de 3 mois (peut-être un défaut ...) et celui d'un eeepc 1er du nom qui lâche après quelques années ... faites attention ! (en tous cas, vivement l'arrivée du trim sur tous les SSD)
    • [^] # Re: fsync ?

      Posté par  . Évalué à 1.

      Perso je suis en btrfs, et ça marche vraiment pas mal.

      Sauf que le format sur le disque du FS n'est pas encore strictement fixé (même s'il faut une très bonne raison pour qu'il change encore).
      cf http://btrfs.wiki.kernel.org/index.php/FAQ
      Par exemple il a changé dans le 2.6.31, qui sait lire l'ancien format mais réécrit de façon un peu différente, donc une fois utilisé avec un 2.6.>=31 ce n'est plus lisible par un précédent (à moins de le patcher avec la dernière version de btrfs, ce qui semble prévu d'après la FAQ).
      • [^] # Re: fsync ?

        Posté par  . Évalué à 2.

        Oui oui je sais, j'en ai même fait les frais ....
  • # Liste anti-phishing

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

    Il faut désactiver le téléchargement de la base de site anti-phising de Firefox et son interrogation par un moteur SQL.
    http://macles.blogspot.com/2008/07/reclaiming-disk-space-on-(...)
    http://macles.blogspot.com/2008/08/about-issue-with-firefox-(...)

Suivre le flux des commentaires

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