<
> <> <> = Introduzione = '''PRIME''' è una tecnologia utile per la gestione della grafica ibrida in Ubuntu e [[http://www.ubuntu-it.org/derivate|derivate ufficiali]]. <
> Tramite il procedimento di seguito riportato, sarà possibile abilitare la scheda video dedicata '''ATI/AMD''' o '''Nvidia''' quando necessario e senza riavviare il PC. '''PRIME''' funziona con i driver open source '''[[Hardware/Video/Amd/Radeon|Radeon]]''', '''[[Hardware/Video/Amd/Amdgpu|Amdgpu]]''', '''[[Hardware/Video/Intel|Intel]]''' e '''[[Hardware/Video/Nvidia/DriverNouveau|Nouveau]]''' ed è utilizzabile su PC con le seguenti caratteristiche: * '''Intel/AMD''': processore integrato Intel (IGP) e scheda video dedicata ATI/AMD. * '''AMD/AMD''': [[https://en.wikipedia.org/wiki/AMD_Accelerated_Processing_Unit|APU]] e scheda video dedicata ATI/AMD. * '''Intel/Nvidia''': processore integrato Intel (IGP) e scheda video dedicata Nvidia. {{{#!wiki note Per gestire la grafica ibrida con schede video Nvidia, è possibile consultare anche la pagina [[Hardware/Video/GraficaIbrida/NvidiaOptimus|NvidiaOptimus]].<
>Per schede video Nvidia con sistema di gestione '''Mux''', è possibile utilizzare [[Hardware/Video/GraficaIbrida/Vga_switcheroo|vga_switcheroo]]. }}} {{{#!wiki note '''PRIME''' è l'unico metodo utilizzabile per gestire il più vecchio sistema a grafica ibrida Intel/AMD '''Mux''' (probabilmente utilizzato per le schede video ATI/AMD fino alla serie '''Radeon HD 5xxx''' compresa). }}} = Preparazione = 0. Identificare i processori grafici presenti nel PC, digitando il seguente comando nel [[AmministrazioneSistema/Terminale|terminale]]:{{{ xrandr --listproviders }}} Verrà visualizzato un testo simile al seguente, specifico per la propria configurazione hardware: * '''Intel/AMD''':{{{ Providers: number : 2 Provider 0: id: 0x7d cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 3 outputs: 4 associated providers: 1 name:Intel Provider 1: id: 0x56 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 6 outputs: 1 associated providers: 1 name:radeon }}} * '''Intel/Nvidia''':{{{ Providers: number : 2 Provider 0: id: 0x8a cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 2 outputs: 2 associated providers: 1 name:Intel Provider 1: id: 0x66 cap: 0x7, Source Output, Sink Output, Source Offload crtcs: 2 outputs: 5 associated providers: 1 name:nouveau }}} 0. Prendere nota degli ''id'' specifici dei due processori grafici individuati. Ad esempio: * '''Intel/AMD''': nel comando precedente la scheda integrata Intel riporta l'id '''0x7d''', mentre la scheda dedicata AMD riporta l'id '''0x56'''. * '''Intel/Nvidia''': nel comando precedente la scheda integrata Intel riporta l'id '''0x8a''', mentre la scheda dedicata Nvidia riporta l'id '''0x66'''. 0. Digitare il seguente comando:{{{ xrandr --setprovideroffloadsink ID1 ID2 }}} I termini ''ID1'' e ''ID2'' vanno adattati alla propria configurazione, sostituendoli con gli '''id''' precedentemente trovati: * '''ID1''': scheda grafica dedicata ATI/AMD o Nvidia. * '''ID2''': IGP Intel o AMD APU. In alternativa ai termini '''ID1''' e '''ID2''', è possibile utilizzare i nomi dei driver utilizzati: '''nouveau''', '''radeon''', '''amdgpu''', '''Intel''' o altri. Ad esempio:{{{ xrandr --setprovideroffloadsink radeon Intel }}} {{{#!wiki note Usando una scheda grafica esterna può essere necessario inserire prima l' '''id''' della scheda integrata e poi quello della scheda dedicata. }}} = Avviare programmi tramite scheda video dedicata = È ora possibile utilizzare la scheda video dedicata ATI/AMD o Nvidia per avviare le applicazioni che richiedono maggiori performance grafiche. Per farlo, digitare il seguente comando nel [[AmministrazioneSistema/Terminale|terminale]]:{{{ DRI_PRIME=1 PROGRAMMA }}} Il termine ''PROGRAMMA'' va sostituito con il nome o il percorso del programma che si desidera avviare. Ad esempio, digitando il comando:{{{ DRI_PRIME=1 openarena }}} verrà avviato il gioco [[Giochi/OpenArena|OpenArena]] (se installato) utilizzando la scheda video dedicata. Le altre applicazioni continueranno ad utilizzare il processore integrato IGP, per garantire un minore consumo di energia. = Verifica di funzionamento = * '''Metodo 1''': con grafica ibrida Intel/AMD o Intel/Nvidia, verificare il driver in funzione quando si utilizza '''DRI_PRIME=1''', digitando il seguente comando nel [[AmministrazioneSistema/Terminale|terminale]]: {{{ DRI_PRIME=1 glxinfo | grep "OpenGL renderer string" }}} Il risultato dovrebbe essere simile al seguente (in questo esempio si tratta di scheda video AMD): {{{ OpenGL renderer string: Gallium 0.4 on AMD HAINAN (DRM 2.49.0 / 4.10.0-22-generic, LLVM 4.0.1) }}} * '''Metodo 2''': con grafica ibrida AMD/AMD, verificare che le performance rilevate da '''glxgears''' siano diverse tra la APU e la GPU: * [[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://mesa-utils | mesa-utils]]. * Digitare il seguente comando nel [[AmministrazioneSistema/Terminale|terminale]] per utilizzare '''glxgears''' con la APU:{{{ DRI_PRIME=0 vblank_mode=0 glxgears }}} * Digitare il seguente comando per utilizzare '''glxgears''' con la scheda video dedicata:{{{ DRI_PRIME=1 vblank_mode=0 glxgears }}} = Usare le uscite della scheda video dedicata = Se la scheda video dedicata possiede delle uscite non accessibili alla prima IGP, è possibile sfruttare '''Reverse PRIME''' per utilizzarle. 0. Digitare il seguente comando nel [[AmministrazioneSistema/Terminale|terminale]]:{{{ xrandr --setprovideroutputsource ID1 ID2 }}} I termini ''ID1'' e ''ID2'' vanno adattati alla propria configurazione, sostituendoli con gli '''id''' precedentemente trovati: * '''ID1''': scheda grafica dedicata ATI/AMD o Nvidia. * '''ID2''': IGP Intel o AMD APU. In alternativa ai termini '''ID1''' e '''ID2''', è possibile utilizzare i nomi dei driver utilizzati: '''nouveau''', '''radeon''', '''amdgpu''', '''Intel''' o altri. 0. Ora l'uscita della scheda video dedicata dovrebbe essere disponibile in '''xrandr''', digitando un comando simile al seguente:{{{ xrandr --output HDMI-1 --auto --above LVDS1 }}} = Risoluzione problemi = == XRandR elenca una sola GPU == 0. Rinominare il file `xorg.conf` digitando il seguente comando nel [[AmministrazioneSistema/Terminale|terminale]]:{{{ sudo mv /etc/X11/xorg.conf /etc/X11/xorg.conf.BAK }}} 0. Rinominare ogni file relativo alle proprie GPU presente in `/etc/X11/xorg.conf.d/`, come nel punto precedente. 0. Riavviare il PC e riprovare. == Finestra o schermo nero == Quando un'applicazione utilizza la scheda video dedicata, può capitare che venga restituita un'immagine nera. In alcuni casi '''PRIME''' necessita di un [[AmbienteGrafico/CompositeManager|Compositing window manager]] per funzionare correttamente.<
> Se si utilizza Xubuntu, è possibile abilitarlo seguendo la procedura seguente: 0. aprire il '''Gestore dell Impostazioni'''; 0. selezionare '''''Regolazioni del gestore delle finestre→Compositore'''''; 0. selezionare la voce '''Abilita la visualizzazione composita'''. == Schermo nero con Compositori GL-based == Attualmente ci sono problemi con i [[AmbienteGrafico/CompositeManager|Compositing window manager]] GL-based.<
>Mentre i compositori Xrender-based ('''Xcompmgr''', '''Xfwm''', '''Compton''', '''Cairo-compmgr''' e pochi altri) funzionano senza problemi, i compositori GL-based ('''Mutter/muffin''', '''Compiz''', '''Compton''' con GLX backend, '''Kwin''' e altri) mostrano inizialmente uno schermo nero, come se non ci fosse un compositor in funzione. È possibile forzare l'immagine ad apparire ridimensionando la finestra dell'applicazione, tuttavia questa soluzione non è pratica e non funziona per applicazioni a schermo intero. = Ulteriori risorse = * [[https://wiki.archlinux.org/index.php/PRIME|Prime su ArchWiki]] * [[http://wiki.ubuntuusers.de/Hybrid-Grafikkarten/PRIME|Prime su wiki.ubuntuusers.de]] * [[https://wiki.freedesktop.org/nouveau/Optimus/|Prime sulla documentazione di Nouveau]] * [[Hardware/Video/Amd|Pagina Wiki dedicata alle schede video ATI/AMD]] * [[Hardware/Video/Amd/Radeon|Pagina Wiki dedicata al driver Radeon]] * [[Hardware/Video/Amd/Amdgpu|Pagina Wiki dedicata al driver Amdgpu]] * [[Hardware/Video/Nvidia/DriverNouveau|Pagina Wiki dedicata al driver Nouveau]] ---- CategoryHardware