View previous topic :: View next topic |
Author |
Message |
El_Goretto Moderator
Joined: 29 May 2004 Posts: 3174 Location: Paris
|
Posted: Thu Nov 18, 2010 2:44 pm Post subject: [OFF] SSD, TRIM et linux - la vérité vraie |
|
|
Bonjour,
J'ai craqué récemment (mais pas trop fort, c'était une promo, je vous jure!) pour un joli petit SSD 60 Go à base de SandForce, et je me suis de ce fait coltiné pas mal de lecture.
Je m'en vais donc de ce pas vous faire part de mes découvertes...
En particuliers, en commençant par les problématiques d'alignement de début de partition, même sujet que pour les volumes RAID. La seul subtilité étant de ne pas se planter en alignant seulement sur 4K (taille "de bloc" en lecture) mais sur la taille des "erase block" qui font par exemple 512K (cf les tenants et aboutissants de la techno MLC). Oui, ça surprend un peu quand on croit avoir tout fini et que paf, faut tout péter. Cf le modèle spécifique de SSD pour savoir la bonne valeur.
Ensuite, le sujet du support de TRIM par notre cher OS.
Alors oui, ext4 par exemple, ok, si on n'oublie pas l'option de montage "discard", ah, très bien, ça "TRIMe" à la volée.
Sauf que... si vous avez un couche supplémentaire entre le FS et le SSD, disons toutes les joyeusetés à base de device-mapper, vous pouvez vous assoir dessus. Si si, vous savez, dm-crypt et... LVM. HAHAHAHAHA Ouned!!! [edit: ce n'est plus totalement vrai, LVM supporte TRIM partir du noyau 2.6.36]
Bref, si vous faites parti du club (comme moi) des gens qui ne conçoivent pas qu'on puisse avoir un setup Linux durable sans LVM, ça fait mal.
Donc le support de TRIM sous Linux, on nous aurait menti?
Alors oui et non, c'est toujours une affaire à suivre côté kernel pour le point précédent, mais il existe des solutions en attendant, remercions l'auteur de hdparm pour son script magique "wiper.sh" qui fait tout en userland. Celui-ci est fourni avec ou à côté de hdparm suivant les versions, et permet de "TRIMer" à la demande un système de fichier.
Tellement c'est beau que la dernière version intègre la gestion du NTFS et du HFS+. C'est les fanboys de la pomme qui vont être content (MacOS X ne gère pas du tout TRIM), au moins autant que ceux qui restent sous XP (idem).
Bon, par contre, pour que wiper.sh gère lui aussi device-mapper & co, il faut pour le moment le patcher car ce n'est pas de base.
Pour ceux que ça intéresse, l'auteur fréquente le forum d'une marque de SSD (le lien), ce qui permet d'avoir des infos assez intéressantes.
N'hésitez pas à partager vos propres expériences et lectures sur le sujet. _________________ -TrueNAS & jails: µ-serv Gen8 E3-1260L, 16Go ECC + µ-serv N40L, 10Go ECC
-Réseau: APU2C4 (OpenWRT) + GS726Tv3 + 2x GS108Tv2 + Archer C5v1 (OpenWRT)
Last edited by El_Goretto on Thu Nov 18, 2010 7:45 pm; edited 1 time in total |
|
Back to top |
|
|
GentooUser@Clubic l33t
Joined: 01 Nov 2004 Posts: 829
|
Posted: Thu Nov 18, 2010 5:16 pm Post subject: |
|
|
Heu d'après ce lien le TRIM marche avec LVM https://linuxfr.org//2010/10/21/27463.html#bref10
Par contre effectivement pas avec dm-crypt, et là, je dirais à la limite "normal" si dm-crypt se comporte comme TrueCrypt et remplis la totalité de son espace avec des données aléatoires, donc pas vraiment d'espace libre du point de vue du périphérique de stockage (du coup ay ay ay pour les SSD anéfé)
Sinon t'a partitionné comment ? Je suis très intéressé par un SSD, mais hors de question de mettre /usr/portage ni de compiler les paquets dessus j'imagine, du coup sous Gentoo ça limite un peu l'intérêt vu que ce sont les parties du système pour lesquelles un boost est le plus appréciable !
Last edited by GentooUser@Clubic on Thu Nov 18, 2010 5:24 pm; edited 1 time in total |
|
Back to top |
|
|
gregool Guru
Joined: 26 Nov 2007 Posts: 336 Location: Lille
|
Posted: Thu Nov 18, 2010 5:23 pm Post subject: |
|
|
Merci pour le retour, tu as porté ton choix sur quel matériel? moi je suis en pleine lecture également, j'ai une mobo qui gère le SATA3 mais je m'orienterais vers un OCZ Vertex 2 pour l'instant. |
|
Back to top |
|
|
El_Goretto Moderator
Joined: 29 May 2004 Posts: 3174 Location: Paris
|
Posted: Thu Nov 18, 2010 7:41 pm Post subject: |
|
|
Oh, quelle bonne nouvelle, merci GentooUser@Clubic
Donc ok, support du TRIM "online" par LVM à partir du noyau 2.6.36, ça date d'il y a 1 mois Je corrige mon post.
Sinon, oui gregool, c'est un Vertex 2 aussi que j'ai, mais en petit pour me faire la main, parce que OCZ a une réputation assez "bleeding edge", voire un peu "experimental" Donc je le teste un peu dans tous les sens (secure erase & co, y compris l'upgrade de firmware sous windows pas piqué des vers, faut parfois faire un reset CMOS... ça a été mon cas.). Ceci dit, pour le moment, ça a marché sur mon ICH9 tout vieux (en mode IDE, argh) ou ma carte areca 1220 (le temps que je comprenne que c'était une mauvaise idée car pas de TRIM du tout).
Je continue de tester wiper.sh avant d'y mettre définitivement 1 OS.
Pour mettre un linux sur un SSD, je pensais tout mettre sauf /usr/src (les kernels), et /usr/portage, voire /var et /tmp pour les extrémistes (ou bien seulement /var/tmp pour l'espace de compilation portage et ccache).
Votre avis? _________________ -TrueNAS & jails: µ-serv Gen8 E3-1260L, 16Go ECC + µ-serv N40L, 10Go ECC
-Réseau: APU2C4 (OpenWRT) + GS726Tv3 + 2x GS108Tv2 + Archer C5v1 (OpenWRT) |
|
Back to top |
|
|
El_Goretto Moderator
Joined: 29 May 2004 Posts: 3174 Location: Paris
|
Posted: Mon Nov 22, 2010 12:07 am Post subject: |
|
|
En complément de wiper.sh pour lancer un "TRIM" à la demande, pour réinitialiser complètement un SSD il y a la manip' via l'instruction ATA secure erase: https://ata.wiki.kernel.org/index.php/ATA_Secure_Erase
Paf pastèque, façon sortie d'usine.
Chez moi je suis toujours en "frozen" après un boot, je dois jouer du cable SATA et alim sur le SSD avant de passer "not frozen" et jouer la suite des commandes.
--
edit:
Un post de blog à propos de l'alignement des partitions sous linux, en particuliers, l'alignement sur la taille des erase blocks, et la commande qui va bien pour formater en ext4 (note: pour un Vertex2, les erase blocks sont de 512K semble-t-il). _________________ -TrueNAS & jails: µ-serv Gen8 E3-1260L, 16Go ECC + µ-serv N40L, 10Go ECC
-Réseau: APU2C4 (OpenWRT) + GS726Tv3 + 2x GS108Tv2 + Archer C5v1 (OpenWRT) |
|
Back to top |
|
|
El_Goretto Moderator
Joined: 29 May 2004 Posts: 3174 Location: Paris
|
Posted: Thu Jan 20, 2011 12:11 pm Post subject: |
|
|
J'ai re-cherché le test qui permet de vérifier que TRIM/discard est bien fonctionnel sur un système de fichier donné: https://sites.google.com/site/lightrush/random-1/checkiftrimonext4isenabledandworking
Juste un petit complément d'info pour faciliter ce test, à l'étape 3&4, un exemple:
Code: | # hdparm --fibmap tempfile
tempfile:
filesystem blocksize 4096, begins at LBA 2048; assuming 512 byte sectors.
byte_offset begin_LBA end_LBA sectors
0 2110464 2114559 4096
2097152 2209792 2213887 4096
4194304 2271232 2279423 8192
8388608 3196928 3282943 86016
|
La commande suivante est alors:
Code: | # hdparm --read-sector 2110464 /dev/sdX |
_________________ -TrueNAS & jails: µ-serv Gen8 E3-1260L, 16Go ECC + µ-serv N40L, 10Go ECC
-Réseau: APU2C4 (OpenWRT) + GS726Tv3 + 2x GS108Tv2 + Archer C5v1 (OpenWRT) |
|
Back to top |
|
|
freezby Tux's lil' helper
Joined: 07 Sep 2006 Posts: 103 Location: Angers, France
|
Posted: Thu Jan 20, 2011 1:22 pm Post subject: |
|
|
Salut,
Si ça peut en intéresser quelques un, j'ai repéré que btrfs a une option de montage "ssd". Je ne sais pas ce que cela apporte par contre.
[edit] Apparemment après m'être documenter, ca n'a pas l'air d'être la panacée....
Sinon, excusez mon ignorance mais pourquoi ne pas monter /usr/portage & co sur le ssd ? quels désagrément cela engendre ? |
|
Back to top |
|
|
El_Goretto Moderator
Joined: 29 May 2004 Posts: 3174 Location: Paris
|
Posted: Thu Jan 20, 2011 3:29 pm Post subject: |
|
|
L'idée est de rentabiliser l'utilisation en lecture du SSD tout en minimisant les accès en écriture (usure).
/usr/portage n'étant lu que lors d'un emerge, et mis à jour intensément à chaque synchro de l'arbre... CQFD _________________ -TrueNAS & jails: µ-serv Gen8 E3-1260L, 16Go ECC + µ-serv N40L, 10Go ECC
-Réseau: APU2C4 (OpenWRT) + GS726Tv3 + 2x GS108Tv2 + Archer C5v1 (OpenWRT) |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|