Monero mining on Jetson Nano Ecco perché conviene

Monero Jetson Nano

Come riutilizzare un vecchio Jetson Nano a 4 GB per minare la crittovaluta Monero a basso consumo energetico. Conviene rispetto al Raspberry?

Chi come noi si diletta nella teoria e nella pratica di utilizzo di sistemi embedded e single board computers (SBC) sta vivendo un periodo triste: prima il blocco dei mercati causa pandemia, poi lo shortage di circuiti elettronici, quindi la irreperibilità di Raspberry PI carrozzati con più di 2 GB a bordo e l’aumento grottesco dei costi dell’energia elettrica ci sta costringendo a rivalutare i nostri standard e a rovistare nei nostri cassetti alla ricerca di qualcosa di alternativo.

Nei miei ho ritrovato tre schede Jetson Nano 4GB (la “prima serie”) con processore ARM Cortex-A57 che avevo acquistato tempo fa per un progetto relativo ad un cluster economico. In uno degli ultimi fine settimana, mi sono trovato libero da impegni e mi sono chiesto se questa schedina fosse anch’essa utilizzabile come strumento per minare crittovalute (Monero) a basso prezzo.

L’idea è nata a seguito dei nostri precedenti articoli al riguardo (riportati in calce), e in sostanza ricalca l’articolo intitolato “Minare Monero su Raspberry PI: come e perché si fa“.

Monero mining on Jetson Nano – Configurazione

Partiamo da una scheda microSD vergine, ed installiamo Ubuntu. La QEngineering ha prodotto una immagine per Nano con Ubuntu 20.04 64 bit dotata di OpenCV, TensorFlow e Pytorch (!) ma anche la versione base Nvidia 18.04 (sempre a 64 bit) funzionerà egregiamente. In entrambi i casi verrà prodotta una scheda microSD contenente il sistema operativo e tutti i driver necessari per lavorare con il nostro Jetson Nano. Come sempre, una volta completata l’installazione occorre lanciare il sistema la prima volta, lasciare che il sistema operativo riconsoca la scheda e prepari lo spazio necessario, quindi rilanciare il sistema ed eseguire l’aggiornamento con i classici comandi:

dopo aver collegato il Nano alla rete, per allineare la scheda con la versione  più aggiornata del software di sistema.

Occorre ora installare e compilare il software per il mining

La compilazione procederà da sola, mostrando sulla sinistra il livello percentuale di avanzamento.

E’ arrivato il momento di lanciare l’applicazione con il comando:

Ovviamente dovremo aver installato il nostro wallet (come indicato nell’articolo precedente)…

Inseriamo il nostro indirizzo di mining (può essere lo stesso di quello ottenuto nell’articolo precedente) e diamo un nome al nostro miner (ad esempio Nano_4GB_01).

Monero Jetson Nano

Prestazioni

Passiamo ora alla valutazione dell’efficienza della scheda.

Rispetto al Raspberry PI 2GB testato in precedenza, il Nano ha un processore leggermente meno esoso dal punto di vista energetico, e consuma tra i 10W ed i 15W a pieno regime con 4 cores attivi al 100%. Viste le caratteristiche del PI (circa 40/45 hash al secondo con un processore più efficiente) ci si aspetterebbe un output  che si aggira attorno agli 80 Hash al secondo.

E invece no!

A causa della RAM aggiuntiva e della presenza di istruzioni AES specifiche implementate sul SoC, questo mostriciattolo sfiora i 200 Hash al secondo!

Monero mining
Efficienza del Jetson Nano 4GB sull’algoritmo Kawpow
monero mining PI
Efficienza del Raspberry PI 2GB sull’algoritmo Kawpow

Questo significa che anche utilizzando un Raspberry PI da 4GB o più, avremmo comunque un consumo maggiore ed una velocità minore rispetto al Jetson Nano.

Questi sono i “piccoli” vantaggi riscontrati quando si compila per conto proprio codice ottimizzato per un dato processore…

