APFS freine considérablement l'indexation sur les disques durs

Stéphane Moussie |

Depuis la sortie de macOS Mojave il y a un an, des utilisateurs de Mac équipés de disques durs (Fusion Drive compris) se plaignent d'une dégradation des performances. Parcourir les dossiers du Finder ou obtenir la taille d'un gros dossier est encore moins rapide qu'avant.

Constatant lui aussi un ralentissement, Mike Bombich, le créateur de Carbon Copy Cloner, a mené une analyse. Sa conclusion est très claire : c'est APFS, le nouveau système de fichiers qui est imposé lors de la mise à jour vers Mojave, qui est responsable du freinage.

Image Mike Bombich

La régression touche spécifiquement l'indexation et est liée à la façon dont APFS organise l'ensemble des données sur le support de stockage. HFS+, l'ancien système de fichiers, préallouait sur le support un espace pour la structure du système de fichiers (schématisé par la section bleue sur le graphique ci-dessus). Lorsque l'on ajoutait des fichiers, leurs données s'inséraient dans les espaces libres du support (section verte), tandis que leurs métadonnées (noms des fichiers, hiérarchie des dossiers…) étaient groupées ensemble dans la partie bleue.

Au contraire, APFS « éclate » les métadonnées en les stockant aux côtés des données des fichiers. Avec le nouveau système, les métadonnées sont donc éparpillées sur le support de stockage. Ce n'est pas un problème pour les SSD qui peuvent lire indifféremment le premier et le dernier bloc de mémoire, mais c'en est un pour les disques durs.

Lors d'une opération d'indexation sous HFS+, la tête du disque dur avait seulement à se déplacer dans la section bleue dévolue aux métadonnées. Sous APFS, la tête du disque dur doit faire des aller-retour sur tout le plateau à la recherche des petits points bleus disséminés.

Selon les mesures de Mike Bombich, la première indexation d'un million de fichiers sur un disque dur est trois fois plus longue sous APFS par rapport à HFS+ (vous pouvez voir combien vous avez de fichiers en cliquant sur le bouton « Infos » de l'Utilitaire de disque — pour vous donner une idée, mes 450 Go de données sont constitués de 1,4 million de fichiers).

Plus on ajoute et supprime de fichiers à son disque dur, plus les performances se dégradent. Après 20 cycles (à chaque cycle le développeur remplaçait aléatoirement 5 % des fichiers), l'indexation est 15 à 20 fois plus lentes sous APFS, selon la configuration du système de fichiers.

Image Mike Bombich

Activer la fonction de défragmentation d'APFS, qui est peu documentée et désactivée par défaut, n'améliore pas vraiment les choses : l'indexation est accélérée à la marge seulement et on obtient le même résultat en conservant les instantanés.

