Le point sur le TRIM avec macOS en 2024, pour prendre soin de vos SSD

Pierre Dandumont |

Il y a quelques années, la prise en charge de la commande TRIM dans les SSD était un problème très courant, surtout si vous aviez un Mac. Pendant de longues années, Apple a en effet réservé la commande à ses propres SSD, et même actuellement elle n'est pas active dans tous les cas. En 2024, c'est un sujet qui a parfois disparu des radars, alors que le TRIM a de l'importance. Mais est-ce réellement un souci ?

Dans la majorité des cas, votre SSD devrait gérer la commande TRIM et vous verrez heureusement ceci dans les informations du système. Image MacGeneration.

Qu’est-ce que le TRIM ?

Pour commencer, il faut expliquer ce qu'est le TRIM, donc voici un résumé. Dans une puce mémoire flash NAND classique comme celle qu’on trouve dans les SSD, il n'est pas possible d'aller lire ou écrire un bit particulier. Les puces sont agencées en blocs qui sont divisés en pages. Quand votre OS doit écrire un fichier, il envoie la demande au contrôleur du SSD, qui doit travailler toujours avec un bloc d’une capacité de l'ordre du mégaoctet sur un SSD moderne. Il va écrire l’information dans un bloc libre, ou plus exactement un bloc dont les données ne sont plus utiles. Dans le cas d'une modification de fichiers, l'idée est la même avec une lecture supplémentaire : le SSD va récupérer le bloc à modifier, appliquer le changement et écrire un nouveau bloc, généralement à un autre endroit. L'ancien bloc « disparaît » pour le système de fichiers qui le considère alors comme effacé. Ce n’est toutefois pas le cas pour le contrôleur du SSD, puisqu’il contient toujours des informations.

Cette étape est importante, car elle permet d'uniformiser l'usure du SSD. Chaque cellule d'une mémoire flash NAND a une durée de vie définie et il est préférable d’écrire en priorité sur les cellules libres les moins usées pour ne pas réduire la durée de vie de quelques éléments. Vous pourriez évidemment vous demander pourquoi les blocs ne sont pas systématiquement mis à zéro, et la réponse est simple : pour éviter des écritures inutiles. Il est plus efficace d'ajouter un bit qui indique que la zone est vide et la commande TRIM se charge du reste.

Les puces de mémoire NAND sont de petites choses fragiles qu'il faut chouchouter avec des commandes spécifiques. Image MacGeneration.

La commande TRIM permet au système d’exploitation d’indiquer au SSD quels blocs sont inutiles. Sans cette commande, nous l'avions expliqué dans un ancien article, un problème se pose rapidement : du point de vue du contrôleur du SSD, toutes les cellules contiennent des données. En effet, il n'y a pas de correspondance « physique » entre l'organisation des informations choisie par le système d'exploitation (le système de fichiers) et celle gérée par le contrôleur. Il ne comprend pas l'APFS, le HFS+, le NTFS (etc.) et ne peut pas deviner qu'un bloc ne comporte plus d'informations utiles.

SSD : qu

SSD : qu'est-ce que le TRIM et comment l'activer ?

Un problème d'usure, mais aussi de performances, parfois oublié

Tags
avatar cmarliere | 

J’ai bien lu votre article et après avoir tenté de vérifier dans les informations système pour mon MacBook Air M2, impossible de trouver l’info…

avatar melaure | 

Trim enabler a toujours parfaitement fonctionné sur mes nombreux anciens Macs, je suis passé au full SSD dès 2013.

avatar volodia68 | 

J’ai trimé comme un chien pour me payer des Mac qui ne triment bien que quand la Pomme le veut bien…

avatar ArchiArchibald | 

À chaque fois que j’ouvre un article signé Pierre Dandumont je pense instantanément au sketch des Inconnus « Les Langages hermétiques ».

Cela dit, bravo pour autant de technicité. Je rage simplement de ne pas arriver à comprendre ne serait-ce que l’introduction de l’article, tant les notions évoquées me sont lointaines.

