Dall’uscita di macOS Mojave un anno addietro, vari utenti Mac con dischi rigidi e configurazioni Fusion Drive (il sistema che combina una unità SSD con un disco rigido) lamentano un degrado delle prestazioni. La semplice navigazione tra le cartelle del Finder o la possibilità di ottenere la capacità complessiva di una cartella di grandi dimensioni, sembra richiedere più tempo di prima.
Mike Bombich, sviluppatore di Carbon Copy Cloner, ha condotto un’analisi e la sua conclusione è semplice: è colpa di APFS, il nuovo formato con il quale sono inizializzati per default i dischi di avvio quando si installa l’ultimo sistema operativo di Apple.
Il rallentamento riguarda in particolare l’indicizzazione ed è legato alla modalità con la quale APFS organizza i dati sui supporti di archiviazione. HFS+, il precedente filesystem di Apple, pre-alloca sul supporto uno spazio dedicato alla struttura del file-system (la sezione blu nel grafico che alleghiamo). Quando si aggiungono file, i dati vengono inseriti negli spazi bianchi disponibili del supporto (la sezione colorata di verde), e i metadati raggruppati nell’area blu. Al contrario, APFS “sparpaglia” i metadati memorizzandoli insieme ai file sul supporto di memorizzazione. Non è ovviamente un problema con le unità SSD che possono leggere sia il primo, sia l’ultimo blocco di memoria alla stessa velocità, ma tutto ciò può rappresentare un inconveniente con i tradizionali dischi rigidi. Durante le operazioni di indicizzazioni la “testina” di un disco rigido inizializzato come HFS+ deve semplicemente spostarsi nella sezione blu dedicata ai metadati; con APFS, invece, la testina deve spostarsi avanti e indietro alla ricerca dei punti blu sparsi sui cilindri del disco.
In base alle misurazioni fin qui effettuate, Bombich, spiega che la prima indicizzazione di un milione di file su un disco rigido è tre volte più lunga in APFS rispetto a HFS+. Man mano che si aggiungono e rimuovono file da un disco rigido, le prestazioni si riducono. Dopo 20 cicli (a ogni ciclo lo sviluppatore ha sostituito casualmente il 5% dei file), l’indicizzazione su APFS è da 15 a 20 volte più lenta, secondo la configurazione del file system. Abilitare la funzione di deframmentazione APFS (scarsamente documentata e disattivata per impostazione predefinita), non migliora la situazione.
Apple ha da tempo espressamente dichiarato che APFS è ottimizzato per l’archiviazione Flash/SSD utilizzata nei Mac recenti, ma che può essere usato anche nei sistemi precedenti con unità HDD (Hard Disk Drive) tradizionali e archivi esterni collegati direttamente. Bisognerebbe dunque evitare come la peste APFS sui tradizionali dischi rigidi? Non è così perché porta comunque dei vantaggi (condivisione dello spazio, istantanee, ridimensionamento rapido delle directory ed elementi fondamentali del file system migliorati), ma anche volendo con macOS Mojave e seguenti Apple non lascia la possibilità di decidere il filesystem da usare per il disco di avvio (la conversione è automatica passando al nuovo sistema operativo). Esiste la possibilità di forzare il sistema e impedire il passaggio ad APFS ma non è una possibilità documentata da Apple e non è chiaro se lasciare l’unità di avvio in HFS+ possa portare problemi. La Casa di Cupertino ha anche le sue colpe: continua inspiegabilmente a vendere Mac con tradizionali dischi rigidi, come ad esempio l’iMac base da 21,5″, ancora tutt’oggi venduto con un vetusto HDD.