Mining per criptovaluta: come e perché farlo

La parola mining si lega, nella quasi totalità delle circostanze, a quella delle criptovalute; questo proprio perché si tratta del “motore” che permette alle stesse di esistere. Il mondo delle criptovalute sembra, di fatto, essere uscito dalla sua iniziale dimensione di nicchia, assumendo un’importanza considerevole anche nel dibattito finanziario pubblico (sia pure, in molti casi, solo per provare a sminuirne la portata).

In questo contesto può essere interessante approfondire il processo generativo delle criptovalute, come ad esempio Ethereum e Bitcoin (e per estensione tutte le altre disponibili), per poi capire come (e se davvero) sia possibile rendere questo processo automatico, e in qualche modo autogestito. Possiamo davvero, in altri termini, fare mining in casa o in ufficio?

Abbiamo già affrontato sul nostro sito le principali curiosità annesse al bitcoin (come sistema di pagamento alternativo a carta di credito, bonifico e PayPal) e, per estensione, dobbiamo ricordare che quelle considerazioni valgono per qualsiasi altro tipo di criptomoneta. Il processo generativo della moneta decentralizzata mediante blockchain, di fatto, va sotto il nome di mining, e per sua natura richiede una potenza computazionale considerevole.

Tanto considerevole, nello specifico, che i normali PC che usiamo a casa o in ufficio non bastano più da anni.

Vale la pena di soffermarsi un attimo sulla definizione di mining, prima di procedere oltre: similmente a quello che succede per il processo tradizionale di estrazione dell’oro, infatti, il mining coincide con un complesso algoritmo che permette di estrarre informazioni, criptarle e codificarle in modo tale che forniscano valore aggiunto “certificato”. Tale valore aggiunto, in termini finanziari, si assume per il fatto che non tutti sono in grado di effettuare il mining, e proprio per questo vengono introdotte delle commissioni (mining fee) che retribuiscono i miner per il contributo che hanno fornito alla blockchain: messa in modo semplice, quel “tot” di dati che diventa spendibile come criptovaluta.

Generalmente si prendono in considerazione due modi per fare mining, ed entrambi riguardano l’uso di una tecnologia ad altissime prestazioni erogabile sia in locale (installando dei miner in casa, in appositi rack o “armadi” dotato di sistemi di raffreddamento) che in cloud (ovvero sfruttando servizi già pronti all’uso di questo genere). Il mining di criptovaluta veniva storicamente effettuato con computer molto basilari dotati delle migliori CPU disponibili all’epoca; col tempo, pero’, si è visto che il consumo in termini di potenza era troppo alto, tanto da risultare inefficiente per buona parte dei casi pratici.

Le CPU classiche, infatti, per quanto efficienti possano essere – e per quanto onorino la famosa legge di Moore (secondo cui la complessità di qualsiasi microprocessore aumenta ogni anno e mezzo) – non sono adeguate ad effettuare il tipo di calcoli richiesti da un algoritmo “medio” di mining. E questo succede perché, ad esempio, è prevista la cosiddetta proof-of-work, la quale garantisce un aspetto importantissimo per garantire che la cripto generata sia utilizzabile a titolo di moneta: il fatto che non sia falsificabile (e questo lo garantisce la crittografia) e che non offra la possibilità di essere spesa due volte da due persone diverse (il che ovviamente renderebbe non valida la stessa definizione di criptovaluta: tale problema, per la cronaca, è noto tecnicamente come double-spend).

Per questo motivo hanno avuto l’idea di fare uso, in alternativa, della potenza di calcolo delle GPU (Graphics Processing Units), le stesse che sono responsabili del rendering digitale sulla maggioranza dei dispositivi elettronici. Tale tipo di hardware, di fatto, si è rivelato particolarmente adeguato, in termini di velocità ed efficienza, per effettuare i complicati calcoli alla base del processo di mining. Tanto per fare un esempio numerico, una GPU di qualche anno fa riesce a processare circa 3000 operazioni per tempo di clock, quando una CPU dell’epoca poteva processarne solo 4 (di fatto, tre ordini di grandezza in meno). In questo contesto, tecnicamente parlando, gioca un ruolo fondamentale la capacità di parallelizzare le operazioni, che la rende idonea ad effettuare operazioni molto rapide in tempi brevissimi o quasi istantanei. Proprio quello che ci vuole per un buon mining, insomma.

Alla lunga ciò ha contribuito direttamente alla diffusione delle tecnologie per questo contesto, e nello specifico ha portato alla realizzazione di hardware specifici, da parte di aziende specializzate, per applicazioni ad alto utilizzo di grafica (modellazione e rendering 3D e/o CAD, videogiochi di ultima generazione e via dicendo).

Applicazioni che poi, nella pratica e mediante l’inesorabile evoluzione tecnologica dei chip, sono diventate a tutti gli effetti hardware dedicato per applicazioni di deep learning e mining. Il che è, ad oggi, praticamente l’unico modo per fare mining “artigianale”, con l’ulteriore nota (non certo trascurabile) che i costi dell’acquisto di questo tipo di schede video sono molto più alti della media; motivo per cui hanno iniziato a prendere piede soluzioni equivalenti in cloud, che gli utenti interessati pagano “a consumo” e senza disporre fisicamente dell’hardware.

Esistono dei modelli di schede video molto recenti, che sono generalmente preferite dagli appassionati per le caratteristiche che li contraddistinguono e per le capacità che possiedono in termini di prestazioni (misurate tipicamente in CUDA cores, ray-cast, memoria dedicata alla GPU ecc.). Un esempio molto diffuso ed ampiamente utilizzato dagli esperti è, ad esempio, quello della Nvidia Quadro RTX 6000, lo stesso che mette a disposizione l’azienda Seeweb per il suo servizio di server GPU pre-configurata in cloud.

A marzo di quest’anno, peraltro, la NVIDIA ha sviluppato una tecnologia nota come Crypto Mining Processors (CMP), per un totale di quattro modelli suddivisi in base agli hashrate disponibili (HX30, HX40, HX50 e HX90). Tali schede sono dedicati al mining e permettono di controllare con il massimo delle prestazioni una GPU che sarebbe stata quasi impensabile, solo fino a qualche anno fa.

Per chiunque volesse cimentarsi con algoritmi dalle prestazioni molto elevate, ad oggi, il suggerimento di massima è proprio quello di ricorrere a soluzioni in cloud, dato che risolvono più problemi di quanti ne possano creare gli hardware in loco, senza dubbio affascinanti per mille motivi ma soggetti a problemi di configurazione, installazione, manutenzione e ingombro nei propri spazi.

Con una soluzione in cloud, di fatto, avremo a disposizione un ambiente già pronto all’uso per permettere di effettuare il mining di criptovalute, con una piccola specifica ulteriore da fare: “minare” Bitcoin potrebbe non essere troppo pratico (ci vuole troppo tempo per guadagni quasi sempre irrisori), mentre rimangono senza dubbio discreti margini su altre criptovalute, come Ethereum o qualsiasi altra il mercato possa suggerire essere promettente commercialmente.

E per quanto rimanga un’applicazione dedicata a nicchie ben specifiche, resta la considerazione di una disponibilità per il grande pubblico di queste tecnologie, che dovrebbe certamente non essere sottovalutata.

Foto di LauraTara da Pixabay

5/5 (3)

Che ne pensi?