Introduction
Si les SSD sont généralement très performants de base, ils nécessitent également des réglages spécifiques au niveau du système d’exploitation et du BIOS afin d’exploiter leur plein potentiel.
Nous verrons aujourd’hui comment maximiser leur précieux espace utile étant donné leur prix au Go. Nous testerons également quelques recommandations que l’on peut trouver sur Internet afin de distinguer ce qui peut bénéficier à un modèle spécifique de ce qui peut être appliqué de façon universelle.
Concrètement, on dénombre neuf optimisations courantes pour les SSD après l’installation de Windows 7 :
- Désactiver la restauration du système
- Désactiver l’indexation
- Désactiver le fichier d’échange
- Désactiver l’hibernation
- Désactiver le Prefetch
- Désactiver le cache en écriture
- Désactiver Superfetch et Windows Search
- Désactiver ClearPageFileAtShutdown et LargeSystemCache
- Ajuster les options d’alimentation
AHCI et TRIM
Lors de l’installation de l’OS, il faut vérifier dans le BIOS que le contrôleur SATA est bien en mode AHCI, lequel est indispensable pour bénéficier de la commande TRIM en natif.
- Cliquer sur le bouton Démarrer, sélectionner le Panneau de configuration
- Choisir Système puis Paramètres système avancés (ou bien basculer sur la vue par petites ou grandes icônes pour aller directement sur Gestionnaire de périphériques)
- Aller vers le Gestionnaire de périphériques
- De là, trouver l’entrée Contrôleurs IDE ATA/ATAPI et l’étendre pour vérifier la présence d’un contrôleur AHCI
- Si l’on en voit au moins un, le mode AHCI est bien activé
Dans le cas où l’OS a déjà été installé en mode IDE, le plus prudent est de passer par les étapes décrites sur le site de Microsoft (ou bien de laisser faire l’assistant) avant de redémarrer et de paramétrer le contrôleur en mode AHCI (sous réserve d’avoir une carte mère compatible).
Au-delà du TRIM, l’AHCI est indispensable parce qu’il donne accès au Native Command Queuing : les SSD sont si performants qu’ils ne donnent le meilleur d’eux-mêmes qu’à partir du moment où ils reçoivent de multiples requêtes en simultané (d’où le fait que l’on constate presque systématiquement de meilleures performances avec 32 commandes en file d’attente plutôt qu’une seule).
TRIM
Il faut ensuite s’assurer que la commande TRIM est bien active :
- Cliquer sur Démarrer, puis saisir cmd dans la zone Rechercher les programmes et fichiers
- Faire un clic droit sur cmd.exe et choisir Exécuter en tant qu’administrateur
- Rentrer la commande « fsutil behavior query DisableDeleteNotify » (sans les guillemets)
- Si DisableDeleteNotify = 0, le TRIM est actif au niveau de l’OS (sous réserve que le SSD le supporte donc)
La commande TRIM est propre au SATA ; elle permet d’informer l’OS des blocs présents sur le SSD qui peuvent être effacés parce qu’ils ne sont plus utilisés sans attendre un seuil d’intervention (les SSD sont capables d’écrire des blocs de 4 Ko mais ne peuvent effacer que par blocs de 128 Ko ou plus suivant les modèles). Le but est d’éviter un phénomène d’amplification d’écriture (« write amplification ») et de permettre au SSD d’effectuer un processus de « garbage collection » pour maintenir ses performances à un niveau optimal comme on l’avait vu en février dernier.
Restauration du système et indexation
1. Restauration du système
- Clic droit sur Ordinateur puis Propriétés
- Sélectionner Protection du système
- Cliquer sur le bouton Configurer puis choisir Désactiver la protection du système
Le but est ici d’éviter des opérations en écriture inutiles sur le SSD ainsi que de récupérer de l’espace (on verra quelle quantité plus loin). De plus, la restauration du système est susceptible de dégrader les performances d’un SSD dans le temps ainsi que l’efficacité du TRIM.
2. Indexation
- Aller sur Ordinateur
- Faire un clic droit sur le SSD et choisir Propriétés
- Décocher Autoriser l’indexation du contenu des fichiers de ce lecteur en plus des propriétés de fichier
- Une fenêtre est alors susceptible de s’ouvrir pour signaler des erreurs, ce dont il ne faut pas s’inquiéter. Cliquer sur Ignorer.
Pourquoi désactiver l’indexation ?
- Cette fonctionnalité a été pensée pour les disques durs de manière à optimiser le temps d’accès aux fichiers, ce qui est inutile pour les SSD sachant qu’ils ont un temps d’accès de 0,1 ms en moyenne.
- Eliminer des opérations en écriture superflues vers le SSD. Bien que l’impact soit minime, mieux vaut éviter d’user inutilement les puces de NAND Flash.
Fichier d’échange et hibernation
3. Fichier d’échange
- Clic droit sur Ordinateur, puis Propriétés
- Choisir Paramètres système avancés, cliquer sur Paramètres dans la rubrique Performances
- Sélectionner l’onglet Avancé puis cliquer sur Modifier dans la zone Mémoire virtuelle
- Décocher Gestion automatique du fichier d’échange pour les lecteurs
- Choisir Aucun fichier d’échange puis cliquer sur Définir
- Confirmer le choix et redémarrer pour appliquer les changements
Le fichier d’échange est un complément à la mémoire physique du système qui permet d’utiliser une portion d’un périphérique de stockage comme s’il s’agissait de RAM afin d’améliorer les temps d’accès des programmes actifs. Sa désactivation permet donc de gagner de l’espace, mais peut aussi entrainer des situations de pénurie en mémoire comme on l’avait vu en fin d’année dernière.
4. Désactivation de l’hibernation
- Cliquer sur Démarrer puis rentrer cmd dans la zone Rechercher les programmes et fichiers
- Faire un clic droit sur cmd.exe et choisir Exécuter en tant qu’administrateur
- Rentrer la commande « powercfg -h off » (sans les guillemets)
L’hibernation monopolise 2 Go et ne se justifie que pour les disques durs puisqu’il s’agit de permettre une reprise de session rapide sans redémarrage. Compte tenu du prix par Go des SSD ainsi que leurs débits, on a donc tout intérêt à la désactiver.
Prefetch et Superfetch
5. Prefetch et Superfetch :
- Cliquer sur Démarrer, puis saisir regedit dans la zone Rechercher les programmes et fichiers
- Une fois dans le registre, suivre l’arborescence HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSessionManagerMemoryManagementPrefetchParameters
- Clic droit sur EnablePrefetcher
- Clic droit, choisir Modifier… puis définir une valeur de 0 (1 ou 3 à l’origine) et valider
- Répéter ensuite l’opération avec EnableSuperfetch
- Redémarrer
Superfetch a été conçu pour mettre en cache les fichiers auxquels on accède régulièrement. Là encore, les performances des SSD sont telles que cette fonctionnalité n’a de sens que pour les disques durs.
Le Prefetch consiste à charger des pans entiers de fichiers programme dans la RAM ; sa désactivation permet non seulement de dégager de la mémoire système mais aussi de laisser le SSD fonctionner tel qu’il a été conçu pour.
6. Cache en écriture
Attention, cette manipulation est déconseillée pour les SSD Intel vu qu’elle fait baisser leurs performances. Nous conseillons vivement de vérifier les répercussions pour s’assurer de son effet positif.
- Clic droit sur Ordinateur, puis Propriétés
- Choisir Gestionnaire de périphériques
- Aller à Lecteurs de disques, étendre le menu
- Choisir le SSD, faire un clic droit puis sélectionner Propriétés
- Sur l’onglet Stratégies, décocher Activer le cache en écriture sur le périphérique
Le cache en écriture est une fonction de soutien dans la mesure où une portion de RAM collecte les commandes en écriture envoyées vers le cache et le disque dur avant que ce dernier ne soit en mesure de les traiter. Les SSD ne souffrant pas de ce goulet d’étranglement, son activation est superflue.
Superfetch, Windows Search, ClearPageFileAtShutdown & LargeSystemCache
7. Superfetch et Windows Search
- Maintenir la touche Windows (sur le clavier) enfoncée et appuyer sur « R »
- Rentrer services.msc puis valider
- Aller vers Superfetch, faire un double clic puis désactiver le démarrage et appuyer sur OK
- Descendre à Windows Search puis répéter l’opération
Windows Search crée un index de fichiers, dossiers et autres éléments spécifiques sur le périphérique de stockage. Cet index se situe dans le dossier masqué « C:ProgramDataMicrosoftSearch » et représente environ 10 % de la quantité totale des contenus indexés.
La recherche via Windows Search est rapide parce qu’une partie de l’index est chargé dans la RAM, or un SSD n’y gagne presque rien et peut même voir ses performances diminuer à cause de cette fonction.
8. ClearPageFileAtShutdown et LargeSystemCache
- Cliquer sur Démarrer, puis saisir regedit dans la zone Rechercher les programmes et fichiers
- Suivre l’arborescence HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSessionManagerMemory Management
- Clic droit sur ClearPageFileAtShutdown
- Clic droit, choisir Modifier… puis définir une valeur de 0 (1 à l’origine) et valider
- Répéter ensuite l’opération avec LargeSystemCache
- Redémarrer
ClearPageFileAtShutdown a pour effet de vider les données du cache en écriture à l’extinction pour éviter des opérations superflues. A partir du moment où l’on désactive le cache en écriture, il n’y a aucune raison de laisser cette option active.
Le LargeSystemCache indique au système l’importance du cache système à adopter et influe sur la fréquence à laquelle il envoie des commandes en écriture vers le périphérique de stockage. L’activation de cette option a pour effet de réduire la quantité de mémoire physique dédiée aux programmes et services.
Paramètres d’alimentation
9. Ajuster les options d’alimentation
- Cliquer sur le bouton Démarrer, sélectionner le Panneau de configuration
- Choisir Options d’alimentation puis Performances élevées
- Cliquer sur Modifier les paramètres du mode puis Modifier les paramètres d’alimentation avancés
- Dérouler le menu Disque dur jusqu’à Arrêter le disque dur après
- Déterminer une valeur de 0 (jamais)
- Valider le choix
L’idée ici est que la consommation des SSD est suffisamment négligeable en idle pour faire l’impasse sur une veille programmée, mais aussi et surtout parce que ce mode empêche le processus « Garbage Collection » de rester actif et peut donc tirer les performances du SSD vers le bas.
Configuration du test
Composants | |
---|---|
CPU | Intel Core i7-920, révision D0 (45 nm, 3,2 GHz, 8 Mo de cache L2) |
Carte mère (Socket 1366) | EVGA 132-BL-E758-TR Chipset Intel X58 + ICH10R BIOS 6.00 PG |
DRAM | 6 Go (3×2 Go) DDR3-1600 OCZ Platinum (OCZ3P1600LV6GK) |
Disque dur | Samsung Spinpoint F3 1 To (103UJ) – Firmware 1AJ10001 |
SSD 1 | Intel X25-M G2 80 Go (SSDSA2M080G2GC) – Firmware 2CV102M3 |
SSD 2 | OCZ Vertex 2 240 Go (P75HAVO6H3N8E278) – Firmware 1.29 |
Cartes graphiques | EVGA GTX 560 Ti SuperClocked (01G-P3-1563-AR) 1 Go de GDDR5 (SLI) |
Alimentation | Corsair CMPSU-850TX |
Benchmarks | |
Mesure des performances | CrystalMarkDisk 3.0 x64 |
PCMark Vantage 1.0.2.0 | |
Performances E/S | IOMeter 2008.08.18 |
Profil serveur fichiers | |
Profil serveur web | |
Profil base de données | |
Profil station de travail | |
Lecture séquentielle | |
Ecriture séquentielle | |
Lecture aléatoire de blocs 4 Ko | |
Ecriture aléatoire de blocs 4 Ko | |
Logiciels & pilotes | |
OS | Windows 7 Ultimate 64 bits |
Le données ont été réparties de manière très classique : le SSD accueille le système d’exploitation et les programmes tandis que les jeux, dossiers utilisateurs et autres fichiers sont sur le disque dur.
Windows 7 a été installé sur chacun des SSD après un effacement sécurisé et les tests ont tous été effectués à deux jours d’intervalle à partir de l’OS afin d’éviter le problème de ralentissement que l’on peut constater avec le SandForce 1200 : celui-ci peut délibérément limiter les débits lorsqu’il estime traiter un volume de données en écriture sur un laps de temps suffisamment contraignants pour réduire la durée de vie du SSD (plus de détails sur le forum américain d’OCZ). De plus, nous avons crée une partition de 74,4 Go sur le Vertex 2 pour le mettre à égalité avec l’Intel X25M-G2 ainsi qu’augmenter son espace dédié à l’over-provisioning.
CrystalDiskMark
Commençons par observer les performances en lecture et écriture à l’aide de CrystalDiskMark 3.0 X64 dans trois cas de figure : performances d’origine (après un effacement sécurisé), après avoir effectué les 4 premières optimisations et enfin avec toutes les optimisations.
Que ce soit sur le Vertex 2 ou le X25-M G2 les écarts sont minimes en lecture avec comme sans optimisation partielle ou totale.
Le bilan est nettement plus contrasté en écriture : une fois les 9 optimisations appliquées, le Vertex 2 gagne 20 Mo/sec sur les blocs de 4 Ko alors que l’X25-M G2 s’effondre sur l’ensemble des 4 tests. Dans son cas il faut donc être vigilant aux optimisations et tout particulièrement la désactivation du cache en écriture.
Capacité
CrystalDiskMark 3.0 X64 nous a donc permis de mettre en avant le fait que l’application des quatre premières optimisations n’influe que très peu les performances des SSD, par contre on peut faire un tout autre constat pour ce qui est de la capacité utilisable.
On gagne environ 10 Go avec le Vertex 2 comme l’X25-M G2.
IOMeter
En mode base de données, les SSD sont plus performants d’origine qu’après application des 9 optimisations. L’écart est toutefois assez faible pour le Vertex 2 alors que l’X25-M G2 voit quasiment ses performances divisées par deux.
Le SSD d’Intel se comporte de la même manière avec le profil serveur fichiers, tandis que le Vertex 2 est cette fois très légèrement plus performant après modifications.
Il n’y a qu’avec le mode serveur web que l’X25-M G2 se comporte mieux avec les optimisations, tandis que l’on constate l’inverse sur le Vertex 2. Quoi qu’il en soit, les écarts sont négligeables.
En profil station de travail, on retrouve des résultats très similaires à ceux observés en mode serveur fichiers : le SSD d’Intel perd environ 50 % de ses performances d’origine lorsqu’il est “optimisé”, tandis que le Vertex 2 connait une légère progression lorsqu’il y a 4 à 32 commandes dans la file d’attente.
Lecture/écriture séquentielle
Les résultats en lecture séquentielle sont proches de ce que l’on avait constaté en profil serveur web, ce qui est logique vu qu’il se résume à des opérations en lecture. L’X25-M G2 progresse donc après optimisation tandis que le Vertex 2 perd un peu de terrain.
En écriture, le SSD d’Intel est à nouveau en souffrance après modifications. Le Vertex 2 est quant à lui quasiment insensible au changement.
Lecture/écriture de fichiers 4 Ko
En lecture tout va bien pour l’X25-M G2 qui progresse après optimisation ; de son côté le Vertex 2 n’apprécie pas les changements exception faite du cas où la file d’attente contient 64 commandes.
On a vu pire, mais reste que le SSD d’Intel n’apprécie toujours pas plus les optimisations lorsqu’il s’agit d’opérations en écriture, alors que le Vertex 2 affiche quasiment le même niveau de performances dès lors que la file d’attente excède deux commandes.
PCMark Vantage
Le test dédié au chargement des programmes montre que les optimisations ont des répercussions négatives sur les deux SSD et surtout celui d’Intel, puisqu’il perd environ 60 % de ses performances d’origine.
Pour ce qui est du chargement des jeux, les écarts sont d’environ 10 Mo/s dans les deux cas : les modifications profitent au X25-M G2 et nuisent au Vertex 2.
En édition vidéo, le SSD d’Intel est à nouveau lourdement handicapé par les optimisations (-62 %) alors que le Vertex n’abandonne que 4 Mo/s.
Windows Defender et Windows Media Center sont d’autres exemples de baisse générale des performances après modifications.
L’ajout de musique dans Windows Media Player permet de voir le pire des cas de figure pour le SSD d’Intel : ce dernier perd quasiment les 2/3 de ses performances d’origine après optimisation.
L’importation d’images est donc le seul domaine avec le chargement des jeux dans lequel les 9 modifications réussissent au X25-M G2. Le Vertex 2 connait quant à lui une baisse négligeable.
Le test de démarrage ne permet malheureusement pas de finir sur un constat positif et l’on voit à nouveau les deux SSD perdre du terrain même si c’est surtout celui d’Intel qui souffre.
Importance du cache en écriture chez Intel
Parce que les recommandations que l’on peut lire à droite ou à gauche en matière de SSD sont très souvent à caractère général, on en oublierait presque qu’Intel déconseille la désactivation du cache en écriture sur ses SSD. Afin d’en avoir le cœur net, nous avons repris CrystalDiskMark 3.0 X64 pour répéter 4 tests suivant trois scénarios : performances d’origine (après un effacement sécurisé), avec toutes les modifications et enfin toutes les modifications sauf la désactivation du cache en écriture.
Le constat est clair : la désactivation du cache en écriture fait systématiquement baisser les performances du X25-M G2, parfois de façon dramatique (blocs de 4 Ko). A contrario, l’application des 8 autres optimisations permet d’avoir des performances supérieures ou égales à celles d’origine.
Conclusion
L’optimisation des performances d’un SSD via l’OS n’est donc pas à prendre à la légère : l’exemple le plus parlant est la désactivation du cache en écriture qui fait littéralement plonger les performances de l’Intel X25M-G2 dans la majorité des tests. Du côté du Vertex 2 les modifications n’entrainent pas de bouleversement majeur dans le sens positif ou négatif, ce qui pourrait remettre en question leur intérêt si l’on s’arrêtait là.
Le fait est que cette série d’optimisations permet notamment de gagner en capacité, ce qui peut être vital pour les SSD de 80 ou 64 Go. De ce point de vue, la désactivation de la restauration du système, de l’indexation, du fichier d’échange et de l’hibernation sont souvent sujet à débat du côté des performances mais indéniablement efficaces en termes de capacité.
Le fichier d’échange est incontestablement l’élément le plus controversé : il est vraiment nécessaire d’avoir une quantité de mémoire suffisante pour le désactiver. Nous avons vu dans un autre article que l’on est à l’abri de tout problème avec 12 Go de RAM y compris dans des cas extrêmes, mais nous sommes bien conscients que ceci nécessite un budget conséquent. On peut aussi s’assurer de ses propres besoins avec une estimation assez simple : la capacité totale de mémoire utilisée et majorée de 50 % ne doit pas excéder la capacité de RAM disponible. Si l’on a par exemple 6 Go de RAM et que l’on plafonne à 3,5 Go, on ajoute donc une majoration de 1,75 Go pour arriver à un usage maximum théorique de 5,25 Go. Le fichier d’échange peut alors être désactivé sans prise de risques. Une approche plus conservatrice consiste à tout simplement diminuer la taille de ce fichier ou encore de le déplacer vers un disque dur sachant qu’il y aura alors une répercussion potentiellement négative sur les performances.
Un autre argument qui plaide en faveur de ces modifications est l’élimination des opérations en écriture superflues, qui ont une incidence sur la durée de vie d’un SSD. Certes l’impact est anecdotique, mais il est tout de même appréciable.
Dans l’idéal, il faut donc voir au cas par cas quelles optimisations apporter sur chaque configuration. Windows 7 a beau être assez efficace pour gérer un SSD en natif, on n’est jamais mieux servi que par soi-même.