Il partizionamento dei dischi rigidi in una partizione più piccola rispetto alle dimensioni effettive rende le prestazioni più obiettive?


21

Nel 2016 lavoravo su un HDD da 80 GB e in realtà mi sentivo scattante per la maggior parte del tempo. E dopo aver acquistato un nuovo laptop con HDD da 1 TB e una RAM molto più grande e una CPU più veloce, l'HDD in realtà sembrava molto più lento del mio vecchio sebbene fosse un HDD di nuova generazione (non sono sicuro della velocità RPM).

Quindi ultimamente ho deciso di partizionare il mio HDD da 1 TB in partizione primaria da 80 GB e lasciare il resto dello spazio non allocato dal momento che non ho davvero bisogno di nulla oltre il sistema operativo e un browser web principale.

Dopo averlo fatto, in realtà sembrava molto più scattante di prima per qualche motivo. Il file manager funziona così rapidamente e le prestazioni complessive dell'HDD sono decisamente migliori. Voglio sapere se è solo un placebo o è una cosa legittima che stava succedendo prima dell'era SSD.

Ho letto qualcosa su "Disk short carezze" ma non sono sicuro che sia lo stesso di quello che ho fatto. Forse i miei BIO partizionano prima lo spazio sui bordi? Voglio conoscere le tue spiegazioni al riguardo.


6
Questa è una domanda interessante, ma l'RPM potrebbe essere un grosso problema, se un HDD acquistato nel 2016 avesse solo 80 GB di spazio di archiviazione? Probabilmente si trattava di un HDD / SSD ibrido o di una sorta di unità High RPM (almeno 10.000 RPM, probabilmente di più) che avrebbe avuto un impatto notevole sulle prestazioni.
Cestarian

1
@Cestarian Questo è un buon punto. Attualmente sto usando un desktop relativamente di fascia bassa dal 2015 ed è arrivato con SSD da 80 GB e HDD da 1 TB. L'ultima volta che ho acquistato un HDD di soli 80 GB è stato intorno al 2003. Quindi il menzionato HDD da 80 GB potrebbe non essere stato un HDD ma piuttosto un SSD.
Kasperd,

Risposte:


29

Sì, quello che stai facendo si chiama "accarezzare".

Migliora le prestazioni di ricerca limitando il movimento della testa dell'unità. Le prestazioni del disco rigido sono principalmente limitate da tre fattori: tempo di ricerca (il tempo necessario per spostare le testine all'interno o all'esterno del cilindro desiderato), la latenza di rotazione e, naturalmente, la velocità di trasferimento dei dati effettiva.

i principi

I più moderni dischi rigidi da 3,5 pollici hanno tempi di ricerca medi nell'intervallo da 9 a 10 msec. Una volta effettuata una "ricerca", l'unità deve attendere che l'inizio del settore desiderato venga messo alla prova. La latenza di rotazione media è semplicemente la metà del tempo impiegato dall'azionamento per compiere un giro completo. Un azionamento a 7200 giri / min, gira a 120 giri al secondo, quindi un giro dura 1/120 sec, quindi mezzo giro - la latenza di rotazione media - è 1/240 sec, o 4,2 msec. (Si noti che questo è lo stesso per ogni disco rigido a 7200 rpm.) Quindi abbiamo una media di circa 13 msec prima di poter iniziare a trasferire i dati.

La velocità di trasferimento dei dati corrisponde a quanto indicato nelle specifiche dell'unità. Con le unità moderne questo è quasi sempre leggermente inferiore a quello che supporta l'interfaccia fisica, ad esempio SATA 3. Si noti che la parte di trasferimento dati di un'operazione di I / O è generalmente la parte di durata più piccola e con interfacce moderne può essere quasi ignorata. Anche su un vecchio disco ATA33, il trasferimento di 4KiB ha richiesto solo 1,2 msec.

