Vai al contenuto
Home » Domotica Fai da te » Raspberry Pi » Micro SD Raspberry Pi: come scegliere la scheda migliore

Micro SD Raspberry Pi: come scegliere la scheda migliore

    Come scegliere scheda micro SD per Raspberry Pi

    Devi scegliere la scheda micro SD per il tuo nuovo Raspberry Pi? Scopri cosa verificare per avere le migliori performance e come scegliere tra le migliori schede micro SD per Raspberry Pi.

    Raspberry Pi e storage

    Raspberry Pi, come qualsiasi computer anche se di dimensioni minime, per il suo funzionamento ha la necessità di utilizzare una memoria di massa per archiviare i dati.

    Quali sono le memorie di massa esterne supportate nei vari modelli di Raspberry Pi?

    • Scheda memoria micro SD (SD nei modelli più vecchi di Raspberry Pi)
    • Disco esterno SSD o HDD compatibile USB 2.0 (USB 3.0 per Raspberry Pi 4)
    • SSD NVMe (esclusivamente Raspberry Pi Compute Module 4)

    In questo articolo ci focalizzeremo sull’opzione più naturale e semplice in Raspberry Pi, ovvero l’utilizzo di una scheda di memoria micro SD.

    Raspberry Pi SD Card
    Slot micro SD Raspberry Pi

    I requisiti che emergono nella scelta di una scheda micro SD per l’utilizzo su un Raspberry Pi sono i seguenti:

    • velocità massima, che è comunque limitata da quella del bus di comunicazione con la scheda: 25 MB/s per tutti i modelli ad eccezione di Raspberry Pi 4 Model B che può arrivare a 50 MB/s
    • velocità in lettura e scrittura casuale che determinano le prestazioni effettive raggiungibili dal sistema operativo
    • durata in termini di numero di operazioni di scrittura possibili nella vita utile
    • capacità, variabile a seconda delle esigenze, comunque al minimo di 8 GB

    Performance

    E’ molto importante tenere conto di questi aspetti perché il grosso delle schede di memoria SD che si trovano sul mercato nascono per permettere l’archiviazione a dispositivi, come macchine fotografiche o telecamere, in cui sono la capacità e le prestazioni in lettura e scrittura casuale ad essere quelle più importanti.

    Nella pratica ci può essere anche un ordine di grandezza di differenza nelle prestazioni con operazioni I/O sequenziali ed operazioni casuali come vedremo successivamente.

    Se le performance sono critiche nell’utilizzo atteso del vostro Raspberry Pi, allora è opportuno pensare di utilizzare un disco esterno USB con cui è possibile scalare di un ordine di grandezza grazie al bus più velocità ed all’ottimizzazione per lettura e scrittura casuale. Un esempio è la gestione di un database.

    Leggi anche il mio articolo sul miglior disco SSD esterno.

    Durata

    Le schede micro SD si basano su una memoria flash: questo significa che c’è un limite tecnologico per il quale cui ciascuna cella di memoria può essere scritta e cancellata per numero fisso di volte.

    Quindi per la durata, oltre la scelta iniziale della scheda micro SD, è assolutamente importante cercare di ottimizzare il proprio Raspberry Pi per evitare tutte quelle scritture che non siano effettivamente utili onde prolungarne il più possibile la vita.

    Leggi anche la mia guida al backup Raspberry Pi su Google Drive con RClone.

    Capacità

    Normalmente la capacità richiesta per la memoria di massa su micro SD per un sistema basato su Raspberry Pi non è particolarmente significativa poiché deve ospitare solo il sistema operativo e i programmi utilizzati, parliamo di decine o poche centinaia di GB).

    Spingendosi nell’utilizzo come server dove l’archiviazione storica di dati diventa rilevante, ci potrebbe essere la necessità di storage di dimensioni significative (almeno diverse centinaia di GB).

    Capacità scheda micro SD
    Capacità scheda micro SD

    In questi scenari particolari, tenendo anche conto delle considerazioni precedenti su performance e durata, può avere senso affiancare alla scheda micro SD l’utilizzo di un disco esterno USB collegato al Raspberry Pi.

    Leggi anche la mia guida al boot Raspberry Pi da disco USB.

    Caratteristiche schede micro SD vs Raspberry Pi

    Le schede di memoria SD sono state inizialmente progettate per gestire la memorizzazione e la lettura di immagini e video, scenario nel quale dove vi è un accesso I/O sequenziale puro a grandi quantità di dati consecutive.

    La stragrande maggioranza delle schede disponibili sul mercato è quindi ottimizzata per questa modalità di utilizzo: quando si sposta l’uso medio verso un accesso I/O di tipo casuale è probabile ottenere invece prestazioni piuttosto scadenti o comunque non in linea con le attese che generano elevatissime velocità I/O sequenziale.

    Accesso sequenziale vs casuale
    Accesso sequenziale vs casuale

    Quando si utilizzano le schede micro SD come memoria di massa principale di un Single Board Computer come Raspberry Pi, cadiamo proprio nel secondo scenario: il modello di accesso ai dati in Linux è proprio di tipo casuale su piccoli blocchi di dati: situazione perfetta per ottenere prestazioni piuttosto scadenti.

    Vediamo per bene come tutto questo si cala rispetto ai vari standard esistenti per le SD card.

    Classi di velocità schede micro SD

    Le classi di velocità delle schede micro SD si occupano esclusivamente delle prestazioni minime per operazioni di I/O sequenziale espresso in MB/s.

    In particolare abbiamo queste tre classi di velocità in uso:

    Velocità scrittura
    sequenziale minima
    Classe
    Velocità
    Classe
    Velocità UHS
    Classe
    Velocità Video
    MicroSDHCMicroSDXCMicroSDXC
    2 MB/sC2
    4 MB/sC4
    6 MB/sC6V6
    10 MB/sC10U1V10
    30 MB/sU3V30
    60 MB/sV60
    90 MB/sV90
    Classi di velocità schede micro SD

    Dati i vincoli attuali sui vari modelli di Raspberry Pi, questa tabella ci dice che per avere le performance in I/O sequenziale minime:

    • per qualsiasi modello di Raspberry Pi è raccomandabile scegliere una scheda micro SD velocità in scrittura sequenziale minima ≥ 30 MB/s, ovvero di classe U3 oppure V30
    • nel caso di Raspberry Pi 4 beneficiare dell’uso di una scheda micro SD con velocità in scrittura sequenziale ≥ 60 MB/s, ovvero classe video V60
    • non vi è alcun beneficio sulle performance di un Raspberry Pi da una scheda micro SD di classe video V90

    Ovviamente, come già detto, questo non vuol dire che le performance sul campo di Raspberry Pi raggiungeranno questi valori massimi “teorici” con accesso sequenziale; se però, per tagliare sui costi iniziali, scegliessimo vecchi modelli di micro SD classe U1 / V10 o inferiori avremo la quasi certezza di prestazioni non soddisfacenti.

    Classe di performance applicativa scheda micro SD

    La standardizzazione delle SD Card ha dovuto adeguarsi al mercato, in particolare a quello degli smartphone Android che non altro che dei piccoli computer Linux che quindi fanno principalmente accesso I/O casuale come su Raspberry Pi.

    Sono così state create le classi di performance per applicazioni A1 ed A2 per schede micro SD che prevedono i seguenti requisiti minimi:

    Classe A1Classe A2
    SD Card Classe A1SD Card Classe A2
    Lettura casuale1.500 IOPS4.000 IOPS
    Scrittura casuale500 IOPS500 IOPS
    Scrittura sequenziale10 MB/s10 MB/s

    IOPS indica il numero di operazioni per secondo; la dimensioni dei blocchi utilizzati per la misura, in entrambi i casi, è di 4k (quindi piccoli blocchi di dati).

    La conclusione sembrerebbe facile e scontata ma non è così purtroppo!

    Infatti le schede micro SD di classe A2 possono raggiungere prestazioni molto più elevate esclusivamente se utilizzano le funzioni di “Command Queuing e Cache” che però devono essere supportate dal sistema che le utilizza.

    Purtroppo Linux, e quindi Rasperry Pi OS, al momento non supporta le funzionalità avanzate ed i benefici associati delle schede di classe A2.

    In sintesi abbiamo quindi la situazione seguente:

    • L’acquisto di schede micro SD di classe A1 per l’uso con Raspberry Pi è raccomandato poiché le velocità in scrittura casuale sono migliori ed assicurano prestazioni complessive sicuramente migliori
    • l’assenza di driver di supporto non permette di raggiungere i miglioramenti ulteriori promessi dalle schede di classe A2 (in diverse misure sul campo sono risultate peggiori che quelle di classe A1)

    Se volete approfondire ulteriormente questo tema suggerisco queste due veramente eccellenti letture (in inglese):

    Durata scheda micro SD

    Purtroppo sul fronte della durata delle schede micro SD non ci sono standard di riferimento che ci facilitino la ricerca.

    La misura della durata normalmente si esprime in:

    • numero di cicli di scrittura/cancellazione o cicli P/E (Programme-Erase)
    • Total Bytes Written (TBW) che è il numero di TB garantiti in scrittura prima di un qualsiasi guasto

    Dal punto di vista tecnologico, rispetto alla durata la differenza principale sta nella modalità di realizzazione della cella di memoria:

    • SLC (Single Level Cell): la cella gestisce un bit e questo assicura cicli di vita molto superiori (intorno ai 100.000 cicli P/E) ma con costi maggiori, capacità e velocità inferiori
    • MLC (Multi Level Cell): due bit per cella con una durata inferiore di 10.000 cicli P/E
    • TLC (Triple Level Cell): tre bit per cella, vita di 3.000 cicli P/E
    • QLC (Quad Level Cell): quattro bit per cella, durata di 1.000 cicli P/E, capacità e velocità massime

    Traiamo anche una conclusione: performance e durata di una scheda micro SD sono due caratteristiche in contrasto tra di loro.

    Le memorie SLC sono normalmente usate in ambito industriale dove l’affidabilità è decisamente più importante di capacità, velocità e costo.

    In ambito commerciale il campo di applicazione natura delle schede di memoria a lunga durata è quello dei sistemi di videosorveglianza con memorizzazione 24×7.

    Ma come trovare e verificare una scheda micro SD con durata elevata che meglio si adatti ad un Raspberry Pi?

    Purtroppo non è assolutamente agevole perché, oltre all’assenza di standard di riferimento, i produttori pubblicano raramente dei dati precisi sulla durata (tipo di cella, cicli P/E, TBW) ed usano solo versioni di prodotto dai nomi evocativi che non permettono valutazioni o confronti (tipo “Endurance”, “High Endurance”, “Max Endurance”, “Industrial”).

    Uno potrebbe pure pensare che non stiamo parlando di schede di memoria micro SD a lunga durata per Raspberry Pi ma di profilattici.

    Vediamo ad esempio come viene espressa la durata della Samsung Pro Endurance da 128 GB: “fino a 43.800 ore (o 5 anni) di registrazione Full HD – Basato su un contenuto video Full HD (1920×1080) registrato a 26 Mbps”. Proviamo a tradurlo in un dato tecnico:

    • 26 Mbit/s corrispondono a 3,25 MB/s ovvero 11,7 GB/ora
    • per 43.800 ore di funzionamento fanno 512 TB (TBW)
    • approssimando possiamo dividere per la capacità ed ottenere 4.000 cicli P/E, tipici di celle TLC NAND

    Ho provato per confronto a trovare il dato della Samsung Pro Plus che viene espresso come “10.000 mating cycles”: che cosa vorrà mai dire?

    E’ invece estremamente interessante la Western Digital microSD Edge+ che dichiara modelli con classe U3 / V30 e tecnologia eMLC (durata 10.000 cicli P/E) ed SLC (durata 50.000 cicli P/E).

    Misurazione prestazioni effettive schede micro SD su Raspberry Pi

    Vediamo ora quali sono gli strumenti per misurare le performance effettive di una scheda micro SD su Raspberry Pi ed i risultati raggiunti dalle migliori.

    In questo campo ci sono sicuramente due guru che non è possibile non citare in modo esplicito:

    In particolare James Chambers ha predisposto una suite di test (PiBenchmarks) che è possibile scaricare su SD Card o SSD per testare le performance e pubblicarle sul sito PiBenchmarks dov’è possibile consultare i risultati liberamente.

    Misurare le prestazioni scheda micro SD su Raspberry Picon PiBenchmarks
    Misurare le prestazioni scheda micro SD su Raspberry Picon PiBenchmarks

    Lanciare la suite PiBenchmarks da riga di comando è particolarmente facile:

    sudo curl https://raw.githubusercontent.com/TheRemote/PiBenchmarks/master/Storage.sh | sudo bash

    Si occupa anche dell’installazione dei tool necessari e dell’esecuzione dei test.

    Jeff Geerling invece periodicamente aggiorna una batteria di test (microSD Card Benchmarks) a supporto del proprio cluster di Raspberry Pi.

    Pi Dramble: Drupal 9 on a cluster of Raspberry Pis
    Pi Dramble: Drupal 9 on a cluster of Raspberry Pis

    Entrambi fanno utilizzo di alcuni tool e comandi che sono lo standard di fatto per la misura delle prestazioni delle memorie di massa collegate ad un sistema Linux:

    Chiudo anche con un video leggermente stagionato del mitico Andreas Spiess:

    #141 SD Card Test with Raspberry Pi 3 (Clones and Originals)

    Migliori schede micro SD per Raspberry Pi

    Dopo la lunga guida per scegliere il miglior modello di scheda micro SD per Raspberry Pi, ho provato a sintetizzare i risultati della ricerca effettuata nella tabelle seguenti.

    I criteri che mi sono dato sono i seguenti:

    • classe di performance applicativa A2 (4.000 / 2.000 IOPS random) o A1 (1.500 / 500 IOPS random)
    • classe di velocità possibilmente U3 / V30 (30 MB/s scrittura sequenziale)

    Ove possibile ho anche aggiunto il valore medio dei risultati del test PiBenchmarks scegliendo il taglio con un numero significativo di misure.

    A voi scegliere marca e capacità in base alle vostre esigenze specifiche.

    Scheda micro SD A2 per Raspberry Pi

    ModelloPiBenchmark64 GB128 GB256 GB
    Arcanite A2 V30ArcanitePrezzo non disponibile25,09 €42,99 €
    Gigastone 4K Camera ProGigastone 4K Camera Pro18,99 €28,99 €79,36 €
    Kingston Canvas Go! PlusKingston Canvas Go! Plus1.84715,82 €24,65 €32,23 €
    LexarLexar E-Series Plus11,99 €18,99 €25,72 €
    Lexar ProfessionalLexar Professional 1066x17,24 €33,50 €56,94 €
    Samsung Evo PlusSamsung Evo Plus10,25 €15,69 €20,99 €
    Samsung Pro PlusSamsung Pro Plus22,99 €43,49 €
    SanDisk ExtremeSanDisk Extreme1.61817,95 €22,55 €33,95 €
    SanDisk Extreme ProSanDisk Extreme Pro1.67318,95 €17,95 €39,95 €

    Le schede micro SD Samsung da 64 GB sono classe A1, le capacità superiori classe A2.

    Scheda micro SD A1 per Raspberry Pi

    ModelloPiBenchmark32 GB64 GB128 GB
    Arcanite A1 V30Arcanite7,60 €12,50 €
    HephinovHephinovPrezzo non disponibilePrezzo non disponibilePrezzo non disponibile
    LexarLexar E-Series9,29 €9,99 €14,99 €
    NetacNetac6,64 €13,25 €
    SanDisk UltraSanDisk Ultra1.24611,07 €10,75 €17,34 €

    I tagli di capacità da 32 GB hanno classe di velocità U1 / V10, oltre passiamo a U3 / V30.

    Leggi tutti i miei articoli su Raspberry Pi:

    Iscriviti alla nostra newsletter per rimanere sempre aggiornato

    Ultimo aggiornamento Amazon Affiliate 2024-04-25 at 17:01

    Lascia un commento

    Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

    Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

    La mia Casa Elettrica

    GRATIS
    VISUALIZZA