Fermer le menu

Commande TRIM : le meilleur ami du SSD

Antoine Collin | | 13:09 |  45
Un SSD Samsung dans un iMac - photo Aaron und Ruth Meder CC


Depuis l'avènement des SSD, la durée de vie et la tenue dans le temps au niveau des performances sont deux choses très importantes à prendre en compte. À un moment où Apple équipe de plus en plus ses ordinateurs avec des SSD — ou ce qu'Apple appelle stockage flash dans certains cas —, il n'est pas inutile de revenir sur la commande TRIM, le sésame qui permet de limiter l'usure et — surtout — la perte de performances dans le temps.

Les SSD et le TRIM



Un peu de technique, pour commencer, sur l'intérêt de la commande TRIM et la raison de son existence. Avec un disque dur classique, quand un fichier est supprimé, on efface simplement le premier maillon d'une chaîne, qui indique où se trouve le début du fichier ainsi que le secteur suivant, secteur suivant qui indique un autre secteur, etc.. L'intérêt est évident : l'effacement est rapide et réécrire les données sur un secteur contenant des données sur un disque dur n'est pas un problème.

Avec un SSD, c'est différent : la gestion de l'usure a besoin de secteurs vides du point de vue du SSD. En simplifiant, le contrôleur du SSD essaie d'uniformiser l'usure de la mémoire flash en déplaçant les données sur des secteurs peu usés, pour éviter qu'une cellule ne tombe en panne parce qu'elle a été trop écrite. Comme le contrôleur ne peut pas deviner qu'un secteur a été effacé au niveau du système de fichiers (seule la première partie du fichier a été effacée, rappelons-le), il est obligé dans certains cas de lire la cellule, la réécrire à un autre endroit et ensuite écrire la nouvelle donnée. C'est évidemment assez fastidieux, ça augmente l'usure (on écrit deux fois) et ça ralentit l'opération, étant donné qu'on va effectuer une lecture et deux écritures.

C'est là que la commande TRIM intervient : au lieu d'effacer le premier maillon de la chaîne, on va indiquer au contrôleur du SSD que chaque secteur qui était utilisé par le fichier est vide. Techniquement, on n'efface pas directement les données, on indique à la table LBA du SSD — qui référence chaque secteur — qu'un secteur est vide. On va donc gagner en performances : quand le contrôleur cherchera un secteur peu usé, il ira en priorité vérifier dans ceux qui sont vides. Et donc au lieu d'une lecture et de deux écritures, on aura simplement une seule écriture. Le seul inconvénient, c'est que l'effacement d'un gros fichier peut prendre quelques secondes de plus, le temps d'envoyer la commande pour chaque secteur. De même, l'effacement de la corbeille est un peu plus lent quand le TRIM est actif.

La commande TRIM n'empêche pas l'usure du SSD, mais elle permet de la limiter, et elle évite surtout les pertes de performances. Attention, elle a un impact sur quelque chose de précis, la récupération des données effacées. En effet, le SSD utilisé avec la commande TRIM va réécrire en priorité sur les données effacées, ce qui n'est pas le cas avec un disque dur classique où les réécritures sont plus aléatoires. Il est donc plus compliqué de récupérer des données sur un SSD que sur un disque dur.

Un peu d'histoire



Le TRIM et OS X, ça n'a jamais été un couple tranquille. Alors que Linux prend en charge la commande depuis 2008 et que Microsoft a intégré son support dans Windows NT 6.1 (Windows 7 et Windows Server 2008 R2) dès octobre 2009, le « système d'exploitation le plus avancé au monde » n'a pris en charge la commande qu'en juin 2011, avec la dernière mise à jour mineure de Snow Leopard, la 10.6.8. Les versions suivantes du système d'exploitation, Lion, Mountain Lion et le futur Mavericks, prennent bien évidemment en charge cette commande qui fait partie de la norme ATA.

Pour les SSD Apple uniquement



La prise en charge chez Apple est comme souvent un peu particulière : la commande n'est supportée (et activée) par défaut que sur les SSD Apple. Bien évidemment, il est possible d'activer la commande manuellement sur d'autres SSD, nous allons le voir dans la suite. Avant d'activer le TRIM, il faut prendre en compte quelques points. Premièrement, il faut un système d'exploitation qui prend en charge le TRIM, soit Snow Leopard en version 10.6.8, Lion ou Mountain Lion — voire Mavericks pour les plus hâtifs. Deuxièmement, il faut un SSD compatible avec la commande TRIM. La majorité des SSD sortis après 2009 sont compatibles, certains modèles plus anciens le sont aussi avec une mise à jour de firmware qu'il faudra donc effectuer le cas échéant. Attention, il y a d'anciens modèles de SSD, comme les premiers Intel X25-M, qui ne sont pas compatibles.

