Annonce

>>> Bienvenue sur codelab! >>> Première visite ? >>> quelques mots sur codelab //// une carte des membres//// (apéros) codelab


#1 2008-04-28 12:59:30 [Linux] utiliser la RAM comme disque dur ultra rapide

oli44
membre
Lieu: Notre Dame des Landes
Date d'inscription: 2008-04-25
Messages: 585
Site web

[Linux] utiliser la RAM comme disque dur ultra rapide



Salut,

je profites du forum pour prolonger une conversation tenue avec Rep et rentrer dans les détails à propos de l'utilisation de la RAM sou sLinux comme disque dur, ce qui un truc très utile quand on en a marre d'avoir des clicks dans Jack dès qu'on charge un sample de 500 Ko.

Certains qui ont connu l'Atari des 80's ou un système Mac OS 7 se souvienent bien du RAMdisk.

En fait les noyaux Linux récents (après le 2.4) et la plupart des distribs implémentent une évolution de ce système qui consiste à créer une partition temporaire stockée uniquement en RAM. Elle est généralement accessible en /dev/shm (comme sous Debian et Ubuntu). Sa taille par défaut est à la moitié de la RAM du système.

Par exemple, si je fais  sur mon portable avec 2048 Mo de RAM:

df -h | grep /dev/shm

J'obtiens:

tmpfs                1014M     0 1014M   0% /dev/shm

Cependant, je peux modifier ce réglage par défaut et le paramétrer plus finement grace au fichier /etc/fstab (il s'agit du tableau récapitulatif du système de fichiers). Je peux entre autres lui allouer beaucoup plus de RAM et aller jusqu'à (RAM totale du système + taille du fichier SWAP).

Exemple: sur un système avec 2048 Mo de RAM et une swap de 4096 Mo, je peux donc allouer jusqu'à 6144 Mo à cette partiton tmpfs. On peut se contenter de lui allouer autant que la quantité totale de RAM du système. En pratique, cela donne

sudo vim /etc/fstab

et on insère la ligne suivante:

tmpfs     /dev/shm    tmpfs    nodev/nosuid,size=2048

Il faut ensuite redémarrer le système pour activer le tout.

Vous allez me dire, si je la remplis trop, cette partition, le système va swapper et cela va s'entendre. A priori, oui. Il faut cependant savoir qu'une swap installée sur une partition primaire sera accédée en direct par le système et sera toujours plus véloce qu'un fichier stocké sur une partition /home.

Enfin, il ne faut pas oublier que le contenu de cette partition est totalement volatile et disparaîtra avec le prochain redémarrage ou  la prochaine coupure d'électricité!

Voir http://www.commentcamarche.net/forum/af … s-la-ram#5 pour un historique rigolo et bien documenté.

Pour info, une distrib comme http://goto10.org/puredyne/ fonctionne sur ce principe de partitions de type tmpfs.

Enjoy!

Dernière modification par oli44 (2008-04-28 12:59:55)


La route est longue mais la voie est libre

Hors ligne

 

#2 2008-04-28 19:22:37 Re : [Linux] utiliser la RAM comme disque dur ultra rapide

rep
modérateur
Lieu: Toulouse
Date d'inscription: 2008-02-27
Messages: 1444
Site web

Re: [Linux] utiliser la RAM comme disque dur ultra rapide



salut Oli, suite à tes conseils j'ai testé et effectivement il y a bien un gain!
je n'ai pas tester avec un sample son mais avec un modele 3d en .obj que je charge avec GEM, il n'y a pas une grosse différence mais c'est tout  de même sensible (je dirais 20%).
Ensuite effectivement cela doit être surtout probant avec du son pour éviter les clics.
Demain j'essaie avec mes samples vidéos.

Je crois même que ce que tu m'avais dit est qu'il serait judiceux de TOUT charger en ramdisk : objets3D, samples audio, samples vidéos, patches pd etc etc
genre, dans un fichier bash : recopier tout les medias et patch en ram, puis lancer Pd

Hors ligne

 

#3 2008-04-28 20:34:16 Re : [Linux] utiliser la RAM comme disque dur ultra rapide

oli44
membre
Lieu: Notre Dame des Landes
Date d'inscription: 2008-04-25
Messages: 585
Site web

Re: [Linux] utiliser la RAM comme disque dur ultra rapide



Oui tout à fait, dans un monde idéal, tout serait en RAM, y compris le programme audio ou vidéo , pas juste les samples. Je travaille d'ailleurs actuellement à un script shell qui se chargerait de mettre tout ce petit monde en place.  Pas évident parce quil y a quand même pas mal de paramètres à tester si on veut être sur de rester dans les clous. J'aurais surement besoin de bêta testeurs cool

Pour ce qui est du gain de rapidité, il apparait évidemment surtout sur les gros fichiers, ou lors de la copie d'une multitude de petits fichiers (compare par exemple la décompression de  l'archive de gephex vers ton /home ou vers /dev/shm , et ensuite le temps de compilation dans chacun des cas...). Il faut également faire le comparatif  après un redémarrage, ou après avoir purgé la mémoire cache (cf autre message du jour).

L'autre gain, inaudible, est celui de l'absence de clics audio dûs aux accès disques. D'ailleurs, à une époque, j'avais trouvé comme solution de lire tous les médias après les avoir stockés sur une partition partagée en NFS sur une autre machine. Les accès réseau à un fichier ne font pas cliquer, d'après mon expérience. Et un serveur de fichiers, c'est pas cher si on s'équipe avec un Slug http://blog.fabroce.info/post/2006/10/0 … r-le-nslu2

O.


La route est longue mais la voie est libre

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2024