La specifica del tempo di ricerca è una media dei possibili tempi di ricerca per varie distanze di movimento della testa. Puoi vedere come una ricerca da un cilindro al cilindro adiacente sarebbe molto più breve di quella dal più interno al più esterno. (Un "cilindro" è la raccolta di tutte le tracce accessibili da un'unica posizione della testa.) Entrambe sono situazioni atipiche. Il presupposto delle prestazioni HD è che i dati a cui si accede saranno distribuiti in modo abbastanza casuale sull'unità, quindi il normale tempo di ricerca citato di circa 9 o 10 msec è una media di un numero di distanze di ricerca diverse. Sulle schede tecniche più dettagliate, alcuni produttori elencano sia il tempo da cilindro a cilindro (spesso etichettato "track to track"), cioè adiacente, il tempo di ricerca e il massimo (end-to-end) oltre alla media.

Quando vengono visualizzati benchmark delle unità eseguiti con trasferimenti "sequenziali" di grandi dimensioni, vengono visualizzati test eseguiti con modelli di accesso ai dati che riducono al minimo sia il tempo di ricerca che la latenza di rotazione e massimizzano l'efficacia della cache integrata dell'unità. vale a dire la lettura sequenziale di un singolo file di grandi dimensioni - dall'inizio alla fine - utilizzando la lettura, ad esempio, 64 KiB alla volta, con il file che occupa un intervallo contiguo di blocchi.

quindi come funziona la corsa breve?

Creando - e utilizzando solo - una partizione molto più piccola dell'unità, si mantengono tutti i dati in un arco ristretto di possibili cilindri (posizioni della testa). Ciò riduce il tempo di ricerca massimo possibile, quindi la media è più piccola. Non aiuta la latenza di rotazione o la velocità di trasferimento.

Un altro modo in cui aiuta è quello di mantenere l'utilizzo dell'unità ai cilindri di maggiore capacità. I moderni HD utilizzano la "registrazione di bit di zona", il che significa che ci sono più settori per traccia sulle tracce esterne rispetto a quelle interne. Quindi, se i dati si trovano su cilindri esterni, è possibile accedere a più dati senza spostare le testine.

funziona davvero?

Molti siti diversi di appassionati di tecnologia lo hanno testato. Ad esempio, consulta questo articolo su Tom's Hardware . I risultati sono impressionanti: quasi il doppio della velocità di I / O al secondo.

Ciò è stato possibile acquistando un disco rigido di grandi dimensioni e utilizzando solo una piccola parte della capacità dell'unità. Ciò aumenta radicalmente il costo per GB.

Tuttavia, esiste una soluzione alternativa. Non devi maiutilizzare il resto dell'unità per ottenere il vantaggio della velocità. Devi solo tenerlo fuori dall'uso quotidiano quando il tuo sistema colpisce molto la tua partizione principale. La maggior parte di noi ha pochi file a cui accediamo molto (il sistema operativo, le app e alcuni dati su cui funzionano le app) e una quantità molto maggiore di dati a cui accediamo non così tanto. Ad esempio, è possibile utilizzare il resto dell'unità per una sorta di archiviazione di archivio o per file multimediali come musica e video. La riproduzione multimediale è generalmente poco frequente, accesso sequenziale a un singolo file e al momento non si sta facendo molto altro con la macchina. Pertanto, l'utilizzo dell'unità in questo modo non peggiorerà la riproduzione dei file multimediali se non tutto fosse distribuito su un'unica grande partizione e il lavoro che non coinvolge i dati multimediali dovrebbe trarre vantaggio dal breve tratto.

ma è una buona idea?

D'altra parte ... I test eseguiti da TH sono stati parametri di riferimento sintetici e per ottenere questi risultati hanno gettato via percentuali molto elevate della capacità del disco. I moderni sistemi operativi fanno un bel po 'di lavoro per cercare di ottimizzare le prestazioni HD. Un esempio è l '"ottimizzazione del posizionamento dei file" di Windows, descritta nei commenti a questa risposta. E "accarezzare" renderà questo meno efficace. Solo perché qualcuno ha ottenuto risultati impressionanti in un benchmark sintetico non significa che "accarezzare" è necessariamente una buona cosa da fare.

Pensaci: un disco rigido da 1 TB in questi giorni costa circa $ 50. Ma ne stai usando solo 80 GB. Dici che hai solo bisogno del sistema operativo e di un browser ... beh, per $ 63 puoi ottenere un SSD Samsung da 128 GB, dandoti di nuovo la metà dello spazio dei tuoi 80 GB e FAR prestazioni migliori indipendentemente da quanto "corti" l'HD. O per $ 50 puoi ottenere un SSD SanDisk con una capacità di 240 GB. Sembra un affare migliore rispetto al non utilizzo di quasi tutti i dischi rigidi da un terabyte da $ 50.

btw

btw: il tuo "BIOS" (o UEFI per quella materia) non crea partizioni e non ha nulla a che fare con la posizione delle partizioni. Dipende dall'utilità di partizionamento del sistema operativo. Ogni sistema operativo di cui abbia mai sentito parlare utilizza prima i cilindri esterni. Ad esempio, nell'utilità Gestione disco di Windows, la visualizzazione grafica delle partizioni dell'unità all'interno di ciascun disco mostra il layout con i cilindri più esterni a sinistra. L'utilità di partizionamento del disco AOMEI fa lo stesso.

A parte - STORIA VERA: ai tempi in cui i dischi rigidi con fattore di forma da 5,25 pollici erano dimensionati in decine e centinaia di MB, una società chiamata CDC aveva una linea di unità chiamata serie "Wren". (Questo nome è stato senza dubbio uno schiaffo sulle unità Fujitsu "Eagle" molto più grandi di un'epoca leggermente precedente.) Per un po 'avevano anche un modello leggermente più performante, il "WrenRunner". Circa il 90% della capacità, il 20% in più di costo e un millisecondo circa del tempo medio di accesso. Dopo alcuni esperimenti fu chiaro che il "WrenRunner" era solo un "Wren" con la prima e l'ultima traccia bloccate nel firmware dell'unità. cioè potresti ottenere le stesse prestazioni e capacità dal Wren più economico "accarezzando", anche se allora non abbiamo usato quel termine.


Mentre la tua spiegazione è ragionevole, il "sì" sembra falso. Se si utilizza solo il 5% o il 10% della memoria disponibile, qualsiasi driver di filesystem del sistema operativo decente allocerà la memoria principalmente o interamente dal primo 5 o 10% del disco. Se passa oltre, eviterà di utilizzare regioni libere frammentate e quindi di ottenere prestazioni migliori. Partizionare un disco "per le prestazioni" piuttosto che allo scopo di tenere le cose separate è solo un'idea ridicola.
R ..

@R .. o potrebbe essere per evitare di scrivere ripetutamente all'inizio del disco, facendo durare di più l'unità, ma immagino che sia solo se sostituisci i dati molto spesso
qualcuno il

1
@R .. Beh ... se hai mai visto la distribuzione dell'utilizzo su un grande HD dopo che è stato in uso per alcuni mesi o un anno, potresti avere un'idea diversa.
Jamie Hanrahan,

2
D'altra parte, c'è l'ottimizzazione del posizionamento dei file di Windows. Sposta deliberatamente parti di exe e dll a cui si accede ravvicinati nel tempo durante l'avvio, per essere vicini insieme sul disco. E dal momento che questo tenta di spostare questa roba in un unico spazio contiguo, dovrebbe essere più efficace dove si trova tale spazio, ovvero su un'unità con molto spazio libero. (Naturalmente, Windows non si preoccupa di farlo su un SSD.) Quindi concluderei che la risposta "sì, migliora le prestazioni HD" è ancora valida per i benchmark - ma ciò non significa necessariamente che sia una buona cosa da fare.
Jamie Hanrahan,

2
Ecco un commento sull'ottimizzazione del posizionamento dei file di Windows. Ovviamente Windows Internals di Solomon, Russinovich e altri è il riferimento "bocca di cavallo". autoitconsulting.com/site/performance/…
Jamie Hanrahan

3

Ci sono molti fattori e non sono sicuro che ci sia una risposta strettamente canonica. Tuttavia, una partizione più piccola vicino all'esterno dei dischi rotanti potrebbe mostrare una ricerca più rapida e trasferimenti sequenziali, a condizione che i dati non siano altamente frammentati.

Sui dischi rotanti, i cilindri esterni hanno più settori e ruotano più velocemente dei cilindri interni. Molti file system moderni cercano di posizionare i settori dei file in modo contiguo per ridurre la frammentazione, il che spesso significa che nel tempo grandi partizioni usano sempre più cilindri interni.

È possibile che la partizione più piccola imponga al file system di posizionare più dati sui cilindri esterni e che, anche se leggermente frammentati, i dati si spostano più rapidamente sotto le testine di lettura.

Puoi testare il tuo disco per l'accesso casuale e le prestazioni sequenziali con diverse dimensioni di partizione usando strumenti Linux come hdparm , anche se potresti voler utilizzare uno strumento più avanzato che tenga conto della frammentazione se desideri più di una risposta pragmatica.

A seconda dell'utilizzo delle unità, qualsiasi vantaggio derivante dallo spreco di spazio su disco è probabilmente compensato dai rifiuti stessi. Se l'accesso casuale o le prestazioni in frammentazione sono importanti per te, passare a un'unità a stato solido (SSD) probabilmente ha più senso nel lungo periodo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.