Peut-être faudrait-il plus de pédagogie afin de rendre ces articles lisibles par les néophytes ? D’abord commencer par le concret, le réel, avant d’attaquer la technique ?

avatar ckone35 | 

Tu as raison, l’article est très technique mais il faut le prendre comme une référence. Il faut pas hésiter à le bookmarker et y revenir quand on en a besoin, quittes à demander à une IA de le résumer / expliquer.

avatar brunnno | 

@ArchiArchibald

Entièrement d’accord !
Pas tout compris non plus 🧐

avatar Stpaul | 

Avec SOMONA, j'ai ceci après avoir saisi la ligne de commande, aucune, comme sans la commande, référence au TRIM :

SSD Samsung :

Disponible : 1,51 To (1.507.550.478.336 octets)
Capacité : 2 To (2.000.189.177.856 octets)
Point de montage : /Volumes/SSD Samsung
Système de fichiers : APFS
Inscriptible : Oui
Ignorer les autorisations : Non
Nom BSD : disk9s1
UUID du volume : 97E67B46-6EBF-4869-80FF-CD29A43D3026
Lecteur physique :
Nom du périphérique : PSSD T7
Nom du support : AppleAPFSMedia
Type de média : SSD
Protocole : USB
Interne : Non
Type de carte de partition : Inconnu

Ai-je raté quelque chose ? De plus, après re démarrage, le terminal indique entre autre : The default interactive shell is now zsh.
To update your account to use zsh, please run `chsh -s /bin/zsh`.
Etant néophyte j'ai consulté le lien du support Apple, la commande à changé.

avatar DahuLArthropode | 

@Stpaul

"Ai-je raté quelque chose ?"

Peut-être ceci?

« Si vous n'avez aucune référence au mot trim dans les résultats ou une réponse (no trims), votre adaptateur USB n'accepte sans doute pas la technologie. »

avatar Stpaul | 

T7 Connecté en direct sur un Mac Studio M1.

avatar mat16963 | 

C'est quand même incroyable ça et bien symptomatique de l'Apple d'aujourd'hui, qui a sérieusement perdu en simplicité et qualité qui ont fait sa renommée... Alors oui, sous Jobs le Trim était réservée aux SSD Apple, ce qui est un peu mesquin (quoique... pouvait se comprendre dans le contexte de l'époque où la commande pouvait créer plus de problèmes qu'autre chose avec certains modèles...). Aujourd'hui, elle est un peu plus ouverte, mais les choses sont faites à moitié... Pourquoi la prise en charge du TRIM apparaît elle dans les Informations Système pour un ssd connecté en Thunderbolt mais pas pour un SSD connecté en USB ? Probablement car l'activation du TRIM en USB avec Monterey a été faite à la va-vite sans prendre le temps de mettre à jour les Informations Système... c'est assez consternant ce fonctionnement interne d'Apple indigne d'une telle société (entre les bugs à répétition, le manque de contrôle qualité, le manque de réactivité et de prise en compte des Feedbacks, le manque de communication sur des problèmes aussi graves que celui des photos qui réapparaissent 10 ans après, .... ça commence à faire beaucoup !)...

Ah et j'ajouterai le manque de communication d'Apple sur ce sujet également, puisqu'il n'y a à ma connaissance aucune documentation officielle sur la prise en charge du TRIM en USB...

avatar victor03 | 

Une question existe t’il une commande équivalente à fstrim sous macOS ?

avatar Ingmar97432 | 

Merci Pierre, ça me fait penser à vérifier la prise en charge trim de mon iodd mini usb/sata dont j’ai upgradé le ssd 2242 de 256g à 2to..

avatar Lameth | 

Avec un vieux Mac sous OpenCore Legacy, ça ne pose pas de problème de l’activer non plus ?
Autre question, est ce que je peux l’activer n’importe quand ? Mon SSD est déjà rempli à 75%.

CONNEXION UTILISATEUR