Ethereum Mining News

Ethereum mining: le schede video Nvidia vanno meglio delle AMD con il nuovo ProgPoW?

Nei giorni scorsi vi abbiamo riportato che nel prossimo aggiornamento del protocollo di Ethereum (non quello recentemente rimandato), verrà aggiornato l’algoritmo del Proof of Work, così da rendere Ethereum nuovamente “immune” agli ASIC. La questione del cambio della Proof of Work di Ethereum risale alla primavera del 2018, quando Bitmain annuncio il primo ASIC, l’Antminer E3, destinato al mining di Ethereum e di tutte le monete basate sull’algoritmo di mining Ethash.

Il vecchio PoW Ethash, come abbiamo avuto modo di approfondire, era ritenuto immune agli ASIC a seguito di due grossi vincoli: una grande quantità di memoria di lavoro (3-4GB) ed un elevato bandwidth per l’accesso al DAG. Di recente, il secondo vincolo ha escluso dal mining anche le schede video munite di soli 3GB, quali l’efficiente Nvidia GTX 1060 3GB.

Tuttavia, per ora gli ASIC di Bitmain non sembrano soffrire di problemi di memoria disponibile per caricare il DAG, in quanto muniti di ben 4 GB di memoria DDR3 suddivisa in ben 32 chip da 1 Gbit. Proprio per questo motivo, già dalla fine della scorsa estate alcuni sviluppatori hanno iniziato a lavorare ad un nuovo algoritmo a cui relegare la Proof of Work di ETH: ProgPoW.

Ethereum Mining: il nuovo PoW ProgPoW

Inizialmente, alcuni membri del team volevano implementare ProgPoW già in Constatinople. Tuttavia, lo scorso Settembre i devs scelsero di limitarsi al cambio di reward dei blocchi mantenendo il PoW Ethash. Il motivo, come spiegato nel successivo meetup degli sviluppatori, era piuttosto semplice: l’algoritmo non era pronto.

Sono ormai passati più tre mesi e ProgPoW ha già raggiunto un buon livello di maturità, anche se sono ancora in corso diverse ottimizzazioni. Detto in estrema sintesi, ProgPoW oltre ad essere una funzione fortemente vincolata alle memoria (Memory-Hard), sfrutta anche le capacità computazionali della GPU. Nel dettaglio, vengono utilizzate diverse funzioni dei set di istruzioni (ISA) implementati nelle moderne GPU, sia di AMD che di Nvidia, per eseguire alcune operazioni scelte in maniera “randomica”.

Infatti, ProgPoW cambia una parte della funzione da eseguire ogni 50 blocchi della blockchain di Ethereum, circa 12,5 minuti. Ciò garantisce che l’hardware che esegue l’algoritmo sia completamente programmabile, dunque una GPU e non un ASIC, avente un layout specializzato per un’apposita funzione.

In realtà, stando alla documentazione, ProgPoW non è immune agli ASIC (come affermato dagli ingegneri di AMD), nel senso che possono venir realizzati chip dedicati all’esecuzione dell’algoritmo, ma l’elevato numero di istruzioni richieste, la natura dell’algoritmo e l’elevato uso di memoria vanificano fortemente gli sforzi necessari per sviluppare un chip dedicato. Infatti, il team dichiara che un ASIC ProgPoW potrebbe ottenere un vantaggio prestazionale assai marginale rispetto alle GPU. Viene riportato un guadagno prestazionale compreso tra il 10 ed il 20%, valore che sale fino al 50% per gli ASIC con memoria HBM. Tuttavia tali memorie sono assai costose, rendendo dunque poco conveniente la creazione di una macchina ad hoc.

Il principale svantaggio di ProgPoW sono i consumi. Mediamente, le GPU  consumano dal 15 al 40% in più rispetto ad Ethash, anche se molto dipende dalla GPU. Inoltre, overclockare il core piuttosto che la memoria comporta un aumento dell’hashrate, ed il conseguente aumento dei consumi.

La questione FPGA

Premesso che ad oggi gli unici FPGA utili nel mining di Ethereum sono quelli con memorie HBM, dunque costosissimi. Stando ai dev di ProgPoW, anche gli FPGA dovrebbero venir penalizzati dal nuovo PoW. Tuttavia, a differenza di quanto viene fatto notare nella documentazione, riprogrammare al volo un FPGA può richiedere solo pochi secondi, al massimo un minuto grazie agli strumenti di partial reconfiguration.

Quindi, tecnicamente dovrebbe essere possibile eseguire ProgPoW su FPGA, anche se occorrerà realizzare un Bitstream assai complicato in grado di ottimizzare le operazioni di riprogrammazione dell’FPGA e sopratutto eseguire tutte le funzioni richieste dal nuovo PoW. Il grosso freno per gli FPGA dunque, rimarrà il costo delle soluzioni con HBM, probabilmente. Va anche considerato che l’efficienza degli FPGA è inferiore agli ASIC, dunque il guadagno potrebbe essere assai marginale rispetto alle GPU.

