Alfonso Maruccia

NVIDIA Titan V, calcolo scientifico ma non troppo

Le ultime, potentissime GPU di NVIDIA avrebbero problemi a "reggere" gli scenari di calcolo particolarmente pesanti generando errori nei risultati che non dovrebbero esserci. Il problema è strutturale, una patch (forse) in arrivo?

Roma - Titan V è la GPU scelta da NVIDIA per il debutto commerciale della nuova architettura Volta, una scheda discreta estremamente potente che, diversamente dai prodotti della linea GeForce, è stata progettata per "accelerare" il calcolo scientifico e per essere utilizzata in ambiti molto poco "consumer" o gaming. Ma Titan V è anche una GPU affetta da un grave problema hardware, un baco in grado di influenzare negativamente l'esattezza dei calcoli di cui sopra.

Stando a un ignoto ingegnere che ha fatto la soffiata, infatti, testando la scheda Titan V in determinate condizioni si sopraggiunge a conclusioni non sempre corrette: la "fonte" ha testato quattro GPU Titan V identiche, stressando l'hardware con particolari carichi computazionali come la simulazione dell'interazione fra una proteina e un enzima.

Visto che la simulazione è identica, in teoria tutti i test dovrebbero portare agli stessi risultati; e invece, due delle quattro GPU Titan V analizzate hanno riportato errori nei calcoli il 10% delle volte. Un'evenienza che, a dire dell'ignoto ingegnere, non si era mai verificata con le generazioni di GPU precedenti.
NVIDIA Titan V, calcolo scientifico ma non troppo

Stando agli esperti, il problema delle GPU Titan V non è software ma hardware: in questo genere di prodotti NVIDIA tende a spingere al limite il proprio hardware per estrarre le massime prestazioni possibili, e nel caso di Titan V la casa californiana avrebbe davvero esagerato provocando la comparsa di errori fatali nel frame buffer integrato.

Il problema degli errori di calcolo in Titan V è ancora più grave se si considera la natura "professionale" delle schede, e a quanto pare non è limitato a una sola partita di schede ma riguarda il design della GPU. In passato, casi del genere erano stati risolti da NVIDIA con la distribuzione di una patch, ora si attendono notizie sull'eventuale update software per i calcoli fallati di Titan V.

