Torna indietro   Hardware Upgrade Forum > Componenti Hardware > Schede Video > Schede Video - Discussioni generali

Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare
Mova Z70 Ultra Complete è un robot aspirapolvere che coniuga un'aspirazione potente e un lavaggio con rullo a logica di intelligenza artificiale che guida al meglio nella pulizia di casa: rulli e spazzole estensibili a pulire gli angoli e una base di ricarica che lava e ripristina il robot al emglio delle sue funzionalità dopo ogni azione di pulizia
Recensione Google Pixel 11: non ha l'HiLight dei Pro, ma è il Pixel più equilibrato di sempre
Recensione Google Pixel 11: non ha l'HiLight dei Pro, ma è il Pixel più equilibrato di sempre
Abbiamo provato Google Pixel 11, il più accessibile della nuova gamma: chip Tensor G6 condiviso con i modelli Pro, fotocamera 48 MP con Magic Capture e Stili Fotografici, display Actua da 3000 nit e batteria da 4985 mAh. Ecco come si comporta nell'uso quotidiano, e cosa cambia davvero rispetto a Pixel 11 Pro e Pro XL
Google Pixel 11 Pro XL: fotocamera al top, batteria indietro. Luci e ombre del nuovo flagship
Google Pixel 11 Pro XL: fotocamera al top, batteria indietro. Luci e ombre del nuovo flagship
Google Pixel 11 Pro XL debutta in Italia con il nuovo Tensor G6, lo Zoom Pro fino a 120x, il display Super Actua da 3600 nit e la new entry HiLight riservata ai modelli Pro: lo abbiamo provato in anteprima per diversi giorni prima del lancio commerciale, tra fotocamera generativa, ricarica ancora indietro rispetto ai rivali e un prezzo che parte da 1399 euro
Tutti gli articoli Tutte le news

Vai al Forum
Discussione Chiusa
 
Strumenti
Old 29-11-2009, 13:57   #8501
eXeS
Senior Member
 
L'Avatar di eXeS
 
