[X] accelerazione 3D

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
tiferet
Linux 1.x
Linux 1.x
Messaggi: 103
Iscritto il: sab 29 apr 2006, 0:25
Slackware: 13.1 (x86_64)
Kernel: 2.6.33.4
Desktop: KDE 4.4.3

[X] accelerazione 3D

Messaggio da tiferet »

Salve a tutti!

Era solo questione di tempo, ma prima o poi doveva riaffiorare questo problema che mi trascino da anni: far funzionare, in maniera decente, l'accelerazione 3d con la scheda grafica ATI Radeon 9200 SE. Con la Slackware 11.0 ero riuscito ad ottenere circa 1000 FPS con glxgears, mentre dopo l'upgrade alla 12.2 mi sono attestato a 740 FPS scarsi. Ho ricompilato il kernel, attivato il framebuffer, fatto una decina di prove attivando e disattivando varie opzioni e non sono riuscito ad ottenere nessun miglioramento: sempre e soltanto 740 FPS scarsi. Le uniche cose che ho potuto notare sono:

1) le opzioni "UseFBDev" e "TripleBuffer" non sono riconosciute dal driver radeon, sono semplicemente ignorate;
2) l'unica opzione che sembra essere necessaria è "ColorTiling", senza i FPS scendono a 610 e qualcosa.

Adesso ho commentato tutte le opzioni, e riesco ad ottenere solo 700 FPS. Allego qualche informazione, spero, utile. Ogni aiuto sarà moooooolto ben accetto!

EDIT: dimenticavo, facendo partire gvim ottengo il seguente errore:

Codice: Seleziona tutto

shmget failed: error 38 (Function not implemented)
mentre mplayer restituisce quest'altro messaggio, simile:

Codice: Seleziona tutto

[ws] shared memory extension error
ho ragione a credere che le due cose siano collegate? Da notare che col kernel huge questo problema non si presentava.

lspci:

Codice: Seleziona tutto

00:00.0 Host bridge: VIA Technologies, Inc. VT8378 [KM400/A] Chipset Host Bridge
00:01.0 PCI bridge: VIA Technologies, Inc. VT8237/VX700 PCI Bridge
01:00.0 VGA compatible controller: ATI Technologies Inc RV280 [Radeon 9200 SE] (rev 01)
01:00.1 Display controller: ATI Technologies Inc RV280 [Radeon 9200 SE] (Secondary) (rev 01)
estratto da xorg.conf

Codice: Seleziona tutto

