Comme j’utilise une clé USB pour un de mes système, les temps d’accès sont parfois très longs pour certaines opérations. J’ai donc créé un système de fichier dans ma RAM dans lequel j’ai monté mon répertoire “/tmp”.
Cependant, j’ai lu qu’on pouvait mettre d’autres répertoire en RAM sans risque.
J’aurais juste souhaité savoir lesquels, et pourquoi ?
Moi j’ai mis sur mon ramdisk en plus de /tmp, les dossiers de cache de tous mes navigateurs (firefox, opera,…), via des liens symboliques (ça les accélère un poil plus, et ça les vide systématiquement au démontage du ramdisk et donc à l’arrêt de la machine)
Ne pas oublier que le système est conçu pour garder en cache les parties les plus souvent accédées ! Vous croyez vraiment arriver à faire mieux au pif ?
Ça n’est pas du pif : le dossier de cache du navigateur est pas mal sollicité en écriture et en lecture si on surfe bcp, donc il y a un gain de vitesse potentiel à écrire et lire sur un support dont les temps d’accès sont meilleurs * 10⁶ (?).
Et en plus c’est bon pour ton disque (il écrit moins dessus, donc il s’use moins, et ça limite la fragmentation) - Et ça évite d’avoir a vider le cache à la main. Que du bonus ! faut juste pas espérer retrouver des choses en cache après un reboot…
[quote=“ggoodluck47”]
Tu es sûr d’avoir lu et compris ce que je viens de dire ? Si tu accèdes souvent il met en cache [/quote]
Bhen j’ai eu une mauvaise surprise:
J’ai lu ça une fois : youtube.com/watch?v=VBq-oczSnas ( attention flash )
et après plusieurs reboute ( et plusieurs jours ) il était toujours dans le cache
D’ou mon post
Bien sûr qu’à la sortie de session le cache est écrit, mais pas à tout bout de champ !
C’est ce qui fait qu’entre la mémoire que tu occupes et qui ne peut plus être utilisée et les accès que tu gagnes je ne suis pas sûr de qui a gagné.
Si je demande… c’est que j’ai de bonnes raisons de le faire
Comme je l’ai dit c’est un système installé sur une clé USB que je souhaite donc économiser au maximum en réduisant les cycles d’écritures. Le ramdisk est une solution. De plus les temps de réaction d’une clé USB sont parfois trèèèèès longs (j’ai pourtant une Xporter 200, seule la Voyager GT est un poil plus rapide).
Donc je recadre le sujet : quels sont les répertoires que je peux mettre en RAM via un ramdisk sans risquer la moindre perte de données ?
Note : j’ai déjà mis “/tmp” et les caches des navigateurs dans un ramdisk, ce sont les autres répertoires qui m’intéressent.
Ne pas oublier que le système est conçu pour garder en cache les parties les plus souvent accédées ! Vous croyez vraiment arriver à faire mieux au pif ?[/quote]
Effectivement !
Et si l’on souhaite éviter que la RAM soit vidée dans le swap (afin de conserver un maximum d’information en mémoire vive pour être sûr d’utiliser la RAM au maximum tout en ayant un super cache disque), il faut s’intéresser à la valeur du “swappiness”.
Lorsqu’il met en cache, il profite des temps libres pour faire les écritures sur le disque ce qui multiplie les lectures écritures sur la clef USB. Pour peu que certaines phases soient impossibles à interrompre, ça peut légèrement ralentir la machine. Il suffit d’installer le paquet noflushd et de monter le volume avec les options noatime pour régler cela. Pour le reste, par définition, le cache est en mémoire vive sinon l’intérêt est vraiment limité. Je crois que seules les pages mémoires réelles sont swappées, les pages de cache sont écrites sur le disque. Mais comme le dit Gérard, avec 2 ou 4G de RAM, il faut y aller pour swapper.
Aaaah merci beaucoup, c’était exactement mon problème en fait ! Utiliser Gnome de façon classique sur une clé USB (= pas en boot Live) induit des écritures régulières qui bloquent complètement le système, d’où à l’époque mon idée de mettre un maximum de choses en RAM et de les écrire seulement au moment où l’on éteint le système. De plus je viens de lire dans la description du paquet qu’il a été conçu à la base pour éviter de réveiller régulièrement les disques durs lorsqu’ils sont en standby, ce que je cherchais également à faire depuis longtemps !!
Merci à toi, tu viens de résoudre 2 de mes problèmes les plus gênants
D’après moi non. Si tu as laissé la valeur du swapinness par défaut, alors cela révèle que tu ne laisses pas trop tourner des applications sans y toucher. J’ai eu le cas l’autre jour : je n’ai pas touché à Iceweasel pendant quelques heures, et lorsque je l’ai remis en premier plan, j’ai vu que mon disque bossait pas mal. J’ai alors jeté un coup d’oeil au swap et j’ai vu qu’il était bien rempli et qu’il était en train de se vider. Puis une fois quasiment vide, Iceweasel s’est affiché sans ralentissements.
Certains trouvent que le swapinness doit être réglé de façon à libérer un maximum de RAM et donc d’utiliser le plus possible le swap, afin de libérer de la mémoire vive pour les nouvelles applications et le système. Mais à l’heure où nos machines possèdent souvent bien plus de RAM que ce que consomment les applications ouvertes, autant mettre un maximum de choses en RAM, les applications comme le cache disque, comme ça tout le système est bien plus réactif.
Pour une utilisation classique (bureautique, surf, media), le swap n’a à mon sens plus une grande utilisé puisque nos machines ont vraiment beaucoup de RAM, on est relativement loin de la fameuse erreur “out of memory” d’antan. Il sert surtout pour l’hibernation du système (= copie de tout le contenu de la RAM dans le swap puis extinction total du système, très pratique sur un ordi portable), et de manière plus anecdotique lorsque la RAM vient à manquer.