Quando nVidia ha presentato il proprio nuovo SoC Tegra X1 non ha perso tempo a mostrare numeri altisonanti. Tralasciando il confronto con il SoC A8(X) di Apple, in quanto difficilmente commentabile, almeno fino alla commercializzazione di un prodotto finale dotato del Tegra X1, possiamo però discutere dei numeri “puri”, indicativi della potenza teorica massima elargibile dal SoC di nVidia.
Parliamo, in particolare, di quel Tera FLOPs di potenza tanto sbandierato in queste ultime 24 ore, e che numerosi commenti entusiastici sta sollevando in molti forum. Ma cosa si intende per FLOP? A cosa serve questa unità di misura? Cosa misura, soprattutto?
Partiamo allora dall'inizio. Un FLOP indica il numero di operazioni in virgola mobile che possono essere compiute in un secondo. FLOP, infatti, è acronimo di “FLoating point Operations Per Second”. Essendo l'unità di misura del numero di operazioni in virgola mobile eseguibili in un secondo, il FLOP è dedicato principalmente a determinare la potenza delle Floating Point Unit integrate nelle moderne CPU e delle GPU (Ad esempio, in Kaveri, le FPU della CPU elargiscono 119 GFLOPs, mentre la GPU elargisce 737 GFLOPs in FP32).
I calcoli in virgola mobile, però, possono essere compiuti a differenti livelli di precisione. I più utilizzati sono quelli a 16 Bit (FP16 – Mezza Precisione), 24 Bit, 32 Bit (FP32 - Singola Precisione) e 64 Bit (FP64 - Doppia Precisione). Attualmente i software commerciali ed Enterprise più importanti lavorano con gli FP32 e FP64. I videogiochi, invece, lavorano più che altro con gli FP24 e gli FP32, e per questo le case produttrici tagliano (o disabilitandole o non inserendone troppe fisicamente nel Die) le unità di calcolo in FP64 nelle proprie GPU (sia per diminuirne i costi di produzione, sia i consumi). Ad esempio nVidia ha utilizzato la GPU GK110a/b in diverse varianti, a seconda del mercato di riferimento, disabilitando parte delle unità FP64. Oppure, ancora, AMD ha deciso di inserire meno unità FP64 nella GPU Hawaii (1/8), in proporzione alle unità FP32, rispetto alla GPU Tahiti (1/4).
Spiegato in cosa consiste un FLOP, vediamo in quale di queste varianti il Tegra X1 raggiunge 1 TFLOPs: la FP16. Nella variante in generale più utilizzata, la FP32, il Tegra X1 raggiunge i 512 GFLOPs.
Questo risultato, allora, appurato che la iGPU “Maxwell” integrata lavora a 1000 Mhz, non è poi così incredibile, se consideriamo che la iGPU Mali-T760 di ARM, operante alla frequenza di 695 Mhz, è accreditata di 378 GFLOPs in Singola Precisione (o, normalizzata a 1 GHz, di 543 GFLOPs). Facendo le dovute proporzioni, le due GPU sono alla fine perfettamente paragonabili.
Alla luce di ciò, il nuovo Tegra X1 è veramente rivoluzionario come nVidia sta cercando di pubblicizzare? Difficile dirlo, in quanto i soli numeri vogliono dire poco (il software gioca il 50% della partita), per cui dovremo necessariamente aspettare le prime dev board per poterci fare un'idea più chiara.