Per gli amanti delle tabelle di numeri, eccone una:

Speed (Hash/s)Power(W/h)Efficiency (Hash/W)
Raspberry PI 4 2GB 4 cores50143,57
Intel Atom N2940 2 cores60451,33
Intel Celeron 2 cores150602,5
Jetson Nano 4gb 4 cores20012,516
Intel G2030 4 cores3901103,55

Non solo il Jetson Nano è il SoC che consuma di meno nel mining, ma grazie all’ottimizzazione degli algoritmi e l’utilizzo di istruzioni particolari dell’hardware è anche quello che offre un ritorno di investimento (ROI) quadruplo rispetto al secondo classificato!

Ciò non toglie che possiamo creare i nostri cluster di Jetson Nano e iniziare a minare Monero tranquillamente senza timori di perdite d’esercizio. Con Il costo dell’energia elettrica fissato (ad esempio) a 0,45 euro/kWh, ed un consumo mensile di 12W, il Nano consuma mediamente 8,64 KW al mese, pari a 3,89 euro al mese, ma “guadagna” solo 0,13 euro al mese.

Sono tempi duri per i minatori…

…e la GPU?

Ovviamente il nostro Nano è dotato anche di una piccola GPU Maxwell da 128 cores. Possiamo utilizzarla per i nostri scopi “minatori”?

Abbiamo ripreso in mano il codice sorgente del miner, selezionato l’algoritmo kawpow con i programmi xmrig e t-rex per cercare di vedere come si comporta il SoC di fronte ad imprese più ardue, come il mining di Ravencoin (vedi articolo relativo). Il makefile presenta la possibilità di arrivare un paio di switch e abilitare il path di compilazione CUDA, che utilizzi anche il sottosistema GPU parallelo per i calcoli.

Nano xmrig CUDA

Come si evince dalla schermata. i nostri sforzi hanno dato esito positivo, e la compilazione è riuscita. Purtroppo però gli eseguibili non sono partiti come sperato: il sistema CUDA è stato correttamente rilevato, ma il programma è andato in blocco. Forse la blockchain sulla quale minare i Ravencoin è un osso troppo duro per la nostra schedina, o forse l’installazione della distro Ubuntu prevede una preconfigurazione dei sistemi CUDA altrimenti non accessibili… Se riusciremo a sbloccare la potenza CUDA della scheda e trovare un algoritmo che la possa sfruttare senza tuttavia pesare troppo sul piccolo SoC, tornerete a sentirci.

Considerazione finali

Il periodo attuale non depone certamente a favore del mining, sia per gli alti costi energetici che per i bassi valori di ritorno delle crittovalute, ma noi lavoriamo per la gloria. Oggi abbiamo voluto mostrare come sia utile (oltre che dilettevole) configurare e ricompilare il software per adattarlo alle specifiche caratteristiche di un sistema hardware.

Se avete altre idee da proporci, o articoli da sviluppare, noi siamo qui.

 

Link utili:

 

Join our groups on Telegram…

… and don’t forget our social channels!

Definire ciò che si è non risulta mai semplice o intuitivo, in specie quando nella vita si cerca costantemente di migliorarsi, di crescere tanto professionalmente quanto emotivamente. Lavoro per contribuire al mutamento dei settori cardine della computer science e per offrire sintesi ragionate e consulenza ad aziende e pubblicazioni ICT, ma anche perche’ ciò che riesco a portare a termine mi dà soddisfazione, piacere. Così come mi piace suonare (sax, tastiere, chitarra), cantare, scrivere (ho pubblicato 350 articoli scientfici e 3 libri sinora, ma non ho concluso ciò che ho da dire), leggere, Adoro la matematica, la logica, la filosofia, la scienza e la tecnologia, ed inseguo quel concetto di homo novus rinascimentale, cercando di completare quelle sezioni della mia vita che ancora appaiono poco ricche.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.