Alfonso Maruccia
fonte immagine
Notizie collegate
10 Commenti alla Notizia NVIDIA Titan V, calcolo scientifico ma non troppo
Ordina
  • Come diavolo fa un componente elettronico a sbagliare il 10% delle volte un calcolo?

    O lo sbaglia sempre, o non lo sbaglia mai.

    A meno che nella componentistica non vi sia una componente analogica che dipende dal tempo atmosferico o dalle congiunzioni astrali.

    Boh...
  • - Scritto da: panda rossa
    > Come diavolo fa un componente elettronico a
    > sbagliare il 10% delle volte un
    > calcolo?
    >
    > O lo sbaglia sempre, o non lo sbaglia mai.
    >
    > A meno che nella componentistica non vi sia una
    > componente analogica che dipende dal tempo
    > atmosferico o dalle congiunzioni astrali.
    >
    > Boh...

    pur facendo calcoli "digitali" tutti i componenti, essendo fisici, sono di conseguenza "analogici". Intendo dire che ogni singolo transistor ha il suo grado di impurezza nei suoi costituenti basilari (silicio "drogato") per cui puo' darsi che, in particolari condizioni (eccesso di riscaldamento, sovravoltaggio, frequenza di clock spinta ai limiti, ecc) ci possano essere dei "glitch" che cambiano uno zero in un uno e viceversa, fanno sballare i conti.
    anche l'elettronica di contorno (resistemze, diodi, condensatori, ecc) ha limiti di tolleranza, e se li spingi troppo, anche essi diventano inaffidabili.
    Dovrebbero rifare le prove a frequenze piu' basse e man mano spingere al limite l'hardware per vedere se gli errori aumentano con l'avvicinarsi dell'hardware ai suoi limiti di funzionamento.


    PS: e' il primo post serio che faccio su PI da vari giorni a questa parte... saro' mica malato?
    non+autenticato
  • - Scritto da: ...
    > - Scritto da: panda rossa
    > > Come diavolo fa un componente elettronico a
    > > sbagliare il 10% delle volte un
    > > calcolo?
    > >
    > > O lo sbaglia sempre, o non lo sbaglia mai.
    > >
    > > A meno che nella componentistica non vi sia una
    > > componente analogica che dipende dal tempo
    > > atmosferico o dalle congiunzioni astrali.
    > >
    > > Boh...
    >
    > pur facendo calcoli "digitali" tutti i
    > componenti, essendo fisici, sono di conseguenza
    > "analogici". Intendo dire che ogni singolo
    > transistor ha il suo grado di impurezza nei suoi
    > costituenti basilari (silicio "drogato") per cui
    > puo' darsi che, in particolari condizioni
    > (eccesso di riscaldamento, sovravoltaggio,
    > frequenza di clock spinta ai limiti, ecc) ci
    > possano essere dei "glitch" che cambiano uno zero
    > in un uno e viceversa, fanno sballare i
    > conti.
    > anche l'elettronica di contorno (resistemze,
    > diodi, condensatori, ecc) ha limiti di
    > tolleranza, e se li spingi troppo, anche essi
    > diventano
    > inaffidabili.
    > Dovrebbero rifare le prove a frequenze piu' basse
    > e man mano spingere al limite l'hardware per
    > vedere se gli errori aumentano con l'avvicinarsi
    > dell'hardware ai suoi limiti di
    > funzionamento.
    >
    >
    > PS: e' il primo post serio che faccio su PI da
    > vari giorni a questa parte... saro' mica
    > malato?

    sono andato a leggere l'originale e

    "The thinking behind that hypothesis is that companies like NVIDIA push their higher end hardware to the limit to squeeze the most amount of performance possible out of their gear. In this case, the industry vet thinks NVIDIA might be pushing the Titan V too hard, and in a way that is causing memory to cough up hairball in certain situations."

    appunto. se spingi troppo l'hardware, ti ritrovi con comportamenti "erratici" che si manifestano in modo casuale.
    C.V.D.
    non+autenticato
  • - Scritto da: ...
    > - Scritto da: ...
    > > - Scritto da: panda rossa
    > > > Come diavolo fa un componente elettronico a
    > > > sbagliare il 10% delle volte un
    > > > calcolo?
    > > >
    > > > O lo sbaglia sempre, o non lo sbaglia mai.
    > > >
    > > > A meno che nella componentistica non vi sia
    > una
    > > > componente analogica che dipende dal tempo
    > > > atmosferico o dalle congiunzioni astrali.
    > > >
    > > > Boh...
    > >
    > > pur facendo calcoli "digitali" tutti i
    > > componenti, essendo fisici, sono di conseguenza
    > > "analogici". Intendo dire che ogni singolo
    > > transistor ha il suo grado di impurezza nei suoi
    > > costituenti basilari (silicio "drogato") per cui
    > > puo' darsi che, in particolari condizioni
    > > (eccesso di riscaldamento, sovravoltaggio,
    > > frequenza di clock spinta ai limiti, ecc) ci
    > > possano essere dei "glitch" che cambiano uno
    > zero
    > > in un uno e viceversa, fanno sballare i
    > > conti.
    > > anche l'elettronica di contorno (resistemze,
    > > diodi, condensatori, ecc) ha limiti di
    > > tolleranza, e se li spingi troppo, anche essi
    > > diventano
    > > inaffidabili.
    > > Dovrebbero rifare le prove a frequenze piu'
    > basse
    > > e man mano spingere al limite l'hardware per
    > > vedere se gli errori aumentano con l'avvicinarsi
    > > dell'hardware ai suoi limiti di
    > > funzionamento.
    > >
    > >
    > > PS: e' il primo post serio che faccio su PI da
    > > vari giorni a questa parte... saro' mica
    > > malato?
    >
    > sono andato a leggere l'originale e
    >
    > "The thinking behind that hypothesis is that
    > companies like NVIDIA push their higher end
    > hardware to the limit to squeeze the most amount
    > of performance possible out of their gear. In
    > this case, the industry vet thinks NVIDIA might
    > be pushing the Titan V too hard, and in a way
    > that is causing memory to cough up hairball in
    > certain
    > situations."
    >
    > appunto. se spingi troppo l'hardware, ti ritrovi
    > con comportamenti "erratici" che si manifestano
    > in modo
    > casuale.
    > C.V.D.

    Ogni componente ha un range di ambientazione entro il quale e' certificato per operare (temperatura, voltaggio, amperaggio, etc...)

    Il range di ambientazione dell'intera scheda deve adeguarsi a quello dei singoli componenti.

    Quindi, o non hanno tenuto conto dei limiti operativi dei singoli componenti, oppure hanno raccontato balle dicendo che la scheda puo' operare in ambienti fuori dai detti limiti.

    Mi sembra comunque ancora strano che possa sbagliare: se un componente lavora fuori dai limiti ambientali per cui e' stato disegnato, o fonde o non funziona, causando il blocco dell'intera scheda, non l'errore casuale ogni tanto.
  • Non vanno sottovalutati i "disturbi" elettromagnetici tra i vari componenti che spesso sono imprevedibili (anche in condizioni perfettamente normali di funzionamento e/o temperatura).
    non+autenticato
  • - Scritto da: panda rossa
    > - Scritto da: ...
    > > - Scritto da: ...
    > > > - Scritto da: panda rossa
    > > > > Come diavolo fa un componente
    > elettronico
    > a
    > > > > sbagliare il 10% delle volte un
    > > > > calcolo?
    > > > >
    > > > > O lo sbaglia sempre, o non lo
    > sbaglia
    > mai.
    > > > >
    > > > > A meno che nella componentistica
    > non vi
    > sia
    > > una
    > > > > componente analogica che dipende
    > dal
    > tempo
    > > > > atmosferico o dalle congiunzioni
    > astrali.
    > > > >
    > > > > Boh...
    > > >
    > > > pur facendo calcoli "digitali" tutti i
    > > > componenti, essendo fisici, sono di
    > conseguenza
    > > > "analogici". Intendo dire che ogni
    > singolo
    > > > transistor ha il suo grado di impurezza
    > nei
    > suoi
    > > > costituenti basilari (silicio
    > "drogato") per
    > cui
    > > > puo' darsi che, in particolari
    > condizioni
    > > > (eccesso di riscaldamento,
    > sovravoltaggio,
    > > > frequenza di clock spinta ai limiti,
    > ecc)
    > ci
    > > > possano essere dei "glitch" che
    > cambiano
    > uno
    > > zero
    > > > in un uno e viceversa, fanno sballare i
    > > > conti.
    > > > anche l'elettronica di contorno
    > (resistemze,
    > > > diodi, condensatori, ecc) ha limiti di
    > > > tolleranza, e se li spingi troppo,
    > anche
    > essi
    > > > diventano
    > > > inaffidabili.
    > > > Dovrebbero rifare le prove a frequenze
    > piu'
    > > basse
    > > > e man mano spingere al limite
    > l'hardware
    > per
    > > > vedere se gli errori aumentano con
    > l'avvicinarsi
    > > > dell'hardware ai suoi limiti di
    > > > funzionamento.
    > > >
    > > >
    > > > PS: e' il primo post serio che faccio
    > su PI
    > da
    > > > vari giorni a questa parte... saro' mica
    > > > malato?
    > >
    > > sono andato a leggere l'originale e
    > >
    > > "The thinking behind that hypothesis is that
    > > companies like NVIDIA push their higher end
    > > hardware to the limit to squeeze the most
    > amount
    > > of performance possible out of their gear. In
    > > this case, the industry vet thinks NVIDIA
    > might
    > > be pushing the Titan V too hard, and in a way
    > > that is causing memory to cough up hairball
    > in
    > > certain
    > > situations."
    > >
    > > appunto. se spingi troppo l'hardware, ti
    > ritrovi
    > > con comportamenti "erratici" che si
    > manifestano
    > > in modo
    > > casuale.
    > > C.V.D.
    >
    > Ogni componente ha un range di ambientazione
    > entro il quale e' certificato per operare
    > (temperatura, voltaggio, amperaggio,
    > etc...)
    >
    > Il range di ambientazione dell'intera scheda deve
    > adeguarsi a quello dei singoli
    > componenti.
    >
    > Quindi, o non hanno tenuto conto dei limiti
    > operativi dei singoli componenti, oppure hanno
    > raccontato balle dicendo che la scheda puo'
    > operare in ambienti fuori dai detti
    > limiti.
    >
    > Mi sembra comunque ancora strano che possa
    > sbagliare: se un componente lavora fuori dai
    > limiti ambientali per cui e' stato disegnato, o
    > fonde o non funziona, causando il blocco
    > dell'intera scheda, non l'errore casuale ogni
    > tanto.

    una scheda elettronica non e' un "uno" unico ma e' composta da N parti, ognuna delle quali ha un suo % di tolleranza nel relativo intervallo di funzionamento. Puo' capitare (e lo so perche e' capitato a me) che le varie % di tolleranza del vari elementi, combinandosi insieme, portino al risultato di avere una scheda fallata ogni X di schede funzionanti.

    Ricordo quando c'erano i PIC quarzabili a 4MHz o a 20MHz.
    Quelli certificati per i 4Mhz erano gli "scarti" di quelli che non avevano passato la certificazione per la velocita' di 20Mhz. Come era possibile, dato che la linea di produzione e' la stessa e che - teoricamente - ogni microcontrollore e' identico agli altri? proprio perche un conto e' "teoricamente" e un conto e' "praticamente".

    poi quelli a 4Mhz li si poteva spingere a 6-8Mhz, ma non per questo potevi essere sicuro che funzionavano sempre e comunqe in ogni periferica disponibile a bordo.
    non+autenticato
  • Io mi chiedo: ma perchè ti senti in dovere di pontificare su argomenti di cui non capisci un'acca?

    Sul fatto che tu un semiconduttore non sappia nemmeno cosa sia non è opinabile, visto la tua uscita "se un componente lavora fuori dai limiti ambientali per cui e' stato disegnato, o fonde o non funziona". Cose come derating, soft error o SEU servono proprio a coprire quel mondo che c'è ditro al fatto che l'elettronica digitale può sbagliare.

    Quindi, di nuovo, cosa ti porta non solo ad intervenire in cose su cui non hai alcuna preparazione, ma presentando le tue personalissime opinioni e congetture come fossero fatti acclarati?
    non+autenticato
  • - Scritto da: Punteruolo
    > Io mi chiedo: ma perchè ti senti in dovere di
    > pontificare su argomenti di cui non capisci
    > un'acca?
    >
    > Sul fatto che tu un semiconduttore non sappia
    > nemmeno cosa sia non è opinabile, visto la tua
    > uscita "se un componente lavora fuori dai limiti
    > ambientali per cui e' stato disegnato, o fonde o
    > non funziona". Cose come derating, soft error o
    > SEU servono proprio a coprire quel mondo che c'è
    > ditro al fatto che l'elettronica digitale può
    > sbagliare.
    >
    > Quindi, di nuovo, cosa ti porta non solo ad
    > intervenire in cose su cui non hai alcuna
    > preparazione, ma presentando le tue
    > personalissime opinioni e congetture come fossero
    > fatti acclarati?

    panda si sente in diritto di dire qualunque cosa su qualunque argomento. il fatto che spesso dica cazzate non gliene frega niente, il fatto di essere rimbrottato sul fatto che dica cazzate, lo galvanizza in quanto, sentendosi attaccato, pensa automaticamente "allora ho ragione". Con panda non puoi combattere perche lui fissa le regole, e quendo esse si ritorcono contro di lui, semplicemente le cambia. lascialo stare.
    non+autenticato
  • Se si parlava di hardware open-source probabilmente avrebbe detto che non era la scheda grafica a dare risultati sbagliati ma che era l'analista a sbagliare (o a voler sbagliare) l'analisi o peggio ancora che la matematica non è una scienza esatta.
    non+autenticato
  • - Scritto da: panda rossa
    > Come diavolo fa un componente elettronico a
    > sbagliare il 10% delle volte un
    > calcolo?
    >
    > O lo sbaglia sempre, o non lo sbaglia mai.
    >
    > A meno che nella componentistica non vi sia una
    > componente analogica che dipende dal tempo
    > atmosferico o dalle congiunzioni
    > astrali.
    >
    > Boh...

    panda che dimonstra di non sapere un tubo su come funzionano i componenti elettronici: segnato!

    cocomero, la dicotomoia "o funziona o non funziona" cioe "o 0 o 1" funziona solo in un ristrettissimo ambito della realta'! tutto quello che ci sta in mezzo tra "funziona" e "non-funziona" dove lo lasci? il mondo e' analogico, non digitale Sorride
    non+autenticato