File System: Cosa sono, e quail scegliere per Chia
In questo precedente articolo ”Chia su Ubuntu Server” ho dato brevemente delle linee guida su come installare un sistema Ubuntu Server minimale con lo scopo di minare Chia, oggi vediamo come ottimizzare lo stesso sistema per il plotting ed il farming di Chia, attraverso la scelta e il tweaking dei FileSystem piú appropriati.
Cosa é un FileSystem
Prima di scendere nei dettagli conviene peró capire bene cosa é un FileSystem: Un file system, in informatica, indica un meccanismo con il quale i file sono posizionati e organizzati su dispositivi informatici utilizzati per l’archiviazione dei dati ad esempio unità di memoria di massa. Quindi, semplificando al massimo, scegliendo un FileSystem piuttostoché un’altro, cambiamo il modo in cui i nostri dati vengono archiviati sui nostri dischi.
Cosa serve per Chia:
Per scegliere i FileSystem piú adatti a Chia, dobbiamo prima capire come funziona Chia. Volendo semplificare l’uso che Chia fa dei dischi, possiamo affermare che ci servono due tipologie di storage:
- Storage per Plotting: Per la fase di plotting servono dischi molto veloci, con un’elevata capacitá di lettura, ma soprattutto di scrittura. Questi dischi dovranno essere formattati usando un FileSystem che prediliga la velocitá di acceso ai file, magari ottimizzato per processi paralleli.
- Storage per farming: Per la fase di farming serve unicamente molto, moltissimo spazio, e volendo, una certa “resilienza”. Non servono prestazioni particolari. Personalmente preferisco utilizzare un FileSystem affidabile, adatto a storage permanente di file sensibili, e che magari sia la possibilitá di attivare una compressione trasparente.
- Storage per il sistema: Quí non abbiamo necessitá particolari, consiglio di adottare il FileSystem predefinito della distribuzione Linux scelta.
Quali FileSystem per Chia?
veniamo quindi al dunque: quali FileSystem sono i migliori per Chia-Network? Ecco cosa vi consiglio:
Nota Bene!
Questa é la configurazione che attualmente abbiamo scelto per i nostri server, e che secondo la nostra opinione e la migliore possibile. Non é detto che non esistano configurazioni migliori, i consigli in quetso articolo si basano sia su nozioni tecniche, che esperienze personali.
FileSystem migliore per Plotting: XFS
In fase di plotting seve velocitá e accessi veloci ai dischi. Da questo punto di vista, secondo diversi test che si trovano in rete, il FileSystem piú veloce é senza dubbio XFS! Potete trovare alcuni test a questo link.
Formattare i dischi in XFS, e ottimizzarli per Chia
Senza dilungarci troppo, per formattare i dischi di Plotting in XFS, e ottimizzarli per Chia, vi consiglio di usare il parametro ”crc=0”, di seguito i comandi da dare:
Attenzione: Il parametro crc=0 é consigliato soprattutto se come noi avete memorie RAM ECC, in caso contrario potrebbe convenire usare XFS senza parametri aggiuntivi. Questo perché con crc=0 disabilita il checksum, e se non avete memorie con il checksum Chia potrebbe darvi problemi.
sudo mkfs.xfs -m crc=0 -f -L $DiskLabel $DevNamedove $DiskLabel é il nome che volete dare al disco (ad esempio ”Plotting 1”), e $DevName e il percorso del vostro disco (ad esemepio /dev/sdb).
Se il vostro disco di plotting é un SSD, consiglio di attivare le opzioni di mount ”noatime”, e ”discard”, in modo da ridurne l’usura.
Nota bene: Potrebbe essere che Ubuntu non abbia i pacchetti che gli permettono di formattare in XFS. Esiste un comando per installarli, ma consiglio di installare prima Gnome-Disk-Tool (trovate la guida a fine articolo), dato che probabilmente vi troverete ad utilizzarlo per comoditá. Installando Gnome-Disk-Tool, i pacchetti necessari ad XFS saranno automaticamente installati.
FileSystem migliore per Farming: BTRFS
Per il farming noi usiamo BTRFS, si tratta di un FileSystem con tantissime funzionalitá, spesso usato in ambito enterprise per via della possibilitá che da di creare snapshot del sistema. Noi abbiamo scelto di usare questo FileSystem per due motivi:
- buone prestazioni in lettura, e una buona affidabilitá
- Possibilita di attivare una compressione trasparente (abbiamo notato che sui plot la percentuale di spazio risparmiata con la compressione é davvero bassissima, ma meglio di nulla)
Formattare i dischi in BTRFS, e ottimizzarli per Chia
Per formattare i dischi in BTRFS potete procedere tramite terminale o con GUI Grafica.
Da terminale digitate:
mkfs.btrfs -L $DiskLabel $DevNamedove $DiskLabel é il nome che volete dare al disco (ad esempio ”Plotting 1”), e $DevName e il percorso del vostro disco (ad esemepio /dev/sdb).
Consiglio di attivare poi la compressione sulla partizione BTRFS creata. Per farlo dovete aggiungere ”compress=zstd” alle opzioni di mount.
Opzioni di Mount e tool per la formattazione
Ho parlato fino a quí di opzioni di Mount. Nel caso non sappiate come cambiare le opzioni di mount, sappiate che dovete modificare (con permessi di root) il file ”fstab”, che trovate in /etc/fstab.
Date quindi da terminale:
sudo nano /etc/fstabe aggiungete le opzioni di mount ai dischi desiderati, seguendo questa guida.
Tool Grafico per formattare e cambiare opzioni di mount
Esistono in alternativa molti tool grafici per formattare i dischi e/o configurare opzioni di mount. Su un’installazione minimale, consiglio di installare Gnome-Disk-Tool, con il seguente comando:
sudo apt-get install gnome-disk-toolNota bene: Con Gnome Disk Tool é possibile cambiare, aggiungere o rimuovere opzioni di mount, ma NON e possibile disabilitare il checksum a XFS, motivo per cui sconsiglio di formattare i dischi di plotting con questo tool grafico.