Le schede video Nvidia vanno meglio delle AMD con il nuovo ProgPoW?

Arriviamo ora alla dolente questione: meglio Nvidia o AMD su ProgPoW? Stando ai primi test pare che le verdi siano in vantaggio, sia in termini di hashrate che sul fronte consumi. Spulciando nella FAQ di ProgPoW, si scopre che il team ha contattato gli ingegneri di Nvidia ed AMD per ottimizzare l’algoritmo.

Tralasciando eventuali discorsi “marchette”, che tendo ad escludere (anche se si rumoreggia che parte del team lavori nell’incubatore di startup di Nvidia), in questo documento trovate una valida spiegazione sul possibile vantaggio prestazionale ed efficienza delle schede Nvidia.

Come è possibile leggere, i devs hanno cercato di rendere ProgPoW equivalente su entrambe le soluzioni, ottimizzando i parametri relativi alle cache OpenCL (PROGPOW_CACHE_BYTES) a 16KB. Ciò perché, stando alle dichiarazioni, consente alle GPU di entrambi brand di ottenere prestazioni similari.

Inoltre, vengono elencate tutte le istruzioni utilizzate ed eventuali penalità per le GPU Nvidia o AMD. Osservando il documento, possiamo notare che effettivamente alcune istruzioni penalizzano di più le schede Nvidia, altre le AMD. Difficile quantificare quali operazioni abbiano più impatto però, visto che non viene specificato.

Ciò che emerge è che, stando ai primi test ed alla sintesi delle FAQ, le performance delle GPU rispecchiano molto di più le effettive prestazioni delle schede video nel gaming, dal momento che con ProgPoW la scheda video non funge più solamente da “memory controller” ma effettivamente eseguire diversi task computazionali intensivi. Viene dunque sfruttata molto più intensamente la GPU oltre che alla memoria. Proprio per questo motivo, complice le soluzioni AMD più energivore delle schede Nvidia, il maggior consumo rilevato sulle schede rosse è da imputare ad un’efficienza architetturale inferiore delle GPU AMD, un problema noto a chi segue il mondo dell’hardware e che trova riscontro anche nel gaming.

Sta di fatto che nei test prestazionali c’è molta differenza tra le rosse e le verdi. Troppa differenza se relazionata ai consumi delle schede. Il motivo potrebbe essere dovuto alla mancata ottimizzazione a livello di BIOS, frequenze e voltaggi delle schede AMD, ad oggi ottimizzate per Ethash. Tuttavia gli utenti smanettoni presenti di Reddit sono riusciti a concludere davvero poco agendo sui vari parametri.

Fortunatamente ProgPoW non è ancora giunto alla versione finale, perciò c’è margine di miglioramento per le schede AMD, anche se per ora i risultati non promettono bene per i possessori delle Rx 570 e 580, le schede più penalizzate dal nuovo algoritmo, specie sul fronte consumi.

I primi benchmark

Spulciando su Twitter, Reddit e forum vari, i valori medi emersi nel mining su ProgPoW sono i seguenti:

Sul fronte consumi, molto dipende dalla scheda in sè, ma sono stati registrati aumenti dal 15 fino al 35-40% su alcune GPU.

Miner AMD in arrivo su Monero?

Nel caso in cui la situazione osservata nei test di ProgPoW dovesse rivelarsi definitiva, molto probabilmente buona parte dei miner muniti di schede video AMD si riverseranno su altre monete, fra cui Monero, il cui PoW premia le soluzioni AMD. Monero ha deciso di combattere gli ASIC cambiano parzialmente PoW ogni sei mesi. Si tratta di una soluzione efficace senza stravolgere consumi e prestazioni delle GPU.

Forse Ethereum dovrebbe intraprendere questa via, dal momento che ProgPoW, come dichiarato dal team, non è completamente ASIC Proof. Cambiando PoW di frequente dunque, potrebbe essere una soluzione ottimale, sia per i dev, che dovrebbero modificare solo alcuni parametri delle funzioni di hashing, ma sopratutto per i miner, che avrebbero poco impatto sulle prestazioni e consumi ed “una buona certezza” di eliminare gli ASIC dai giochi.

cripto

Vi invitiamo a seguirci sul nostro canale Telegram ed anche sul gruppo ufficiale Telegram, dove sarà possibile discutere insieme delle notizie e dell’andamento del mercato, sulla nostra pagina Facebook e sul nostro account Twitter.


La più grande community italiana dedicata alle criptovalute: Italian Crypto Club (ICC)

Emanuele Pagliari

Ingegnere delle telecomunicazioni appassionato di tecnologia. La mia avventura nel mondo del blogging è iniziata su GizChina.it nel 2014 per poi proseguire su LFFL.org, GizBlog.it, ed ora su CryptoMinando.it. Sono nel mondo delle criptovalute come minatore dal 2013 ed ad oggi seguo gli aspetti tecnici legati alla blockchain, crittografia e dApps, anche per applicazioni nell'ambito dell'Internet of Things, la mia branca di studio.
Follow Me:

Related Posts