Iscritto dal: Mar 2004
Città: Parma
Messaggi: 5959
Quote:
Originariamente inviato da skizzo99999999 Guarda i messaggi
Penso proprio di si. A dire il vero mi è venuto in mente un possibile problema che forse impedisce (proprio a causa dell'arrotondamento) la trasformazione MADD-FMA. Non mi sembra concettualmente complicatissimo da far capire (ma lo pensavo anche per il compilatore...), ma sarebbe comunque un discorso fine a se stesso. Se a qualcuno interessa ci posso provare
A me interessa
__________________
case: phanteks eclipse 500a - cpu: 9800x3d - aio: arctic liquid freezer iii 360 - mobo: msi b650 gaming plus wifi - ram: g.skill flare x5 6000 cl30 - gpu: rtx 5080 fe - storage: samsung 980pro 1tb, 960 evo 500gb, 850pro 512gb - psu: enermax revolution d.f. x 850w
eXeS è offline  
Old 29-11-2009, 14:07   #8502
Pike79
Member
 
L'Avatar di Pike79
 
Iscritto dal: Jul 2009
Città: Torino
Messaggi: 222
Quote:
Originariamente inviato da eXeS Guarda i messaggi
A me interessa
Idem!
Pike79 è offline  
Old 29-11-2009, 14:13   #8503
leoneazzurro
Senior Member
 
Iscritto dal: Jan 2003
Messaggi: 10395
x skizzo: non é detto che lo shader sia compilato prima, potrebbe essere anche compilato in tempo reale, in quel caso ci sarebbe un ulteriore overhead dovuto all´analisi necessaria per la sostituzione. Dipende probabilmente dall´applicazione.

Quote:
Originariamente inviato da Ratatosk Guarda i messaggi
Ah ecco, invece di essere un'operazione diversa ma concettualmente simile (MADD vs FMA) erano operazionei del tutto diverse.

A questo punto resta quindi solo da capire se applicare delle FMA al posto delle MADD funziona oppure gli errori introdotti possono essere distruttivi a tal punto da renderlo impossibile, nel qual caso l'unica alternativa è farsi le MADD in due passi. Giusto?
Quote:
Originariamente inviato da eXeS Guarda i messaggi
Più che parlare di errori introdotti sarebbe corretto parlare di errori mancanti, e bo, mi sembra così assurdo che una operazione (FMA) che produce risultati più precisi in tempi più rapidi, sia meno preferibile a due operazioni che producono lo stesso risultato (MUL-ADD) in tempi più lunghi.

Certo, il colore del pixel risultante usando FMA al posto di MADD (MUL-ADD) potrebbe essere diverso, ma approssimerà meglio quello che avrebbe dovuto essere il vero colore finale.
L´operazione é piú precisa, certo, ma rispetto alla MADD c´é una differenza nel risultato che nel caso di shader lunghi potrebbe portare a differenze non trascurabili nel risultato finale e il problema diventa se il pixel che restituisce uno shader con FMA sia quello che lo sviluppatore intendeva quando ha programmato lo shader con MADD (magari con tecniche di compensazione dell´errore che adesso é di diversa entitá). In casi particolari si potrebbero avere variazioni di gamma colore oppure dei veri e propri artefatti, bisogna vedere quanti questi casi particolari sranno in realtá.
__________________
PC Specialist Recoil 17 - 13900HX - 32 GB DDR5 5200 - Geforce RTX 4080 Mobile 12Gb 175W - 1 SSD Corsair Core XT MP600 2 TB NVMe - 1SSD Solidigm P41+ 2TB NVMe
leoneazzurro è offline  
Old 29-11-2009, 15:30   #8504
molochgrifone
Senior Member
 
L'Avatar di molochgrifone
 
Iscritto dal: Feb 2007
Città: Zena Red & Blue
Messaggi: 5010
Quote:
Originariamente inviato da appleroof Guarda i messaggi
appunto ma la 5970 non ci va



immagino c'entri anche la dimensione del chip in sè, per quello speravo che con un die-shrink futuro si tornasse a lunghezze complessive minori

cmq siamo del tutto OT
Quote:
Originariamente inviato da persa Guarda i messaggi
ma forse nel CM690 II ci andrà. fotina http://www.coolermaster.com/upload/360/RC-690K_360.swf
Siamo OT, ma c'è il modo di farla entrare anche nel CM attuale utilizzando il modulo 4-in-3 per gli hard disk e rimuovendo la gabbia degli HD
__________________
MY liquidcooled PC
molochgrifone è offline  
Old 29-11-2009, 15:45   #8505
persa
Bannato
 
Iscritto dal: Oct 2009
Messaggi: 6442
Quote:
Originariamente inviato da molochgrifone Guarda i messaggi
Siamo OT, ma c'è il modo di farla entrare anche nel CM attuale utilizzando il modulo 4-in-3 per gli hard disk e rimuovendo la gabbia degli HD
insomma devi svuotare mezzo case per farcela stare
persa è offline  
Old 29-11-2009, 15:49   #8506
molochgrifone
Senior Member
 
L'Avatar di molochgrifone
 
Iscritto dal: Feb 2007
Città: Zena Red & Blue
Messaggi: 5010
Quote:
Originariamente inviato da persa Guarda i messaggi
insomma devi svuotare mezzo case per farcela stare
In realtà è un'operazione abbastanza facile e veloce, che inoltre migliora il raffreddamento degli HD
__________________
MY liquidcooled PC
molochgrifone è offline  
Old 29-11-2009, 19:28   #8507
davide155
Senior Member
 
L'Avatar di davide155
 
Iscritto dal: Jan 2006
Città: Firenze
Messaggi: 18096
Ragazzi insomma non c'è punte news riguardo Fermi?

Sto aspettando queste schede per scegliere la mia prossima vga tra Ati e Nvidia.

Sperando che tornino (almeno Nvidia) a fare delle schede video con lunghezze più contenute come le vecchie G80, e non quelle Limousine che hanno tirato fuori ultimamente, dato che non ne entra nemmeno una nel mio Thermaltake Armor JR
__________________
Amd Ryzen 9950x3D//G.Skill 2x16gb 6000mhz DDR5//RTX 5090 Astral liquid cooled//Asus Strix x870-A//Samsung 990pro Pciex4.0 2tb//Thermaltake ThoughPower 850w//LG C4 oled 42" 144hz 4k//Aquaero 6XT//Edifier S360DB with Topping Dx3Pro+
davide155 è offline  
Old 29-11-2009, 19:30   #8508
appleroof
Senior Member
 
L'Avatar di appleroof
 
Iscritto dal: Oct 2005
Messaggi: 38298
Quote:
Originariamente inviato da davide155 Guarda i messaggi
Ragazzi insomma non c'è punte news riguardo Fermi?

Sto aspettando queste schede per scegliere la mia prossima vga tra Ati e Nvidia.

Sperando che tornino (almeno Nvidia) a fare delle schede video con lunghezze più contenute come le vecchie G80, e non quelle Limousine che hanno tirato fuori ultimamente, dato che non ne entra nemmeno una nel mio Thermaltake Armor JR
quoto


p.s.: ciao, era da molto tempo che non ti vedevo in questi lidi
__________________
Corsair 5000D - Ryzen 7 7700 - Asrock B650E PG - 2x16gb G.Skill Trident Z5 ddr5 6000 mhz - GeForce Rtx 4070Ti S. - Samsung 980 pro 1tb + Crucial mx500 1tb + WD 1tb - Corsair rm850w - LG oled C4 48
le vga che ho avuto
appleroof è offline  
Old 29-11-2009, 19:33   #8509
skizzo99999999
Member
 
Iscritto dal: Oct 2006
Messaggi: 102
Quote:
Originariamente inviato da leoneazzurro Guarda i messaggi
x skizzo: non é detto che lo shader sia compilato prima, potrebbe essere anche compilato in tempo reale, in quel caso ci sarebbe un ulteriore overhead dovuto all´analisi necessaria per la sostituzione. Dipende probabilmente dall´applicazione.
gli shader sono si compilati in tempo reale (cioè quando l'applicazione/gioco è partita, quindi a run-time), ma all'atto del caricamento degli stessi, non quando vengono utilizzati (per più volte per frame) all'interno del loop di rendering. E non è che dipende dall'applicazione, è proprio così sempre, a meno che uno non richiami il caricamento e le successive fasi compilazione/link di ogni shader ogni volta prima di utilizzarli. E' proprio questo il motivo del contendere delle ultime pagine, ma ormai sull'argomento mi sembra sia stato detto tutto.

Per quanto riguarda i possibili problemi dell'arrotondamento, quello che mi è venuto in mente è l'integrazione tra la fixed pipeline e quella programmabile.
Fino all'arrivo delle directx 8.1/9 e opengl 2.0 le GPU non erano programmabili, per cui gli algoritmi che potevano essere utilizzati (ad esempio per l'illuminazione) erano fissi e sempre gli stessi per tutti. Con l'avvento dei pixel e vertex shader programmabili (ora anche geometry shader e compute shader), ognuno può farsi il suo modello di illuminazine utilizzando più o meno risorse, fare i calcoli per vertex o per pixel, ecc... Inoltre si possono fare processare anche altri dati oltre a quelli prettamente geometrici, per farci godere tutti gli effetti di post-processing tipo depth-of-filed, motion blur, ambient occlusion, ecc...
Ovviamente per questione di compatibilità la fixed pipeline (cioè quella non programmabile) è stata mantenuta: non nel senso che ci sono delle unità non programmabili, ma che quando questa funzionalità viene richiesta, viene caricato un codice che fa le stesse operazioni che farebbe una GPU non programmabile. Quest'ultimo concetto è molto importante perchè alcune volte, per alcuni passi di rendering non è necessario accedere a risorse particolari (mi viene in mente ad esempio se uno deve disegnare un HUD con informazioni testuali tipo quello di un fps), per cui un invece che scrivere uno shader di una decina di righe o meno può non usare gli shader e quindi utilizzare le funzioni standard. Ed è qui che può sorgere il problema. Se uno utilizza in uno shader un "risultato" prodotto da un passo "programmabile" con uno proveniente da un calcolo di un passo "fixed", potrebbe succedere che numeri che dovrebbero essere uguali, non lo sono a causa dell'utilizzo di unità diverse che effettuano calcoli a precisione diverse. Per fare un esempio terra terra, un'istruzione che si fa sempre nel vertex shader è:

gl_Position = ftransform();

che prende le coordinate del vertice in esame e le trasforma dal "world space" in "clip space" utilizzabili nel pixel shader. Questa operazione emula il comportamento della fixed e può essere svolta "a mano" operando direttamente sulle matrici e vettori:

gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;

teoricamente dovrebbero portare allo stesso risultato, ma visto che è possibile che una GPU abbia "ottimizzato" in un certo in modo quella operazione matematica, possono esserci delle precisioni "diverse". L'emulazione dlla fixed pipeline garantisce che avrò sempre gli stessi risultati invece. Un esempio tipico di artefatti che possono nascere da cose del genere sono gli “Z-fighting”. Mettiamo che io abbia 2 poligoni paralleli (o mooooolto vicini) alla stessa distanza dalll'osservatore che si trovano almeno in parte sovrapposti (quindi più pixel che li compongono hanno le stesse coordinate z, quelle relative alla profondità). Potrebbe accadere che alcuni pixel siano rilevati come davanti e altri dietro, formado un effetto di miscuglio di colori che viene visto come artefatto.

Il problema nasce prorpio da qui. Siccome io devo almeno far funzionare le applicazioni sulla mia scheda, mi sembra ragionevole che se verranno sostituite le MADD con le FMA, verranno anche sostituite nei calcoli che coinvolgono l'emulazione della fixed pipeline, sennò i risultati non sarebbero più confrontabili e si creerebbero probabilmente situazioni come quella descritta in precedenza. Così facendo però, non avremo più i risultati derivanti dalla fixed uguali a quelli delle altre schede, e non so se questo sia accettabile, cioè ci siano dei vincoli numerici di precisione minima e massima da rispettare in questa modalità per essere "standard".

Non so se sono stato chiarissimo ma spero che si capisca il succo del discorso
skizzo99999999 è offline  
Old 29-11-2009, 19:41   #8510
davide155
Senior Member
 
L'Avatar di davide155
 
Iscritto dal: Jan 2006
Città: Firenze
Messaggi: 18096
Quote:
Originariamente inviato da appleroof Guarda i messaggi
quoto


p.s.: ciao, era da molto tempo che non ti vedevo in questi lidi
Grande appleroof, piacere di rivederti
__________________
Amd Ryzen 9950x3D//G.Skill 2x16gb 6000mhz DDR5//RTX 5090 Astral liquid cooled//Asus Strix x870-A//Samsung 990pro Pciex4.0 2tb//Thermaltake ThoughPower 850w//LG C4 oled 42" 144hz 4k//Aquaero 6XT//Edifier S360DB with Topping Dx3Pro+
davide155 è offline  
Old 29-11-2009, 19:41   #8511
Milotto
Senior Member
 
L'Avatar di Milotto
 
Iscritto dal: Jan 2002
Città: Napoli
Messaggi: 2389
Quote:
Originariamente inviato da leoneazzurro Guarda i messaggi
Quello era NV40 (la serie 6). La NV30 disponeva del 2.0a (un superset del 2.0)
....yes mi sono confuso...ricordavo tutta una serie di screenshoots qui su hwupgrade dove veniva analizzata la resa qualitativa degli shader di Farcry eseguiti con FP16 (vistosi problemi di banding) e eseguiti con FP32 (framerate scadente)....
Lo SM 3.0 era causa di una altre querelle....HDR or not?
Milotto è offline  
Old 29-11-2009, 20:21   #8512
M4R1|<
Senior Member
 
L'Avatar di M4R1|<
 
Iscritto dal: Jul 2006
Messaggi: 4801
Quote:
Originariamente inviato da Ratatosk Guarda i messaggi
In realtà al cambio di pp il bus è la cosa che si restringe meno
Si be la dimensione del bus è più o meno sempre quella infatti con pp sempre più piccoli o si aumentano anche le dimensioni del chip (quindi maggiori transistor) oppure fisicamente nn ci stanno i bus che ci stavano nella precedente generazione (vedi 4870 e 5770)

Quote:
Originariamente inviato da Kharonte85 Guarda i messaggi
Non credo che sia paragonabile...nv 30 era deficitario in parecchi aspetti rispetto a R300.

E' praticamente certo che le dimensioni saranno identiche alle gtx 280 &co, ricordo per l'ennesima volta che il TDP della gtx 280 era ben 236W e il chip @65nm vantava una superficie maggiore quindi niente fa pensare che vedremo schede più lunghe, sezioni di alimentazioni mai viste e/o con dissipatori diversi da quelli visti sino ad ora
meglio così, cmq per quando mi rigurda ribadisco quando detto, e cioè che le soluzioni estreme, che garantiscono il top delle performance, anche se sforano dai 30cm nn sono poi così problematiche
__________________
2x Xeon E5-2630 v4 ES QK3G - SuperMicro X10DRi - 128GB Crucial LRDIMM 2400MHz - LSI 9211-8i - 8x Samsung 850 EVO 500GB
Core i7-7700k - Cooler Master MasterLiquid Pro 280 - Gigabyte Z270X Gaming 7 - 32GB Corsair Dominator 3000MHz CL15 - EVGA GTX 1070 FTW - Crucial MX300 525GB

Twitter - LinkedIn
M4R1|< è offline  
Old 29-11-2009, 20:46   #8513
leoneazzurro
Senior Member
 
Iscritto dal: Jan 2003
Messaggi: 10395
Quote:
Originariamente inviato da skizzo99999999 Guarda i messaggi
gli shader sono si compilati in tempo reale (cioè quando l'applicazione/gioco è partita, quindi a run-time), ma all'atto del caricamento degli stessi, non quando vengono utilizzati (per più volte per frame) all'interno del loop di rendering. E non è che dipende dall'applicazione, è proprio così sempre, a meno che uno non richiami il caricamento e le successive fasi compilazione/link di ogni shader ogni volta prima di utilizzarli.
Si, non intendevo compilati piú volte al frame, pensavo volessi dire che si puó avere lo shader precompilato giá prima dell esecuzione (ma cosí si perdono molte ottimizzazioni). Comunque anche l´ottimizzazione on-chip non é da sottovalutare
__________________
PC Specialist Recoil 17 - 13900HX - 32 GB DDR5 5200 - Geforce RTX 4080 Mobile 12Gb 175W - 1 SSD Corsair Core XT MP600 2 TB NVMe - 1SSD Solidigm P41+ 2TB NVMe
leoneazzurro è offline  
Old 29-11-2009, 21:35   #8514
yossarian
Senior Member
 
Iscritto dal: Mar 2001
Messaggi: 5390
Quote:
Originariamente inviato da skizzo99999999 Guarda i messaggi
ho sperato inutilmente, ma pazienza. Ho sempre detto che il compilatore GLSL era all'interno del driver e dici bene, "che comprende il compiler e il linker, che serve da interfaccia con l'applicazione, che si occupa di fare la traduzione e che è scritto, come dice bene eXeS, in un codice che giri sulla cpu". Quello che è standard è il codice GLSL, non il codice compilato che esce dal compilatore del driver, questo sarà diverso per ogni scheda video. Dal diagramma della prima imamgine si vede bene che al driver arriva il source dello shader (che è testo) ed esce l'executable code che POI viene eseguito dalla GPU. La frase:

"the net resukt of this assumption is that graphics hardware vendors will implement the majority of the OGSL compiler and linker. Along with the OGL drivers itself, this software will tipically be included as part of the graphics driver installation package that is provided by a graphics hardware vendor"

dice che il compilatore è fornito dal produttore della scheda attraverso il driver che ognuno si scarica da internet. Mi sembra di continuare a dire questo da una vita... è proprio per questo che ogni scheda si ritrova il suo compilatore che riceve un source GLSL STANDARD e sputa un codice diverso per ogni scheda che si trova sotto.
tutto giusto in teoria; ma poichè con la sola teoria non si costruice niente, veniamo alla pratica. Secondo il tuo ragionamento, nVidia (perchè di nVidia stiamo parlando), mette mano al suo compilatore custom o ne progetta uno nuovo ogni volta che deve supportare una nuova architettura. Se ciò fosse vero, con CUDA, progetto su cui nVIdia sta lavorando da anni, dovrebbe aver messo a punto compilatore e ottimizzatore ad hoc per i proprio chip (si tratta di supportare solo quelli a shader unificati). Sentiamo cosa ha da dire proprio nVidia in proposito, premettendo ceh CUDA non significa solo "driver unificati" ma è un progetto che abbraccia l'architettura del SW e la microarchitettura dell'HW che deve far girare quel SW (l'appellativo CUDA CORE delle unità di calcolo di fermi fa esplicito riferimento, non a caso, a questa architettura)
The CUDA compiler driver splits an application into two parts, one which is run on the host CPU, and the other which is run on the GPU. The CPU code uses the default host compiler, while the GPU code uses a new toolchain that includes Open64.

Quindi il compiler ad alto livello non fa altro che dividere in due parti l'applicazione, facendo girare una parte sul compiler di default della cpu e l'altra su un compiler che fa uso di Open64. Il primo ci interessa poco, ai fini di questo discorso (utilizza istruzioni standard della cpu e dell'API su cui gira).
Vediamo il secondo.
NVIDIA already had a well-tuned low-level compiler for graphics codes, called OCG (Optimized Code Generator). This handles register allocation, scheduling, and peephole optimizations. This compiler is built into the graphics driver for doing just-in-time compilation of graphic codes.


qui parla di un optimizer a basso livello e di tipo JIT.

Because graphics codes tend to be relatively simple compared to general purpose C code (control flow has only recently been added to DirectX), and due to the compile-time limitations of needing to compile at runtime, it was decided that CUDA needed a high-level optimizer to handle the compute codes

There were three options for doing this: write a new proprietary optimizer, use GCC, or use Open64. Writing a new optimizer was ruled out because it would require too many man years to develop. So the choice was between using GCC or Open64. Because of Open64's reputation for optimization (and with my encouragement), we chose Open64.


qui si esclude la possibilità di creare un optimizer proprietario ad alto livello perchè ciò avrebbe richiesto troppi anni. Quindi si è scelto quello open64 STANDARD.
Ricapitolando: la cpu elabora codice non ottimizzato da nVidia e per la gpu si fa uso di un compiler ad alto livello Open64 STANDARD (per sistemi basati su unix, per win ce n'è un altro). Questo esempio, fatto per CUDA vale anche per OpenGL o DirectX perchè, a basso livello, si fa uso sempre dello stesso optimizer OCG (optimize code generator).
In più, il modello di ottimizzazione (che non definirei proprio at runtime) da voi proposto (la cpu fornisce in fase di compilazione il codice alla gpu che lo riceve già bello e pronto per essere elaborato) è giudicato inefficiente dalla stessa nVidia che preferisce ottimizzazioni JIT. Motivi di spreco di risorse, lentezza nel trasferimento dati tra cpu vram e gpu, difficoltà nel mettere le mani su compiler standard o nel progettarne uno custom per intero, questioni di portabilità e di compatibilità con i prodotti passati e futuri con semplici modifiche del codice dell'OCG, credo siano motivi più che sufficienti. E se non siete d'accordo protestate con nVidia.
Comunque, proseguiamo: il codice sorgente destinato alla gpu è compilato (non ottimizzato), dunque, da un compiler STANDARD e fornisce istruzioni per PTX (parallel thread execution) che è una VM installata su gpu con una sua ISA. La prima versione 1.0 risale ai tempi di G80 e con fermi si arriva alla versione 2.0. PTX provvede a ricompilare di nuovo il codice lanciando le ottimizzazioni tramite OCG. Questo tool è in grado di riconoscere il tipo di gpu e, di conseguenza, effettuare tutte le ottimizzazioni necessarie pr quella specifica architettura (cosa che una cpu che non ha accesso all'interno della gpu non potrà mai fare). Tra queste ottimizzazioni ci sono anche quelle relative all'uso di preephole che sono delle finestre che permettono di individuare parti di codice su cui intervenire. In questo caso possono permettere di individuare le MADD e effettuare la sostituzione con le FMA in modalità JIT all'interno della gpu.
"Casualmente" , Fermi contiene alcune ottimizzazioni atte a velocizzare il thread switching (ad esempio il dual warp scheduler) oltre ad avere una notevole potenza di calcolo con gli interi (necessaria ad effettuare preephole optimization); infine, nVidia annovera tra i "device runtime components" (col termine device indica la gpu mentre la cpu è indicata come host) proprio quelle atomic ops con interi (and, or, contronto) che servono per le preephole optimization (e quindi per le operazioni di instruction replacement) e specifica che queste sono disponibili dalla relaease 1.1 della PTX VM (quindi G80 è escluso ma fermi sembra rientrarci alla stragrande ).

A questo punto, sei liberissimo di continuare a credere che i driver facciano il "miracolo" di far si che la cpu ottimizzi tutto il codice all'atto della compilazione (hai una visione molto statica delle cose). E che questo avvenga in opengl con compiler custom (ma nVidia pare non voglia perdere tempo a scrivere un compiler per opengl o per open64, o per qualsivoglia piattaforma e preferisce affidarsi a compiler standard) e in D3D (non dimentichiamo che parliamo di fermi e giochi e, quindi soprattutto DX) con la modifica del compiler standard HLSL (operazione che solo un pazzo andrebbe ad intraprendere, quando ci sono vie più sicure e veloci). L'idea, poi, che la cpu possa eseguire ottimizzazioni JIT è ancora più folle: ti do solo un paio di dati: su GT200 il tempo di accesso medio stimato alla vram (non alla ram di sistema, quindi ma a quella video) era di 400-800 cicli, contro i 2-3 cicli di tempo di accesso ai registri interni e i circa 30-40 di accesso alle cache interne). Non oso pensare a quali sarebbero gli access time attraverso ram di sistema, bus pci-ex. e vram. Ci pensi ai disastri di un'ottimizzazione al volo fatta via cpu con, ad esempio, shader procedurali, o istruzioni di tessellation (con vertici fissi e funzione matematica che descrive la superficie da riprodurre) o con istruzioni che generano cascate di dati con cui sono necessarie altrettante istruzioni. Non mi meraviglio che nVidia, avendo a che fare con un processo di tipo dinamico, cerchi di eseguire il maggior numero di operazioni direttamente sulla gpu scaricando, il più possibile, persino la vram, per ridurre le latenze.

Quote:
Originariamente inviato da eXeS Guarda i messaggi
E tutta questa magia chi la fa, il driver, che non è codice scritto in linguaggio binario riconosciuto dalla gpu, ma è codice x86 o x64 eseguito dalla cpu che fra le altre cose, fa delle chiamate dirette al dispositivo grafico.
nessuno ha mai negato che il driver contenga istruzioni per la cpu. Semmai è il contrrio; quello che sostengo è che la cpu non fa una cippa di ottimizzazione all'atto della compilazione e che il driver contiene anche istruzioni per la gpu e sono questa a contenere le ottimizzazioni.

Quote:
Originariamente inviato da eXeS Guarda i messaggi

Un tutorial su come sviluppare un driver elementare e che stampa hello word
http://www.rohitab.com/discuss/index...howtopic=24166

Il driver a differenza di un'applicazione standard ha l'entry point che si chiama DriverEntry, un'applicazione in finestra WinMain, e una DLL DllMain

Il processo di creazione del .sys (che contiene codice binario) passa attraverso

-Compilazione
-Linking

esattamente come il processo di creazione del binario di un exe o dll.
interessante, ma l'utilità ai fini di ciò di cui si discute?

Quote:
Originariamente inviato da eXeS Guarda i messaggi

Aggiungo inoltre, ma se il driver non contenesse codice eseguibile dalla CPU, come cavolo farebbe in funzione del nome dell'exe ad applicare ottimizzazioni specifiche, attivare sli e crossfire, forzare l'uso dell'AA e quant'altro, chi è che fa il test sul nome dell'eseguibile, la GPU ?
cosa che nessuno, ripeto, sta mettendo in dubbio

Quote:
Originariamente inviato da eXeS Guarda i messaggi
Non mi sembra che tu abbia bisogno di alleati , ho dato solo un piccolo contributo per avallare la tesi da te inizialmente ipotizzata e non condivisa da yossarian, secondo la quale il codice del driver può tranquillamente fare il replace della mad prima che lo shader venga inviato alla gpu, con hit prestazionale che si manifesta solo nel momento dell'invio dello shader alla gpu, e non ogni volta che le istruzioni ivi contenute vengono processate dalla gpu.

Se ancora ci fossero dei dubbi sull'affermazione secondo la quale il driver contiene codice eseguibile dalla cpu, basta dissassemblare qualunque .sys, per notare che il disassemblato contiene istruzioni assembler x86

infatti yossarian (e pare anche nVidia, il cui parere, ritengo sia più autorevole, in quanto si parla di Fermi), continua a non condividere la tesi delle ottimizzazioni fatte dalla stessa cpu in fase di compilazione e ritiene improbabili quelle JIT fatte dalla cpu. Insomma, nVidia pensa che meno traffico ci sia nel bus pci-express e meno la cpu (e, addirittura, la vram) interviene e meglio è per tutti. Voi, liberi di pensarla come volete

Ultima modifica di yossarian : 30-11-2009 alle 01:57.
yossarian è offline  
Old 29-11-2009, 21:59   #8515
Foglia Morta
Senior Member
 
L'Avatar di Foglia Morta
 
Iscritto dal: Jul 2005
Messaggi: 7819
Dopo "tanto" tempo quando nessuno se lo aspettava più ritorni con una doppietta , sarai micca parente di Huntelaar
__________________
Sample is selezionated !
Foglia Morta è offline  
Old 29-11-2009, 22:04   #8516
The_SaN
Senior Member
 
L'Avatar di The_SaN
 
Iscritto dal: Jun 2005
Città: Vitória(ES), Brasile
Messaggi: 8155
Quote:
Originariamente inviato da Foglia Morta Guarda i messaggi
Dopo "tanto" tempo quando nessuno se lo aspettava più ritorni con una doppietta , sarai micca parente di Huntelaar






Sono juventino
__________________
Se la vita ti da limoni ... Spremili in occhio a qualcuno e corri!
The_SaN è offline  
Old 29-11-2009, 23:14   #8517
yossarian
Senior Member
 
Iscritto dal: Mar 2001
Messaggi: 5390
Quote:
Originariamente inviato da leoneazzurro Guarda i messaggi
Si, non intendevo compilati piú volte al frame, pensavo volessi dire che si puó avere lo shader precompilato giá prima dell esecuzione (ma cosí si perdono molte ottimizzazioni). Comunque anche l´ottimizzazione on-chip non é da sottovalutare
per ottimizzazioni "al volo" è l'unica strada percorribile.
yossarian è offline  
Old 29-11-2009, 23:50   #8518
Defragg
Senior Member
 
L'Avatar di Defragg
 
Iscritto dal: Mar 2006
Messaggi: 8605
Quote:
Originariamente inviato da The_SaN Guarda i messaggi






Sono juventino
Ci stiamo prendendo solo limoni
__________________
Steam Deck OLED 2 TB | Ryzen 7 7700 — 2x16GB Corsair Dominator Platinum 6400 MHz — PowerColor Hellhound RX 7700 XT
Trattative OK: 1mp3r4t0r, armenico11, Babumba92, CoolBits, Drigerott, gino1221, k.o.z, Macco, Mastermarcox, Mone_82, stacker, Velvet, Vladimiro Bentovich, frupoli, Sheva77, deg626, HcK190, Godmar, Simonxp, LCol84, pp2k, xeno the holy, SamuTnT, fantacaz
Defragg è offline  
Old 30-11-2009, 08:55   #8519
Alex656
Senior Member
 
Iscritto dal: Oct 2005
Città: Palmi
Messaggi: 913
Questa l'avevate letta?
http://www.fudzilla.com/content/view/16601/1/
__________________
PC1:Case CM690 II, Asus Crosshair VI Hero, Ryzen 9 5900x+Noctua NH-D15, 4x8 Gb Gskill Flarex 3200, Samsung EVO 840 256 Gb, Crucial P5 plus 1 Tb NVMe, Pioneer APS-SE20Q 1TB NVMe, Toshiba 3 Tb 7200.12, Asus Dual nVidia GeForce RTX 4070 Super Evo OC, Cooler Master 750W
PC2:Case CM TD500, Asus Tuf Gaming X870 Plus Wifi, Ryzen 7 5800-X3D, Thermalright PA120 SE ARGB, 2x16 Gskill FlareX 5, Crucial T705 1 Tb, Samsung 990 Pro 2 Tb, Asus Tuf Gaming RX 9070 XT OC Edition, ENERMAX Revolution III 850 Watt
Alex656 è offline  
Old 30-11-2009, 09:15   #8520
maurilio968
Senior Member
 
L'Avatar di maurilio968
 
Iscritto dal: Feb 2006
Messaggi: 1659
Quote:
Originariamente inviato da yossarian Guarda i messaggi

infatti yossarian (e pare anche nVidia, il cui parere, ritengo sia più autorevole, in quanto si parla di Fermi), continua a non condividere la tesi delle ottimizzazioni fatte dalla stessa cpu in fase di compilazione e ritiene improbabili quelle JIT fatte dalla cpu. Insomma, nVidia pensa che meno traffico ci sia nel bus pci-express e meno la cpu (e, addirittura, la vram) interviene e meglio è per tutti. Voi, liberi di pensarla come volete
Bene, mi sembra che siamo giunti ad un punto chiarificatore: non è impossibile "ottimizzare" (nel senso in cui intende skizzo) per la singola gpu il fatto è che non è conveniente farlo perchè tale ottimizzazione sarebbe a carico della cpu e quindi troppo lenta.
E lo direbbe la stessa nvidia.

Sicuramente sembra non essere conveniente farlo in directx per i videogames.
Forse in opengl è diverso ed è uno dei motivi per cui i giochi si sono spostati tutti su architettura dx.

Notate i "sembra" ed i condizionali non per mettere in dubbio quanto dice yossarian ma per sottolineare che non vorrei aver capito male io.

Vorrei comunque ringraziare sia Yossarian che skizzo per questa discussione che a me sembra molto interessante.
__________________
ogni minuto muore un imbecille e ne nascono due.

Ultima modifica di maurilio968 : 30-11-2009 alle 09:17.
maurilio968 è offline  
 Discussione Chiusa


Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
Recensione Google Pixel 11: non ha l'HiLight dei Pro, ma è il Pixel più equilibrato di sempre Recensione Google Pixel 11: non ha l'HiLight dei...
Google Pixel 11 Pro XL: fotocamera al top, batteria indietro. Luci e ombre del nuovo flagship Google Pixel 11 Pro XL: fotocamera al top, batte...
Non sai programmare? Ecco cosa si può fare con un LLM e una GeForce RTX 5070 Ti Non sai programmare? Ecco cosa si può far...
Recensione Samsung Galaxy Z Fold8 Ultra: il pieghevole più famoso diventa quasi perfetto Recensione Samsung Galaxy Z Fold8 Ultra: il pieg...
Intel vede positivo: il processo produtt...
GTA VI si mostra in un nuovo video di 26...
L'IA di Anthropic a supporto del quantum...
Offerte Amazon di oggi: portatile HP con...
Kioxia e Sandisk scommettono 31 miliardi...
Tumore all'ipofisi, l'intelligenza artif...
Claude Cowork si sgancia da Chrome: il b...
Ubisoft si scusa per l'errore su Steam: ...
Schiaffo al Pentagono sul caso Anthropic...
Amazon dentro i video YouTube: il link i...
AEM presenta Titan: il motore elettrico ...
NVIDIA COMPASS: gli agenti AI insegnano ...
Il tuo processore ha un punto debole che...
Due scope elettriche TINECO a prezzi int...
Gemini Intelligence si prepara a espande...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 10:22.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v