Section "Module"
        Load  "glx"
        Load  "extmod"
        Load  "xtrap"
        Load  "record"
        Load  "GLcore"
        Load  "dbe"
        Load  "dri"
        Load  "freetype"
        Load  "type1"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
        ### [arg]: arg optional
        #Option     "NoAccel"                   # [<bool>]
        #Option     "SWcursor"                  # [<bool>]
        #Option     "Dac6Bit"                   # [<bool>]
        #Option     "Dac8Bit"                   # [<bool>]
        #Option     "BusType"                   # [<str>]
        #Option     "CPPIOMode"                 # [<bool>]
        #Option     "CPusecTimeout"             # <i>
        #Option     "AGPMode"                   "8"
        #Option     "AGPFastWrite"              "true"
        #Option     "AGPSize"                   "128"
        #Option     "GARTSize"                   "64"
        #Option     "RingSize"                  "10"
        #Option     "BufferSize"                "20"
        #Option     "EnableDepthMoves"          # [<bool>]
        #Option     "EnablePageFlip"            "true"
        #Option     "NoBackBuffer"              # [<bool>]
        #Option     "DMAForXv"                  # [<bool>]
        #Option     "FBTexPercent"              # <i>
        #Option     "DepthBits"                 # <i>
        #Option     "PCIAPERSize"               # <i>
        #Option     "AccelDFS"                  "false"
        #Option     "DDCMode"                   # [<bool>]
        #Option     "IgnoreEDID"                # [<bool>]
        #Option     "DisplayPriority"           # [<str>]
        #Option     "PanelSize"                 # [<str>]
        #Option     "ForceMinDotClock"          # <freq>
        #Option     "ColorTiling"               "true"
        #Option     "VideoKey"                  # <i>
        #Option     "RageTheatreCrystal"        # <i>
        #Option     "RageTheatreTunerPort"      # <i>
        #Option     "RageTheatreCompositePort"  # <i>
        #Option     "RageTheatreSVideoPort"     # <i>
        #Option     "TunerType"                 # <i>
        #Option     "RageTheatreMicrocPath"     # <str>
        #Option     "RageTheatreMicrocType"     # <str>
        #Option     "ScalerWidth"               # <i>
        #Option     "RenderAccel"               "true"
        #Option     "SubPixelOrder"             # [<str>]
        #Option     "ShowCache"                 # [<bool>]
        #Option     "DynamicClocks"             # [<bool>]
        #Option     "VGAAccess"                 # [<bool>]
        #Option     "ReverseDDC"                # [<bool>]
        #Option     "LVDSProbePLL"              # [<bool>]
        #Option     "AccelMethod"               "XAA"
        #Option     "DRI"                       "true"
        #Option     "ConnectorTable"            # <str>
        #Option     "DefaultConnectorTable"     # [<bool>]
        #Option     "DefaultTMDSPLL"            # [<bool>]
        #Option     "TVDACLoadDetect"           # [<bool>]
        #Option     "ForceTVOut"                # [<bool>]
        #Option     "TVStandard"                # <str>
        #Option     "IgnoreLidStatus"           # [<bool>]
        #Option     "DefaultTVDACAdj"           # [<bool>]
        #Option     "Int10"                     # [<bool>]
        #Option     "TripleBuffer"              "true"
        #Option     "backingstore"              "true"
        #options for firefox
        #Option      "MigrationHeuristic"        "greedy"
        Option      "XAANoOffscreenPixmaps"     "true"
        Identifier  "Card0"
        Driver      "radeon"
        VendorName  "ATI Technologies Inc"
        BoardName   "RV280 [Radeon 9200 SE]"
        ChipID      0x5964
        BusID       "PCI:1:0:0"
EndSection

Section "DRI"
    Group   0
    Mode    0666
EndSection
Allegati
Xorg.0.log
(58.14 KiB) Scaricato 69 volte
xorg.conf.txt
(5.11 KiB) Scaricato 64 volte

Avatar utente
zoros
Linux 4.x
Linux 4.x
Messaggi: 1362
Iscritto il: lun 28 mag 2007, 22:51
Nome Cognome: Fabio`Zorba`
Slackware: 15.0
Kernel: 5.15.19smp
Desktop: Trinity R14.0.11
Località: Gorizia

Re: [X] accelerazione 3D

Messaggio da zoros »

per le schede ATI di solito è molto importante avere una tmpfs ... si risolve aggiungendo questa riga in fstab:

Codice: Seleziona tutto

tmpfs  /dev/shm  tmpfs  defaults 0 0
vorrei riavere le mie firme ...

Avatar utente
tiferet
Linux 1.x
Linux 1.x
Messaggi: 103
Iscritto il: sab 29 apr 2006, 0:25
Slackware: 13.1 (x86_64)
Kernel: 2.6.33.4
Desktop: KDE 4.4.3

Re: [X] accelerazione 3D

Messaggio da tiferet »

zoros ha scritto:per le schede ATI di solito è molto importante avere una tmpfs ... si risolve aggiungendo questa riga in fstab:

Codice: Seleziona tutto

