SSD : Activer le TRIM sur un Mac

Introduction

En règle générale, les SSD effectuent les écritures de données par pages de 4 Ko et des effacements par blocs de 512 Ko (128 pages de 4 Ko). Par conséquent, dès qu’il est nécessaire d’écraser des données, même lorsqu’il ne s’agit que de quelques octets, les SSD doivent successivement lire, effacer, modifier puis écrire un bloc entier, ce qui prend du temps et implique toutes les cellules de mémoire flash du bloc concerné.

C’est ici que la commande TRIM entre en jeu. Prise en charge par l’écrasante majorité des SSD modernes, celle-ci permet au système d’exploitation d’indiquer au disque quelles sont les pages de mémoire flash qui ne sont plus utilisées et peuvent donc être effacées. De cette manière, lorsque le SSD doit procéder à une écriture, il peut directement utiliser les pages de mémoire flash libres sans devoir les effacer au préalable, ce qui lui permet d’écrire plus rapidement et sur un nombre de cellules plus réduit, et par conséquent d’allonger sa durée de vie. Pour que la commande TRIM fonctionner, il ne suffit toutefois pas que le SSD la prenne en charge : cela doit également être le cas du contrôleur (obligatoirement AHCI) et du système d’exploitation. Ce dernier point n’est plus un problème à l’heure actuelle : Windows la gère dans toutes ses déclinaisons depuis sa version 7, Windows Server depuis sa version 2008 R2, le noyau Linux depuis la version 2.6.33 et Mac OS X depuis sa version 10.6.8.

Image 1 : SSD : Activer le TRIM sur un Mac

Par contre, si les PC acceptent tous les SSD compatibles avec TRIM, il n’en va pas de même des ordinateurs Apple. Sur ceux-ci, la commande ne fonctionne qu’avec les SSD vendus par Apple. Si vous avez acheté le vôtre séparément, elle ne sera pas prise en charge. Heureusement, il existe un logiciel gratuit nommé TRIM Enabler qui permet d’activer en un simple clic la commande TRIM sur les SSD non Apple. Désireux de savoir si celui-ci tenait bien ses promesses, nous avons monté un Samsung 840 Pro dans notre MacBook Pro puis avons mesuré les performances de la configuration.

SSD : Samsung 840 Pro

Nous avons choisi le Samsung 840 Pro pour nos tests. Son contrôleur est un Samsung S4LN021X01-8030 NZWD1 qui fait appel à l’interface SATA 6 Gbit/s et contient un processeur ARM triple-core ainsi que 256 ou 512 Mo de cache DDR3 selon le modèle. Notez que Samsung propose également un 840 non Pro contenant de la mémoire flash TLC (triple-level cell) ; la version Pro utilise quant à elle de la flash NAND MLC (multi-level cell) gravée en 21 nm, plus simple à gérer pour le contrôleur étant donné que chaque cellule ne peut contenir que deux bits au lieu de trois. En pratique, cela se traduit par des performances plus élevées que sur le modèle non Pro.

Image 2 : SSD : Activer le TRIM sur un Mac

D’après Samsung, les 840 Pro 256 Go et 512 Go doivent afficher des débits de 540 Mo/s en lecture et 520 Mo/s en écriture ainsi que des performances en E/S de l’ordre de 100 000 IOPS. Le modèle 128 Go est un peu plus lent, à 530 Mo/s en lecture, 390 Mo/s en écriture et 97 000 IOPS.

Spécifications techniques du Samsung 840 Pro

FabricantSamsung
Modèle840 Pro
RéférenceMZ-7PD256
Format2,5″ (7 mm)
Capacité256 Go
Prix200 €
ContrôleurMDX
Type de mémoire flash
Toggle-NAND MLC 21 nm
Débit en lecture/écriture séquentielle
540 Mo/s / 520 Mo/s
Débit en lecture/écriture aléatoire (4 Ko, QD=32)
100 000 / 90 000
Surprovisionnement7 %
Cache512 Mo
InterfaceSATA 6 Gbit/s
AccessoiresLogiciel Samsung Magician
Garantie5 ans

Image 3 : SSD : Activer le TRIM sur un Mac

TRIM Enabler

La fonction TRIM est généralement désactivée sur les SSD tiers (c’est-à-dire non vendus par Apple) installés dans les Mac. Il est toutefois possible de l’activer sur les SSD compatibles à l’aide du logiciel gratuit TRIM Enabler. Cet utilitaire est on ne peut plus simple : il comporte en tout et pour tout un unique bouton. Faites-le coulisser et la fonctionnalité est enclenchée. Seul petit bémol : il convient de répéter l’opération après chaque mise à jour du système.Image 4 : SSD : Activer le TRIM sur un Mac

Avant de pouvoir utiliser TRIM Enabler, il faut toutefois activer dans les paramètres système d’OS X la possibilité d’installer des logiciels depuis n’importe où et non uniquement depuis le Mac App Store.

Image 5 : SSD : Activer le TRIM sur un Mac

Configuration et protocole de test

Machine de test : Apple MacBook Pro

Nous utilisons un MacBook Pro pour les tests. Plus spécifiquement, il s’agit de la plus petite version du MacBook Pro de onzième génération, lancé à la mi-2012 et également connu sous le nom de MacBookPro9,2. Celui-ci était à l’origine livré avec un disque dur de 500 Go que nous avons retiré et placé dans un boîtier externe connecté en USB 3.0. Nous l’avons ensuite remplacé par le Samsung 840 Pro, mais avons continué à faire démarrer le système depuis le disque dur d’origine.

Image 6 : SSD : Activer le TRIM sur un Mac

