Tuesday, September 3, 2013

Linux e il supporto alle GPU - a che punto siamo?


Uno dei problemi più importanti per Linux è sempre stato il supporto alle schede grafiche recenti, anche se bisogna ammettere (onore al merito degli sviluppatori), che le cose negli ultimi anni hanno preso una piega decisamente migliore.

Ecco qual è attualmente la situazione:

AMD/Ati:
dal punto di vista funzionale il supporto a queste schede è migliorato tantissimo negli ultimi cinque anni, ottenendo un deciso aumento delle prestazioni.
L'unica, forte, pecca, rimane la gestione del risparmio energetico, che spesso porta la GPU a surriscaldarsi, causando nei casi più estremi lo spegnimento di emergenza per overheating.

Fortunatamente, spesso la chiamata di sistema vgaswitcheroo funziona a dovere e ci permette di spegnere letteralmente la scheda dedicata in modo da poter usare solo quella integrata, abbassando anche di 35° la temperatura e portando l'autonomia dei notebook comodamente oltre le 3 ore. Anche se di fatto questo ci esclude la possibilità di usare la scheda dedicata.

Una soluzione più elegante arriverà con il kernel 3.11 (in arrivo in questi giorni), il quale porta con sé un insieme notevole di patch per la gestione del risparmio energetico nelle schede Radeon.
La funzione, ancora in fase sperimentale, si attiva inserendo il parametro "radeon.dpm=1" al boot del kernel.

I primi test fatti utilizzando questa funzione hanno dato ottimi risultati, sia in termini di performance che in termini di risparmio energetico.

NVIDIA:
Le prestazioni delle nvidia con il driver open nouveau sono sufficienti per un uso normale del pc, anche se non si possono dire buone come quelle del driver radeon.
Questo è soprattutto dovuto al fatto che le condizioni di lavoro degli sviluppatori in questo caso sono peggiori rispetto al driver radeon (nouveau è fondamentalmente il risultato di un enorme sforzo di reverse engineering).

Tuttavia, la lacuna più importante forse riguarda il mancato supporto alla tecnologia Optimus (di cui difettano anche i driver proprietari su Linux).

Fino ad ora si è potuto parzialmente sopperire a tale mancanza tramite bumblebee, un software in grado di gestire manualmente lo switch tra scheda grafica integrata e dedicata, consentendo tra l'altro anche l'avvio specifico di alcune applicazioni con la scheda dedicata.

Anche su questo fronte comunque, ci saranno novità a partire dal kernel 3.12, il quale, grazie ad una patch di David Airlie, renderà possibile la gestione dinamica delle due schede tramite il kernel stesso.
Questo significa che sarà il sistema operativo e non più l'utente a decidere quale delle due schede usare (così come avviene normalmente sui sistemi Windows).

Questa funzionalità supporterà inizialmente le schede Nvidia, ma in futuro è prevedibile che il supporto venga esteso anche alle schede Radeon.

~p.l.

7 comments:

  1. Articolo rincuorante!

    Vorrei avere solo un consiglio su quanto segue.
    Sapendo che (citazione dal sito Dell): "Le schede grafiche integrate nel processore sono incorporate nella [...] CPU DI TUTTI i processori Intel® Core™ di seconda e terza generazione e nelle APU [...] AMD™. [...] La maggior parte delle più recenti opzioni per la scheda grafica dedicata AMD™ e NVIDIA® supporta schede commutabili con tecnologia NVIDIA Optimus™ o AMD Enduro per evitare consumi energetici non necessari".
    Mi pare di capire che se voglio un notebook con scheda video dedicata, mi trovo per forza anche quella integrata (anche se sul pc non viene esplicitamente riportata la presenza della tecnologia optimus o enduro).
    Vista la situazione attuale, tu diresti che si può finalmente acquistare a cuor leggero un pc con tecnologia optimus o enduro?

    ReplyDelete
    Replies
    1. A cuor leggero forse no. Io cercherei solo di verificare se il chip dedicato è disattivabile completamente da BIOS, così quantomeno hai una opzione praticabile in caso il consumo sia eccessivo e non la combinazione non sia ancora supportata pienamente.

      Delete
    2. Giusto. Ma come posso verificarlo senza avere il pc tra le mani?

      Delete
    3. A volte si può verificare, se conosci il modello che vorresti acquistare con qualche ricerca spesso è possibile ottenere queste informazioni.

      Delete
    4. Non si riesce a capire dal codice del modello della scheda video? In giro per negozi mi riesce impossibile navigare in internet per trovare queste info e spesso i negozianti non sanno neanche di cosa sto parlando...

      Delete
    5. Al limite dal modello di PC, il BIOS è del produttore del computer, non di quello della scheda video.

      Delete
  2. Sono completamente d'accordo con quanto detto da Gianluca.

    ReplyDelete