Quand Apple dit qu'APFS est « optimisé » pour les SSD, elle ne ment pas : les disques durs n'ont pas été pris en compte pour cet aspect du système de fichiers. On se souvient que la migration vers APFS s'est faite en deux temps : d'abord les SSD avec High Sierra, puis les disques durs et Fusion Drive avec Mojave (à la suite d'une tentative avortée lors de la bêta de High Sierra). Cette année supplémentaire n'aura donc pas permis d'améliorer l'indexation sur les disques durs.

Le ralentissement de cette opération a des conséquences visibles pour les utilisateurs. Cela ne freine pas la copie des fichiers, mais cela rend la navigation dans l'arborescence du Finder plus lente, tout comme l'obtention des informations sur le poids d'un dossier. APFS ralentit également le démarrage, qui peut passer de quelques dizaines de secondes à plusieurs minutes.

Alors faut-il éviter APFS quand on a un disque dur ou un Fusion Drive ? Mike Bombich répond « non » malgré tout, car le nouveau système de fichiers apporte — heureusement — des bénéfices (instantanés, espace partagé…). De toute façon, Apple ne laisse pas le choix, la conversion est automatique lors du passage à Mojave. On trouve des tutoriels pour conserver HFS+ sous Mojave, mais puisqu'il ne s'agit pas d'un cas de figure prévu par Apple, on s'expose potentiellement à des problèmes.

Cette inadéquation d'APFS aux disques durs rend d'autant plus scandaleuse la commercialisation actuelle de l'iMac 21,5" équipé d'un tel support de stockage.

avatar GoKart | 

.... et sinon avec tout ça, ça sert à quoi *concrètement* APFS ?
A part tout compliquer, je n'ai vu aucune application pratique à ce nouveau système de fichiers...

avatar Un Type Vrai | 

Pour avoir eu le débat avec des experts (notamment des contributeurs à ZFS)
Voici ce que j'ai appris (qui est admi par ceux qui connaissent le sujet).
* Pour le commun des mortels sur mac, HFS+ est meilleur que APFS, c'est un des FS qui a le plus évolué et il aurait pu prendre en charge les avantages de APFS.
* Pour le commun des mortel sur iPhone (SSD, pas de parcours de fichiers, sandbox, sauvegardes sur cloud ...) AFPS a des avantages sur HFS+.

Donc Apple a eu besoin de APFS pour ses iMachins et l'a imposé sur mac sans que ce soit un vrai bénéfice.
mais attention, Apple a l'habitude d'introduire une nouvelle technos plusieurs années avant leur utilisation. Donc l'avenir nous en dira plus.

Et on m'a donné l'exemple de la touche sur le clavier pour démarrer et éteindre le mac. Marrant d'avoir une touche pendant des années inactive... :D

avatar marc_os | 

@GoKart

Exemples :
- Si tu as besoin de deux partitions. Avant, leur taille était définie « en dur ». Par ex 50% du total chacune. En APFS, rien de tel. Les deux partitions peuvent piocher dans le pot commun. Le premier qui demande est servi. Ainsi on peut se retrouver au bout d’un moment avec une partition qui occupe 60% du total, l’autre 30% et avec 10% de livres qui seront alloués au premier qui en aura besoin.
- 2nd exemple. Tu dupliques un fichier. En HFS, au final tu doubles l’espace disque occupé par le fichier. Il y a duplication physique des données qui se retrouvent à l’identique deux fois sur le disque. En APFS, pas de duplication des données . Chaque fichier partage les données physiques tant qu’il n’y a pas de modification. Et si tu modifies 10% e l’un des deux, alors en gros seulement ces 10% auront un nouvel espace de stockage alloué. Ce qui sur un système entier peut faire économiser pas mal de place. En résumé,l’APFS optimise l’occupation physique et évitant de créer des doublons.

avatar nicopulse | 

Et comme Apple à volontairement mis à jour des millions de mac utilisant des disques dur, c'est de l'obsolescence programmée... et c'est une pratique illégale. Si j'étais propriétaire de mac à DD, j'en aurai immédiatement demandé le remboursement.

avatar Voiz | 

Ok, voilà un article clair et documenté.
Maintenant on fait comment quand on a des To de données sur des disques externes pour ne pas risquer de les coir cramer prématurément les uns après les autres ? Bien sûr j’ai des sauvegardes (physiques + cloud) mais c’est pas une raison pour multiplier le risque de claquer des centaines d’euros et des heures de boulot.
Monsieur Bombich ?
Quelqu’un pour une solution viable professionnellement ?

avatar SyMich | 

Commencez par éviter de convertir en APFS vos disques durs à plateaux externes. (Ça nécessite une intervention manuelle pour le faire donc si vous n'avez pas fait vous-même cette conversion, vos disques externes sont toujours en HFS+ et les problèmes relevés par M Bombich ne les concernent pas)

avatar Un Type Vrai | 

On passe sous Linux.

avatar fredsoo | 

@Un Type Vrai

C’est fait ✅😃

avatar marc_os | 

@Voiz

Vos To de données sur disques externes sont elles sur des disques en APFS ?
Si oui, reformatez en HFS+ si les inconvénients ne sont pas compensés par l’optimisation du stockage.
Sinon vous n’êtes pas concerné par le problème.

avatar switch (non vérifié) | 

APFS est encore bien buggé, et Apple ne cesse de le faire progresser.
J'ai du des choses vraiment étranges avec APFS, et pas qu'avec les disques durs à plateau.
C'est pourquoi je reste sagement avec Sierra en HFS+, car APFS ne m'apporte rien de plus au quotidien, et que j'ai passé nombre de Macs sous High Sierra en HFS+ pour éviter les pbs.
Il est plus que temps qu'Apple en finisse avec ces infâmes disques durs et autre couillonnade de FusionDrive et passe tout en SSD, car les prix de ces derniers sont à présent "abordables".

avatar jerome74 | 

L'article cité parle d' "énumeration", et non d' "indexation". Il s'agit d'afficher le contenu d'un gros dossier dans le Finder (ou de calculer sa taille), et ça n'a donc rien à voir avec l'indexation de Spotlight qui, en plus d'accéder aux metadata, doit de toutes façons accéder au contenu du fichier également.

avatar toptophe | 

Question : ça concerne aussi les disques externes ? Parce que, pour le moment, je suis sous Sierra avec un MBA mais un disque réseau WD My Cloud. si je passe à Mojave, il va me demander de passer mon WD en APFS ?? Merci pour vos précisions et bon vendredi 13 ;)

avatar JPOremia | 

Sinon pour revenir en arrière Paragon a créé cet outil:https://www.paragon-software.com/home/apfs-hfs-converter/. Je ne l'ai jamais utilisé. Ce serait peut-être une solution pour retrouver HFS+. Si d'autres l'ont utilisé, quels sont les retours?

avatar Bigdidou | 

@JPOremia

Attention aux outils de Paragon...
Je ne compte plus les emmerdes avec leurs utilitaires que j’ai,fini par abandonner complètement.
De toute façon, il faut faire une sauvegarde avant de se lancer.
A mon avis, on a plus vite fait de réformateur son HDD puis de réinjecter la sauvegarde.

avatar marc_os | 

Embrouille supplémentaire avec les disques Fusion Drive :
L’OS présente le volume comme étant un SSD !
Cf. Utilitaire de disque : Sélectionner le volume et afficher les informations.
Du coup, le logiciel sur lequel je travaille qui applique des stratégies différentes selon qu’il lit un SSD, un DD ou un disque optique se plante en croyant avoir affaire à un SSD !
Alors qu’en vérité les limitations en terme d’accès aléatoire aux fichiers et données d’un FD semblent être plutôt entre le DD et le disque optique !
Du coup, on a des clients qui se plaignent de performances dégradées et je vais devoir revoir ma copie...

avatar QuickPwn | 

iMac 5k fusion drive de 3to avec Mojave et aucun soucis au quotidien avec, disque dur externe également en apfs et aucun soucis non plus.
SSD également en apfs et aucun soucis non plus...

avatar flechebleu | 

bonjour, quelqu'un saurait comment créer un fusion drive sous catalina avec un disque ssd externe.
j'ai un iMac 4k 2019 de 1To.
merci

avatar pocketalex | 

@flechebleu

un fusion drive avec un disque externe ??? c'est LE truc à pas faire, et il me semble que de toutes façons ce n'est pas possible, et pour cause

fusionner un disque système avec OS et data répartis un peu sur les deux, et avec la possibilité qu'un des deux disques soit débranchés ... réfléchis y, c'est le meilleur moyen de tout perdre à tout instant

Si tu as un HDD dans ton iMac, ni fusion, ni SSD, juste HDD, alors il peut être intelligent d'utiliser un SSD externe avec MacOS installé dessus. Idéalement un SSD nVme en TB3 (type Samsung X5) mais au pire du pire un SSD "classique" en SATA relié en USB mais tu n'auras pas la même réactivité, et te servir du HDD interne pour stocker des datas

avatar flechebleu | 

merci pour ta réponse @pocketalex.en fait, j'avais fait un fusion drive avec SSD externe sur un iMac late 2013 sous high sierra et ça marchait parfaitement. alors oui si on débranche le SSD, iMac sous tension ça craint mais j'ai Time machine comme sauvegarde.
en gros, est-ce possible de le faire ce fusion drive avec catalina avec SSD externe ? ou sinon quelle méthode pour installer macOS sur le SSD externe ?
faut-il tout formater ? et formater en AFPS ou HFS+ ?
merci

avatar pocketalex | 

@flechebleu

franchement LA solution la plus simple, mais aussi la plus efficace, n'est elle pas d'installer MacOS sur ton SSD externe ?

Si tu veux installer Mojave ou Catalina c'est tout de même préférable (si ce n'est indispensable) de le passer en AFPS.
Ensuite redémarrer avec ALT, aller dans les options de récupération, et utiliser l'installateur MacOS pour l'installer sur le SSD externe, j'ai pas fait ça sur un Mac récent de 2 ans, mais je l'ai fait xxx fois sur des Macs même pas trop vieux.

Enfin, je ne sais pas si tu as ton SSD ou si tu prévois de l'acheter, mais pour cet usage un SSD nVme en TB3 est plus que recommandé, si tu veux une VRAIE réactivité digne de MacOS et de l'iMac 2019. Un SSD SATA en USB3 sera à peine plus rapide que ton HDD interne

avatar flechebleu | 

merci pour tes infos @pocketalex. dernière question (j'espère). est ce qu'il faut tout formater pour l'installation de l'OS sur un disque externe ? du genre un clean install ?

avatar pocketalex | 

@flechebleu

si c'est pour mettre Catalina, autant que ce soit un APFS, donc formater.

si c'est un HFS+ et que tu veux rester à Mojave, en théorie, pas besoin. En pratique, ça fait jamais de mal.

Pages

CONNEXION UTILISATEUR