La barrette SSD du MacBook Pro Retina 13" a la commande TRIM activée par défaut - photo iFixit



Enfin, la façon de connecter le SSD au Mac a une influence : la commande ne fonctionne qu'avec une interface SATA. La majorité des Mac utilisent des SSD SATA, que ce soit des modèles 2,5 pouces ou des barrettes propriétaires comme dans certains portables. Les exceptions notables en interne sont le SSD du premier MacBook Air, interfacé en PATA, et les baies optiques de certains vieux modèles. Les MacBook blancs et certains MacBook Pro (avant les Unibody) utilisent en effet un lecteur optique PATA et les OptiBay SATA pour ces modèles intègrent généralement un adaptateur PATA vers SATA qui ne permet pas d'utiliser la commande.

En externe, la commande TRIM est rarement supportée. L'USB 2.0, l'USB 3.0 (même en UASP) et le FireWire ne prennent pas en charge la commande, alors que les boîtiers eSATA sont compatibles, tout comme la majorité des boîtiers Thunderbolt. La raison est simple : les boîtiers Thunderbolt intègrent un contrôleur SATA classique qui utilise les pilotes standards d'OS X et ils supportent donc la commande.

Pour les amateurs de RAID, la commande fonctionne en RAID1 (mirroring) et en RAID0 (stripping) quand on utilise la gestion logicielle de Mac OS X, alors que les cartes intégrant un contrôleur RAID matériel ne prennent généralement pas en compte la commande.
Catégories: 
Tags : 

Les derniers dossiers

Ailleurs sur le Web


45 Commentaires Signaler un abus dans les commentaires

avatar Anonyme (non vérifié) 14/08/2013 - 13:16

Il existe aussi Chameleon SSD Optimizer : http://chameleon.alessandroboschini.it/index.php pour permettre le TRIM sur des SSD non Apple. C'est le programme que j'utilise, et je pense qu'il doit figurer ici...

avatar madaniso 14/08/2013 - 13:20

Au début, c'était cher. J'avais acheter mon MBP d'occasion en 2010 et le mec en avait mis un de 80Go dessus. Depuis j'utilise les services en ligne pour augmenter mon espace de stockage mais aujourd'hui, les prix ont bien baisser et je pense qu'investir dans un SSD 256Go n'est plus un luxe et ça change vraiment une machine.

avatar Macmao 14/08/2013 - 13:21

D'un autre côté OWC déconseille d'activer le TRIM pour leurs SSD ...


avatar eseldorm (non vérifié) 14/08/2013 - 13:22

Deux pages pour arriver dire qu'il faut utiliser le TRIM alors que trois courts paragraphes suffisent. Ca fait beaucoup de verbiage tout de meme. Pas la peine de vous prendre pour Dumas et ecrire a la page :) Ou alors vous en etes au nombre de page/pub.

avatar arm07 14/08/2013 - 13:27

Question bête : comment savoir que mon SSD est "Apple" ? Car je n'ai rien changé sur mon MBA 2013 mais je ne savais même pas qu'Apple fabriquait ses propres SSD, d'ailleurs ça m'étonne beaucoup mais c'est ce que dit l'article.

avatar tigre2010 14/08/2013 - 13:29

@arm07 : Si tu l'as acheté neuf, c'est du Apple (Apple ne fabrique pas ses SSD, c'est Toshiba, Samsung et SanDisk qui fabrique pour Apple et Apple les estampille)

avatar lewax 14/08/2013 - 13:30

Merci pour cet article instructif...j'utilise des ssd depuis 4 ans (cher le 120gb a l'époque!). J'ai activé trim dès qu'on m'en a parlé et aujourd'hui, j'ai l'explication.

avatar r e m y 14/08/2013 - 13:36

je confirme le premier commentaire: Chameleon SSD Optimizer (gratuit) permet d'activer le TRIM et offre quelques options complémentaires qui sont dans les options payantes du nouveau TRIM Enabler

avatar The3DCie 14/08/2013 - 13:38

