Problemi accelerazione 2D, schede grafiche a confronto

Abbiamo creato un benchmark e confrontato 15 schede grafiche per analizzare i problemi.

Avatar di Tom's Hardware

a cura di Tom's Hardware

Introduzione

Se non avete ancora letto la prima parte di questo articolo - Accelerazione 2D e Windows, riscontrati gravi problemi - vi consigliamo di farlo perché questa seconda parte si basa su quanto detto e riscontrato nel primo capitolo. Inizialmente abbiamo dato uno sguardo alla storia del 2D in Windows e ai problemi riscontrati con le schede di fascia alta attualmente in commercio.

Ora ci focalizzeremo sull'importanza della GDI (Graphics Device Interface), entrando nei particolari della grafica 2D e presentandovi il nostro benchmark 2D. Per capire i risultati dei test, però, dobbiamo fare un preambolo su alcuni fondamenti teorici.

png

Perché dobbiamo ancora testare la GDI nell'era di Windows 7 e Direct2D?

Riguardo al primo articolo, molti lettori ci hanno scritto che con l'introduzione delle schede video DirectX 10 e Windows Vista, i vecchi metodi GDI per il rendering 2D sono obsoleti. WPF (Windows Presentation Foundation), insieme a Direct2D, sono già disponibili da qualche tempo agli sviluppatori. Ci sono molte buone ragioni, tuttavia, per cui GDI rimane indiscutibilmente rilevante. Per questo motivo, dobbiamo esaminare il suo comportamento e le prestazioni, persino nell'era di Windows 7. Tra le ragioni, troviamo:

  • La GDI supporta le vecchie schede grafiche, mentre Direct2D richiede il supporto delle DirectX 10 o superiori.
  • La GDI è supportata in ogni versione di Windows, mentre Direct2D è disponibile solo in Windows Vista e Windows 7.
  • Ogni applicazione grafica che lavora con Windows XP (e versioni precedenti) usa la GDI.

Molti sviluppatori di software si sono astenuti dal convertire i loro software alle nuove API. Persino oggi, molti sviluppatori continuano a rivolgersi alle ben conosciute librerie di programmazione, anche se sono disponibili nuove tecnologie. La conversione da una libreria a un'altra significa riscrivere e testare nuovamente tutti i moduli di codice coinvolti. Dato che i miglioramenti di prestazioni che si ottengono passando da una vecchia libreria a una nuova potrebbero essere quasi impercettibili, gli sviluppatori evitano anche di fare questi cambiamenti, per meri ragionamenti economici (troppo tempo e sforzo per un risultato contenuto). Se prendete l'implementazione delle Direct2D nei vari componenti di Mozilla Firefox come esempio, avete il senso della tranquillità con cui l'industria del software sta portando avanti questo processo di conversione. Inoltre, per molte aziende sarebbe un suicidio abbandonare gli utenti XP. Tutto ciò si aggiunge a una singola e convincente osservazione: la GDI resterà con noi fino a quando XP non rappresenterà più una parte significativa della comunità degli utenti finali.

Ci sono anche delle ragioni teoriche che spiegano la resistenza della GDI. Il codice dei suoi moduli (quelli che sono inclusi e invocati più spesso nelle applicazioni Windows) non sono completamente "trasportabili". Le API Direct2D, inoltre, consumano più risorse, maggiore potenza e non possono far nulla in più delle Direct3D. Coloro che decidono di non usare le Direct3D, prendono questa decisione con molta attenzione. Inoltre, la GDI funziona in maniera indipendente dai dispositivi di output, come monitor e stampanti, che potrebbero essere in uso. Così, la stessa routine in un programma può renderizzare la grafica su un monitor e comunicare con la stampante, diminuendo il codice (e la susseguente manutenzione e il rischio di errore) della metà. Molte delle stampanti più abbordabili al giorno d'oggi sono dispositivi GDI. Questa situazione è improbabile che cambi in tempi brevi, anche con Windows 7, per cui sono disponibili un sacco di driver per le stampanti GDI.

png

L'intero è maggiore della somma delle parti

Noi stessi vediamo la conversione a WPF e Direct2D come una mossa che deve essere spinta da Microsoft, un passo tecnico avanti irreversibile. Tuttavia coloro che si scaldano per le nuove tecnologie dovrebbero ripensare a quanto detto nel nostro primo aritcolo. Oltre a Windows XP, sul mercato ci sono così tante tecnologie di vecchia generazione che per fare un grande passo in avanti, bisogna essere disposti a ignorare il passato. Purtroppo, ciò non tiene conto della realtà in cui operano la maggior parte degli utenti.

Per questo articolo useremo un software fatto da noi (che potete scaricare e usare sui vostri PC). Osserveremo che anche le schede video più costose, se sono abbinate a driver che non sono ottimizzati, fanno fiasco in alcuni test.