tmpfs  /dev/shm  tmpfs  defaults 0 0
Quella riga era già inserita nello fstab :( .

Avatar utente
zoros
Linux 4.x
Linux 4.x
Messaggi: 1362
Iscritto il: lun 28 mag 2007, 22:51
Nome Cognome: Fabio`Zorba`
Slackware: 15.0
Kernel: 5.15.19smp
Desktop: Trinity R14.0.11
Località: Gorizia

Re: [X] accelerazione 3D

Messaggio da zoros »

tiferet ha scritto:

Codice: Seleziona tutto

tmpfs  /dev/shm  tmpfs  defaults 0 0
Quella riga era già inserita nello fstab :( .
ok, però l'errore che riporti sembra essere legato alla shm ... comunque, se hai ricompilato il kernel sembra che per le ATI:
il kernel deve avere /dev/agpgart e Direct Rendering Manager tutti come modulo
sono ora su un PC con la 9200 PRO (che però non è proprio uguale), ti posto la situazione di alcuni settaggi, magari ne ricavi qualcosa:

Codice: Seleziona tutto

lspci
...
01:00.0 VGA compatible controller: ATI Technologies Inc RV280 [Radeon 9200 PRO] (rev 01)
01:00.1 Display controller: ATI Technologies Inc RV280 [Radeon 9200 PRO] (Secondary) (rev 01)

Codice: Seleziona tutto

glxgears
libGL warning: 3D driver claims to not support visual 0x4b
5233 frames in 5.0 seconds = 1046.389 FPS
5177 frames in 5.0 seconds = 1035.254 FPS

Codice: Seleziona tutto

lsmod
Module                  Size  Used by
radeon                125984  2
drm                    77204  3 radeon
...
...
via_agp                12160  1
i2c_viapro             11540  0
via_rhine              25352  0
agpgart                31180  2 drm,via_agp
soundcore              10080  1 snd
i2c_core               24064  1 i2c_viapro
in particolare agpgart e drm sono come modulo, radeon è l'ultimo caricato, i2c_core il primo ...

Codice: Seleziona tutto

uname -a
Linux .... 2.6.22.7 #1 SMP PREEMPT Mon Sep 24 18:41:39 CEST 2007 i686 AMD Athlon(tm) XP 2100+ AuthenticAMD GNU/Linux
vorrei riavere le mie firme ...

Avatar utente
ponce
Iper Master
Iper Master
Messaggi: 3123
Iscritto il: mer 5 mar 2008, 16:45
Nome Cognome: Matteo Bernardini
Slackware: slackware64-current
Kernel: 7.0.12
Desktop: lxde
Località: Pisa
Contatta:

Re: [X] accelerazione 3D

Messaggio da ponce »

puo' darsi che tu non abbia il supporto nel kernel per shm.
e' sotto filesystem -> pseudo filesystem -> Virtual memory file system support (former shm fs)

Avatar utente
zoros
Linux 4.x
Linux 4.x
Messaggi: 1362
Iscritto il: lun 28 mag 2007, 22:51
Nome Cognome: Fabio`Zorba`
Slackware: 15.0
Kernel: 5.15.19smp
Desktop: Trinity R14.0.11
Località: Gorizia

Re: [X] accelerazione 3D

Messaggio da zoros »

ponce ha scritto:puo' darsi che tu non abbia il supporto nel kernel per shm.
e' sotto filesystem -> pseudo filesystem -> Virtual memory file system support (former shm fs)
Sì, anche questo è un'ottimo suggerimento ... lo quoto per aggiungere che ci potrebbe essere un legame tra shm e gli altri due moduli che citavo io, per cui bisogna fare attenzione a come sono messi questi moduli ricompilando il kernel ... attenzione che i settaggi che ho riportato sono relativi ad una 12.1 non completamente upgradata verso la 12.2, ma avendo ricompilato il kernel mi era capitata una cosa simile alla tua ...
vorrei riavere le mie firme ...

Avatar utente
tiferet
Linux 1.x
Linux 1.x
Messaggi: 103
Iscritto il: sab 29 apr 2006, 0:25
Slackware: 13.1 (x86_64)
Kernel: 2.6.33.4
Desktop: KDE 4.4.3

Re: [X] accelerazione 3D

Messaggio da tiferet »

Dunque, drm e agpgart sono compilati entrambi come modulo:

Codice: Seleziona tutto

lsmod | grep drm
drm                    70176  3 radeon
agpgart                27696  2 drm,via_agp
Noto tuttavia che non ho alcun modulo i2c caricato, ma non credevo fossero necessari. Infine, il kernel ha abilitato il supporto per il filesystem virtuale tmpfs; fra l'altro, se non l'avessi attivato, mount non mi risponderebbe con un errore?

Ho notato inoltre che quando passo ad una console virtuale testuale, col framebuffer attivato, lo schermo non è centrato, il margine sinistro dello schermo è tagliato. Se ricentro e passo alla console 7 (grafica) il margine destro è tagliato. Noiose descrizioni a parte, potrebbe essere questo un indizio del fatto che il framebuffer è configurato male e per questo non aiuta più di tanto l'accelerazione 3d?

Avatar utente
zoros
Linux 4.x
Linux 4.x
Messaggi: 1362
Iscritto il: lun 28 mag 2007, 22:51
Nome Cognome: Fabio`Zorba`
Slackware: 15.0
Kernel: 5.15.19smp
Desktop: Trinity R14.0.11
Località: Gorizia

Re: [X] accelerazione 3D

Messaggio da zoros »

tiferet ha scritto:Dunque, drm e agpgart sono compilati entrambi come modulo:

Codice: Seleziona tutto

lsmod | grep drm
drm                    70176  3 radeon
agpgart                27696  2 drm,via_agp
Noto tuttavia che non ho alcun modulo i2c caricato, ...
il bus i2c è un bus a 2 fili molto usato nei ricevitori televisivi ... di solito attraverso questo bus si controllano i vari chip del ricevitore, per esempio si può comandare il tuner e richiedere che sintonizzi un dato canale .... ma anche un po' tutte le periferiche ...
detto questo, per induzione, dovrebbe avvenire la stessa cosa nei nostri PC, cioè il modulo i2c serve per comandare alcune periferiche, in particolare la scheda video ... infatti leggendo le note in "make xconfig" per il framebuffer ci sono tanti riferimenti al bus i2c e relativi moduli ... però questi moduli, secondo me, devi averli per forza di cose in built-in nel kernel altrimenti non si compilava ...

visto però che parlavi di framebuffer specifico per la radeon, io abilito da tempo solo il framebuffer generico VESA ... i framebuffer radeon, nVidia, i810, ecc. sono tutti disabilitati ... questo perché creavano solo problemi, in particolare con le nVidia e driver proprietario ...

non so se le mie indicazioni ti potranno essere utili ... ho proprio l'impressione che i tuoi settaggi "lato kernel" siano a posto ... magari tutto è causato dal nuovo Xorg della 12.2 ed il kernel non ha colpa ...
vorrei riavere le mie firme ...

Avatar utente
tiferet
Linux 1.x
Linux 1.x
Messaggi: 103
Iscritto il: sab 29 apr 2006, 0:25
Slackware: 13.1 (x86_64)
Kernel: 2.6.33.4
Desktop: KDE 4.4.3

Re: [X] accelerazione 3D

Messaggio da tiferet »

Mah, effettivamente l'unica differenza rispetto a quando avevo la Slackware 11.0 (a parte ovviamente il fatto che adesso ho una 12.2 e quindi è tutto diverso :lol:) è che prima utilizzavo il driver vesafb, adesso il radeonfb. Proverò a vedere cosa succede se utilizzo vesafb; il problema maggiore è che non so quando avrò il tempo di fare questa prova....

Ferie, quand'è che arrivate?

EDIT: confesso di essere veramente confuso :-k ero convinto di avere attivato il supporto alla shared memory nel kernel, sotto virtual filesystem, ma oggi:

Codice: Seleziona tutto

# ipcs -l

kernel not configured for shared memory

kernel not configured for semaphores

kernel not configured for message queues
La domanda sorge spontanea: oltre ad attivare la voce sotto "File systems --> Pseudo filesystems", ricompilare, installare il nuovo kernel, inserire in fstab la riga apposita, devo fare qualcos'altro?

Avatar utente
tiferet
Linux 1.x
Linux 1.x
Messaggi: 103
Iscritto il: sab 29 apr 2006, 0:25
Slackware: 13.1 (x86_64)
Kernel: 2.6.33.4
Desktop: KDE 4.4.3

Re: [X] accelerazione 3D

Messaggio da tiferet »

up

Avatar utente
conraid
Staff
Staff
Messaggi: 13631
Iscritto il: gio 14 lug 2005, 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Desktop: kde
Località: Livorno
Contatta:

Re: [X] accelerazione 3D

Messaggio da conraid »

Dovresti vedere SHMEM (solitamente è una opzione abilitata di default che non compare a meno di selezionare "mostra tutte le opzioni") e IPC System V (SYSVIPC)
Se con huge ti va parti da li e guarda le differenze

Avatar utente
tiferet
Linux 1.x
Linux 1.x
Messaggi: 103
Iscritto il: sab 29 apr 2006, 0:25
Slackware: 13.1 (x86_64)
Kernel: 2.6.33.4
Desktop: KDE 4.4.3

Re: [X] accelerazione 3D

Messaggio da tiferet »

conraid ha scritto: Se con huge ti va parti da li e guarda le differenze
ho appena provato, e con huge non dà nessun problema. devo proprio rivedere la configurazione del kernel...

Avatar utente
brainvision
Packager
Packager
Messaggi: 761
Iscritto il: ven 26 dic 2008, 18:23
Nome Cognome: Leonardo Totaro
Slackware: x86_64-current
Kernel: 3.7.1
Desktop: xfce 4.10
Località: bologna (bo)
Contatta:

Re: [X] accelerazione 3D

Messaggio da brainvision »

ciao!

Sto avendo da un un paio di kernel a questa parte il tuo stesso problema: ora sono al 2.6.32.3, ho una scheda video Intel e non sono ancora riuscito a risolvere il problema..
Ho provato tutto quello che viene consigliato qui ma ancora niente.. volevo sapere se tu alla fine hai risolto o meno..

Ciao e a presto..

Avatar utente
tiferet
Linux 1.x
Linux 1.x
Messaggi: 103
Iscritto il: sab 29 apr 2006, 0:25
Slackware: 13.1 (x86_64)
Kernel: 2.6.33.4
Desktop: KDE 4.4.3

Re: [X] accelerazione 3D

Messaggio da tiferet »

Ho risolto ricompilando il kernel partendo dal config generic e controllando ogni opzione attentamente (ma sinceramente non ricordo quali); in più, ti consiglio di utilizzare driconf
http://dri.freedesktop.org/wiki/DriConf per le regolazioni "fini" del driver DRI.

Avatar utente
brainvision
Packager
Packager
Messaggi: 761
Iscritto il: ven 26 dic 2008, 18:23
Nome Cognome: Leonardo Totaro
Slackware: x86_64-current
Kernel: 3.7.1
Desktop: xfce 4.10
Località: bologna (bo)
Contatta:

Re: [X] accelerazione 3D

Messaggio da brainvision »

Il mio problema non riguarda il Direc Rendering, che mi funziona perfettamente (lo vedo da alcuni giochi e dal log di xorg..
Invece ogni volta che apro un programma ricevo come errore la stringa

Codice: Seleziona tutto

(mousepad:3369): Gdk-WARNING **: shmget failed: error 38 (Funzione non implementata)
Per alcuni programmi, a prima vista, questo non comporta grossi errori, nel senbso che il programma continua a funzionare.. solo ad mplayer questo errore impedisce di funzionare..
Anch'io ho ricompilato varie volte il kernel, ho badato alle opzioni riguardanti la memoria condivisa, che mi sembrano stiano in 2 sezioni, delle quali si parla in questo thread.. ma non sono riuscito assolutamente a ricavare un'acca! In più ho cercato anche in giro con google e sembra che il problema sia in qualche modo conosciuto, ma non si capisce come diavolo risolverlo..

Rispondi