@arm07 Apple ne fabrique évidemment pas de SSD, mais ceux qui sont intégrés dans leurs machines (et qui peuvent provenir de différents constructeurs, d'ailleurs...) sont reconnus comme étant le matériel d'origine de la machine et par conséquent Mac OS X applique la commande TRIM au SSD.

avatar KilEstBoLeMac 14/08/2013 - 13:40

Très bon article, bravo. Merci pour ce partage de connaissance ;)

avatar patrick86 14/08/2013 - 13:54

@eseldorm : Toi tu es du genre à faire ce qu'on te demande, sans chercher à savoir pourquoi...

avatar stefhan 14/08/2013 - 13:56

Merci pour l'excellent article ! Question subsidiaire : pourquoi Apple n'active que ses disques ? - Pour avoir moins de boulot ? (On est mieux servis que par soi-même) - Pour éviter d'avoir à assumer des disques mal conçus ? (façon windows)

avatar daxr1der 14/08/2013 - 13:57

Ce qui est fou c'est qu'Apple à besoin de samsung mais pas l'inverse... Le piège à troll est posé il y a plus qu'a attendre. :-)

avatar calotype 14/08/2013 - 13:58

Article intéressant mais trop long et incomplet, je ne suis pas un geek mais il me semble que des tests d'usures accélérés sur certains disques ont été fait par des sites spécialisés. Les retrouver et rajouter à votre l'article donnerait une idée bien plus concrète qu'un simple "pertes de performances" qui ne veut rien dire pour moi ... Question: le PCIe comporte-t-il aussi une interface sata, car si cela n'est pas le cas les SSD du derniers macbook air seraient donc aussi touché par le probleme de ne pas pouvoir être "trimer" ???

avatar FreddyF 14/08/2013 - 14:00

J'avais pris un SSD crucial et d'après Crucial il dispose d'un garbage collector intégré qui rend inutile la commande TRIM. Qu'en pensez-vous ?

avatar calotype 14/08/2013 - 14:04

@ stefhan il me semble de ce que j'ai compris jusqu'ici c'est qu'apple gagne de l'argent surtout sur le matériel plutot que le soft, ils font une bonne marge sur tout ce qui est disque et RAM . Du coup si le trim marchait pour tout disques SSD et temps que certains mac reste "upgradable" alors autant prendre l'entrée de gamme que l'on paie moins cher et dans laquelle on peut rajouter un supper gros SSD pour 30à 50 % de moins que ce que facture apple pour la même capacité, ce qui peut faire de sacrées économie. Même si cela se contourne, c'est toujours un petit frein de la part d'apple.

avatar nifex 14/08/2013 - 14:09

@FreddyF : C'est fort possible car j'ai 2 crucial m4 512 Go depuis 2 ans (un dans mon MBP et l'autre dans un boitier externe thunderbolt) et je n'ai eu pratiquement aucun ralentissement malgré une utilisation quotidienne intensive... J'avais installé trimenabler mais ca m'avait crée plein de problème qui m'ont obligé à faire une réinstallation complète du système, depuis je vie très bien sans le trim :D

avatar pacou 14/08/2013 - 14:13

@daxr1der Deuxième piège a troll posé : Samsung a besoin d'Apple pour deux raisons : - pour vendre son matériel - pour trouver l'inspiration

avatar hellric 14/08/2013 - 14:16

Et dans les iPhone / iPads ? Trip est-il aussi activé ?

avatar Shralldam 14/08/2013 - 14:59

@eseldorm Il y a des paires de baffes qui se perdent.

avatar typhlo2007 14/08/2013 - 15:17

Quelqu'un connaîtrait-il la durée de vie moyenne d'un SSD une fois le TRIM activé ? Avons-nous le recul nécessaire pour enfin s'y fier ?

avatar poulpe63 14/08/2013 - 15:31

@pacou : tout à fait, d'ailleurs c'est pour ça que Samsung et Apple sont interchangeables ! ;p

avatar vincentbls 14/08/2013 - 16:20

Je n'ai jamais pu l'activer sur un MBP 17 2009 avec SSD Apple.

avatar i-stef 14/08/2013 - 16:25

Merci pour ces infos

avatar Anonyme (non vérifié) 14/08/2013 - 16:31

Et que donne un effacement complet du ssd via utilitaire de disque? est il remis à son état originel? est ce une solution pour retrouver les performances d'origine en écriture? y a t il sinon un utilitaire sur le marché faisant un "rattrapage trim" pour les utilisations qui ne peuvent l'utiliser (disque système en usb 2 ou 3)?

Pages