Apple MacBook Pro
ModèleMacBook Pro
Référence
MacBookPro9,2
ProcesseurIntel Core i5-3210M
Fréquence du processeur
2,5 GHz
Nombre de cores
2
Cache L2 (par core)
256 Ko
Cache L3
3 Mo
RAM4 Go
Disque dur système
Seagate ST500LM012 (500 Go, 5400 tr/min)

Protocole de test

Nous soumettons le Samsung 840 Pro à deux séries de test. Dans un premier temps, nous procédons à un effacement sécurisé, une opération qui indique au contrôleur d’effacer tous les blocs du SSD. Cela le remet dans l’état où il se trouvait à sa sortie d’usine et maximise son potentiel de performances. Nous effectuons ensuite la première série de tests, qui consiste à lancer AJA System Test et DiskTester à deux reprises sans TRIM. Cela nous permet de comparer les performances du SSD à l’état neuf et après une longue période d’utilisation.

Pour la deuxième série de tests, nous exécutons un nouvel effacement sécurisé du Samsung 840 Pro puis relançons les mêmes benchmarks, cette fois avec la fonction TRIM activée. Cela nous donne donc quatre résultats au total :

  • TRIM désactivé, première passe (flambant neuf)
  • TRIM désactivé, deuxième passe (usagé)
  • TRIM activé, première passe (flambant neuf)
  • TRIM activé, deuxième passe (usagé)

Voici le détail de chaque série de tests :

  • Deuxième série de tests uniquement : installation de TRIM Enabler et redémarrage du MacBook Pro
  • Lancement du benchmark AJA System Test (taille du fichier de test : 16 Go)
  • Lancement du benchmark DiskTester (tailles des blocs : 4 Ko et 8 Ko)
  • DiskTester remplit l’intégralité du SSD de données à 3 reprises afin de simuler une longue période d’utilisation
  • Remplissage de l’intégralité du SSD de données vidéo
  • Pause de 30 minutes
  • Lancement du benchmark AJA System Test (taille du fichier de test : 16 Go)
  • Lancement du benchmark DiskTester (tailles des blocs : 4 Ko et 8 Ko)

Image 7 : SSD : Activer le TRIM sur un Mac


AJA System Test et DiskTester

AJA System Test et DiskTester montrent tous deux que le Samsung 840 Pro fonctionne légèrement plus rapidement dans notre MacBook Pro lorsque la fonction TRIM est activée que lorsqu’elle ne l’est pas. L’écart est néanmoins minime : selon DiskTester, à l’état neuf, le SSD de Samsung affiche un débit en lecture séquentielle (blocs de 4 Ko) de 51,1 Mo/s sans TRIM et 51,5 Mo/s avec TRIM. Les résultats d’AJA System Test et des autres passes sont similaires. On note toutefois avec intérêt que la fonction TRIM est plus intéressante, en termes de performances, lorsque le SSD est usagé que lorsqu’il est neuf. L’effet est particulièrement prononcé dans le benchmark de lecture séquentielle d’AJA System Test, où l’activation de la commande permet de faire passer le débit de 466,7 Mo/s à 512,1 Mo/s.

AJA System Test

Débit en lecture (Mo/s)

Image 8 : SSD : Activer le TRIM sur un Mac

Débit en écriture (Mo/s)

Image 9 : SSD : Activer le TRIM sur un Mac

Débit en lecture (blocs de 4 Ko, Mo/s)

Image 10 : SSD : Activer le TRIM sur un Mac

Débit en lecture (blocs de 8 Ko, Mo/s)

Image 11 : SSD : Activer le TRIM sur un Mac

Conclusion

Image 12 : SSD : Activer le TRIM sur un MacÀ tous ceux qui se demandaient s’il était utile d’activer la fonction TRIM sur les SSD tiers installés dans les Mac, la réponse est oui. Si vous vous attendiez à une hausse spectaculaire des performances, par contre, vous allez être quelque peu déçus. Certes, les benchmarks AJA System Test et DiskTester ne suffisent sans doute pas à former une analyse approfondie des gains de performances apportés par la commande, mais ils nous en donnent une idée générale : selon eux, le TRIM rend les SSD légèrement plus véloces. Les possesseurs de SSD non vendus par Apple auront donc tout intérêt à installer TRIM Enabler et à l’activer ; il ne faut juste pas s’attendre à ce que l’opération fasse exploser les performances du jour au lendemain.

Au-delà de la question des performances, il existe une autre raison pour activer la fonction TRIM. Sans elle, seul le système d’exploitation sait quels sont les fichiers supprimés. Le contrôleur du SSD n’en est pas informé et continue à traiter les données effacées comme si elles étaient encore nécessaires. Cela signifie que, au bout d’un certain temps (relativement court), le SSD sera totalement rempli et le contrôleur devra se tourner vers l’espace de surprovisionnement. Celui-ci ne représente en général que 7 à 12 % sur les SSD actuels et cet espace comprend le firmware et certaines fonctionnalités telles que le remplacement des blocs défectueux.

Il est essentiel de rappeler que la fonction TRIM peut poser problème avec les SSD équipés d’un contrôleur SandForce (contrairement, par exemple, au SSD Samsung que nous avons employé pour ce test). Les contrôleurs SandForce enregistrent en effet les données différemment des autres : au lieu de les écrire directement sur la mémoire flash NAND, ils les font d’abord passer par une phase de compression. La commande TRIM pourrait donc ne pas fonctionner, mais bien plus grave encore, elle pourrait théoriquement engendrer un risque de pertes de données. Notons que l’incompatibilité des contrôleurs SandForce avec la fonction TRIM n’est pas limitée aux Mac ; elle s’applique également aux systèmes Windows.