# è possibile utilizzare la scheda video integrata nei i5/i7 ?

## MajinJoko

Buongiorno a tutti,

ho una curiosità. Molti modelli di i5 e i7, se non ho preso lucciole per lanterne, sono dotati di scheda video integrata. Di solito poi, i notebook equipaggiati con questi processori hanno comunque una scheda video vera e propria, ati o nvidia che sia.

Quello che volevo chiederti è se con linux è possibile utilizzare queste schede. In pratica la domanda sarebbe: se dal sito Intel vedo che un certo processore ha la scheda video integrata, è certo che si possa utilizzare con linux? Potrei in qualche modo trovarmi questa possibilità "bloccata"?

Spero di non aver preso un colossale abbaglio.

Grazie per l'attenzione   :Wink: 

----------

## AIgor

Ciao,

in realtà si ha il problema opposto, ovvero appena installato linux ti ritroverai con la scheda integrata funzionante, mentre la scheda discreta rimane inattiva ma comunque accesa, cosa questa che riduce di molto l'autonomia del portatile.

Sia nvidia che ati, per ridurre i consumi ed il calore, hanno sviluppato una tecnologia che permette (almeno sotto windows) di utilizzare le due schede in tandem: se il sistema non ha bisogno di elevate prestazioni video (es. navigazione internet, office, ecc.) funziona la sola integrata che ha un TDP più basso. Se la richiesta aumenta (es. giochi 3D), la scheda discreta si attiva e gestisce lei la grafica.

Non conosco la situazione di ati, ma nel caso di nvidia non esiste uno switch né software né a livello di bios, perché in pratica la scheda discreta si occupa del rendering ma passa i risultati dell'elaborazione all'integrata, in quanto non comunica direttamente con il framebuffer.

Nel forum di nvidia è successo un putiferio quando hanno comunicato che non avevano intenzione di sviluppare un driver per linux per far funzionare optimus (appunto il sistema di nvidia). Successivamente hanno spiegato che non era una questione di volontà ma un'impossibilità dovuta all'architettura di X.

Se consideri che tutti gli ultimi portatili che montano processori ix (tranne gli i7 di penultima generazione la cui integrata é disattivata) hanno questo problema, capisci che questa è una bella mazzata per linux, dove almeno nvidia era una sicurezza.

Comunque, sono nati alcuni progetti che inizialmente hanno permesso almeno di spegnere la scheda nvidia per risparmiare i consumi, mentre da poco pare che siano riusciti a trovare il modo di sfruttare anche la scheda discreta.

----------

## MajinJoko

Ti ringrazio moltissimo.

La cosa mi interessa molto.

Oggi un mio amico che possiede un acer con i5+ati mi ha mostrato uno script per attivare/disattivare le schede. Ho dato solo un'occhiata veloce, in pratica utilizza uno switch di tipo software accessibile da /sys/kernel/debug.. e poi non ricordo   :Embarassed: 

Però non so se la situazione è valida per tutte le ati.

Continuerò ad informarmi, grazie ancora.

----------

## fbcyborg

Per quanto riguarda lo scriptino, uso un meccanismo simile anche io sul mio Sony Vaio.

È un po' vecchio ma funziona. Lo trovi a questo link. Giusto per farti un'idea.

Lo descrive nel punto in cui compare questo script:

```
!/sbin/runscript

depend() {

        before xdm

}

start() {

VIDEO=`/usr/sbin/lspci |grep -c nVidia`

NVIDIA=`/usr/bin/eselect opengl show |grep -c nvidia`

if [ "$VIDEO" = 1 ]; then

cp -f /etc/X11/xorg.conf.speed /etc/X11/xorg.conf

  if [ "$NVIDIA" = 0 ]; then

    eselect opengl set nvidia

  fi

else

cp -f /etc/X11/xorg.conf.stamina /etc/X11/xorg.conf

  if [ "$NVIDIA" = 1 ]; then

    eselect opengl set xorg-x11

  fi

fi

}
```

E pensare che ora il file xorg.conf non si usa più, ma in questo caso come potrei farne a meno? Lo devo per forza usare se voglio che funzioni quel meccanismo.

----------

## mack1

