xorg con driver intel: benchmark gtkperf
Sul forum inglese di arch (e non solo lì) diversi utenti si sono lamentati di un calo di prestazioni dei driver video intel.
Ho voluto verificare se il consiglio di utilizzare XAA come AccelMethod sia valido.
Ho usato il bechmark gtkperf per controllare le prestazioni dell’intel 945GME integrata nell’eeepc 901.
Ecco i risultati per quanto riguarda XAA:
GtkEntry – time: 0,15
GtkComboBox – time: 2,30
GtkComboBoxEntry – time: 1,47
GtkSpinButton – time: 0,28
GtkProgressBar – time: 0,21
GtkToggleButton – time: 0,42
GtkCheckButton – time: 0,28
GtkRadioButton – time: 0,66
GtkTextView – Add text – time: 2,07
GtkTextView – Scroll – time: 0,70
GtkDrawingArea – Lines – time: 1,81
GtkDrawingArea – Circles – time: 3,98
GtkDrawingArea – Text – time: 5,76
GtkDrawingArea – Pixbufs – time: 0,28
—
Total time: 20,37
e per quanto riguarda EXA:
GtkComboBox – time: 2,33
GtkComboBoxEntry – time: 1,42
GtkSpinButton – time: 0,27
GtkProgressBar – time: 0,21
GtkToggleButton – time: 0,38
GtkCheckButton – time: 0,28
GtkRadioButton – time: 0,73
GtkTextView – Add text – time: 2,22
GtkTextView – Scroll – time: 0,92
GtkDrawingArea – Lines – time: 2,39
GtkDrawingArea – Circles – time: 5,45
GtkDrawingArea – Text – time: 5,03
GtkDrawingArea – Pixbufs – time: 0,28
—
Total time: 22,07
Infine, EXA con opzione “MigrationHeuristic” “greedy”
GtkEntry – time: 0,12
GtkComboBox – time: 2,07
GtkComboBoxEntry – time: 1,69
GtkSpinButton – time: 0,28
GtkProgressBar – time: 0,24
GtkToggleButton – time: 0,47
GtkCheckButton – time: 0,24
GtkRadioButton – time: 0,68
GtkTextView – Add text – time: 2,27
GtkTextView – Scroll – time: 0,89
GtkDrawingArea – Lines – time: 2,45
GtkDrawingArea – Circles – time: 5,71
GtkDrawingArea – Text – time: 18,29
GtkDrawingArea – Pixbufs – time: 0,55
—
Total time: 35,96
Come si può vedere, XAA risulta il più performante, seguito a ruota da EXA, mentre EXA con l’opzione “greedy” risulta molto molto più lento (eppure viene consigliata in certi siti).
Sembra però che con la recente inclusione del GEM di intel (graphics execution manager) nel kernel 2.6.28, EXA (o meglio, il nuovo UXA) migliorerà al punto da essere finalmente più veloce di XAA.

Quindi cosa consigli? Io uso ancora il kernel 2.6.27 perchè il 2.6.28 mi da problemi..
anche io sono con il 2.6.27, e ho deciso di restare con XAA.
ma non appena passo al 2.6.28 sono molto curioso di rifare i benchmarq con EXA, dovrebbe andare molto meglio.
Facci sapere
e poi magari nel prossimo aggiornamento indica anche come effettuare questi cambiamenti in xorg.conf..
P.S: abbiamo lo stesso chipset, che bello
controlla con cat /var/log/Xorg.0.log | grep Acceleration
di default il driver intel usa EXA.
Per usare XAA invece devi mettere:
Option “AccelMethod” “XAA”
nella sezione Device relativa alla scheda video in xorg.conf
Ok, ora uso XAA, poi dal prossimo kernel vedremo.. ciao e grazie mille davvero ^^
Ciao pierluigi! Ho fatto i test sul kernel 2.6.28 e i risultati sono i seguenti:
1. XAA 48
2. XAA “MigrationHeuristic” “greedy” 48
3. EXA 58
4. EXA “MigrationHeuristic” “greedy” 53
Ora rimane solo il dubbio tra il primo e il secondo, io tengo il 2° perchè mi sembra più reattivo, poi magari facci sapere tu come vanno i test!
e finalmente ti rispondo simo.
ho aggiornato ai pacchetti del repo di blaster (che comprendono le nuove versioni dei driver intel e delle librerie di contorno) e appena compilato un 2.6.29rc2 zen.
finalmente ho UXA che si comporta ai livelli di XAA con gtkperf, ovvero sono a 20 secondi.
Ottimo! Dopo qualche giorno avevo comunque rifatto i test e venivano sui 2x secondi.. non so cosa era successo prima, ma vinceva comunque XAA di 5 secondi circa..
Tu preferisci EXA a XAA? Che vantaggi dà?
uso UXA semplicemente perchè è quello a cui stanno lavorando e i miglioramenti se ci saranno arriveranno qui.
ma è UXA o EXA? Comunque ok ^^
The UMA Acceleration Architecture (UXA) is a 2D acceleration method designed by Packard that uses the EXA API but with all of the internal code using their Graphics Execution Manager for memory management.
E’ come EXA solo che fa uso del nuovo GEM presente dal kernel 2.6.28