Ciao, per completare quello che ha detto AIgor, volevo aggiungere che esistono notebook con una doppia scheda (una integrata e una discreta) che possono essere usate separatamente (in alcuni casi è possibile gestirle tramite il bios) e questa tipologia non causa nessun problema di gestione avendo un multiplexer che permette di decidere quale usare a seconda delle esigenze (è presente un'opzione nel kernel per gestire lo switch chiamata "CONFIG_VGA_SWITCHEROO").

Nvidia ha poi implementato una tecnologia chiamata "Nvidia Optimus" che non è supportata ufficialmente (è quella di cui parlava AIgor):

http://www.nvidia.com/object/optimus_technology.html

In sostanza per poter usare la scheda discreta si deve comunque "passare" da quella integrata nella cpu intel, e qui sorgono i problemi di gestione.... è nato un progetto chiamato Bumblebee che permette di usare anche la scheda discreta:

https://github.com/MrMEEE/bumblebee

https://github.com/iegor/bumblebee-Gentoo-support

Sempre per chi ha un portatile con Nvidia Optimus è nata l'esigenza di poter spegnere la scheda nvidia per poter allungare il tempo di durata della batteria.... è appena entrato in portage "sys-power/acpi_call" (un modulo del kernel che, se caricato, spegne la scheda nvidia):

https://bugs.gentoo.org/356605?id=356605

Io non ho ancora testato Bumblebee, per cui non so riportarvi esperienze dirette, però su un asus acpi_call funziona perfettamente e mi allunga di un buon 40 minuti la durata della batteria.

Ciao

----------

## djinnZ

Rammento che in un tempo lontano xfree consentiva di controllare da linea di comando quale sezione screen utilizzare con startx -- qualcosa.

Tanto per migliorare un poco la situazione e non avere due file di configurazione ma uno solo.

----------

## cloc3

che sprechi assurdi.

non basterebbe aggiungere da qualche parte due linee di codice per rallentare gli accessi alla scheda nvidia, per farla correre e consumere come se fosse una intel?

----------

## mack1

@cloc3

Sì infatti, ma la cosa più assurda è che hanno aumentato la modularità a livello hardware, ma la flessibilità del sistema è rimasta uguale.... sembra solo un modo per giustificare la presenza di una pseudogpu all'interno della cpu   :Rolling Eyes:  .

----------

## cloc3

 *mack1 wrote:*   

> .... sembra solo un modo per giustificare la presenza di una pseudogpu all'interno della cpu   .

 

o un trucco per vendere ai gonzi due gadget diversi che fanno la stessa cosa.

----------

## mack1

 *Quote:*   

> o un trucco per vendere ai gonzi due gadget diversi che fanno la stessa cosa.

 

Infatti.... con il costo hardware aggiuntivo di questo sistema probabilmente avrebbero potuto mettere batterie più performanti e sviluppare schede discrede (come dicevi tu) con una gestione energetica più oculata.

Comunque l'abilità e l'intraprendenza  di sviluppo che è intrinseca del modello free/open software (non voglio scatenare flame, ma solo rendere l'idea) emerge proprio in queste occasioni  :Very Happy: .... come al solito limiti stupidi imposti dall'alto vengono aggirati, "sbertucciando" i limitatori   :Laughing: 

----------

## djinnZ

sempre augurando devotamente a tutto lo staff dirigenziale di NVIDIA, intel, sony etc. il cancher nel core

qualora qualcuno volesse interrogarsi sul mio livore nei confronti di sony rispondo: devo installare linux e liberare dal bloatware un vaio... e credo non servano aggiunte.

@fbcyborg lo script è migliorabile come ti ho detto (potresti pesnare di migliorare direttammente anche startx) ma devi passare per l'oscena documementazione di xfree (non xorg che supportava l'opzione al tempo del passaggio ma se ne sono dimenticati)

----------

## fbcyborg

Grazie del suggerimento! Magari se mi avanza un po' di tempo approfondisco questa storia con xfree!

----------

## djinnZ

Fai il merge dei due file di configurazione, nella sezione ServerFlags lasci solo le opzioni comuni e metti Option "DefaultServerLayout"  "lintegrato", nelle sezioni "ServerLayout" metti le opzioni rimanenti (se ci sono) e non dimentichi Identifier  "integrato" e "nvidia" (o quel che ti pare).

A questo punto X parte con l'integrata X -layout nvidia parte con la nvidia.

Se modifichi startx e startDM.sh per reagire all'output di eselect con qualcosa del genere 

```
if [ "`eselect openg show`" = "xog-x11" ]

   then

        X -layout "integrato"

   else

        X -layout "nvidia"

fi
```

dovresti aver risolto e ti basta agire con eselect per cambiare le impostazioni.

L'optimum sarebbe uno scripot startx che consente di cambiare direttamente la configurazione (e che avvi direttamente un diplay alternativo se xdm/kdm/gdm sono già attivi) visto che usare layout alternativi è utile a prescindere ma non ho voglia di applicarmi od insozzarmi con l'idioma d'albione per andare a spiegare ai devel l'idea.

Mi sembra una soluzione più "elegante" del copiare file di configurazione.

----------

## bandreabis

UP!

Come è cambiata la situazione in un anno e passa?

----------

