• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

XGL + Kaffeine = Rechnerüberlast???

was ist es denn für eine Grafikkarte?

also badframe hab ich auch immer wieder mal ... aber bei mir kommt nur das:
Code:
disk@wild-thing:~> cat /dev/video0 |xine -V opengl stdin://mpeg2
This is xine (X11 gui) - a free video player v0.99.5cvs.
(c) 2000-2006 The xine Team.
bad_frame
bad_frame
bad_frame
bad_frame
bad_frame
bad_frame
bad_frame
bad_frame
bad_frame
bad_frame
bad_frame
bad_frame
disk@wild-thing:~>

Gruss

R
 
verwendest du dann treiber "radeon" oder "fglrx"?

Bei mir läuft fglrx und ich hab mal gerade geschaut:
Code:
LIBGL_DEBUG=verbose glxinfo |grep bgra

ergebnis in der letzten Zeile:
Code:
GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color, GL_EXT_blend_func_separate

Also bringt fglrx das mit, verstehe ich richtig?? Und die Meldung von Xine bei dir rührt daher?

Gruss

R
 
Ich verwende den Treiber fglrx. Allerdings ergibt auf meinem System

Code:
ST20G5:/home/fanformusik # LIBGL_DEBUG=verbose glxinfo |grep bgra
Xlib:  extension "XFree86-DRI" missing on display ":0.0".
libGL error: XF86DRIQueryDirectRenderingCapable failed

Die erste Zeile entspricht der Fehlermeldung von xine. Was könnte das bedeuten?
 
Hmm, und was hilft mir jetzt die Meldung? Offenbar fehlt bei mir die DRI extension (was immer das ist). Kann es sein dass diese Funktion verwendet wird um beim Darstellen von Videos Rechenleistung zu sparen? Dann hab ich wohl Pech, oder ich muss auf einen aktuelleren Treiber von ATI warten (meiner ist Version 8.33.6).

Oder hab ich da falsch interpretiert?
 
moment ... - so hab ich noch garned gedacht jetzt.

Hattest du den Befehl oben bei deaktiviertem Xgl eingegeben? Also mit
DISPLAYMANAGER_XSERVER="Xorg" ?

Wenn du dort Xorg hast -- nach einem Neustart mit deaktiviertem AIGLX sollte dann:

Vorrausgesetzt du verwendest Treiber FGLRX:

a)
Code:
LIBGL_DEBUG=verbose fglrxinfo
Keine Fehler melden und eine ausgabe wie diese:
libGL: XF86DRIGetClientDriverName: 8.35.5 fglrx (screen 0)
libGL: OpenDriver: trying /usr/lib/dri/fglrx_dri.so
libGL: XF86DRIGetClientDriverName: 8.35.5 fglrx (screen 0)
drmOpenByBusid: busid is PCI:1:0:0
drmOpenDevice: minor is 0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 4, (OK)
drmOpenByBusid: drmOpenMinor returns 4
drmOpenByBusid: drmGetBusid reports PCI:1:0:0
display: :0.0 screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: Radeon X1950 Series
OpenGL version string: 2.0.6400 (8.35.5)

Und wenn das klappt; dann kannst du in glxinfor schauen, ob dir diese gesuchte Extension zur Verfügung steht.

b)
Bei mir wird diese aufgefunden durch Eingabe von:
Code:
LIBGL_DEBUG=verbose glxinfo |grep bgra
Die letzte Zeile der Ausgabe sagt:
GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color, GL_EXT_blend_func_separate,
Angemerkt, dass ich aber den 8.35.5 verwende.

Wenn aber diese Fehlermeldung bei dir mit Displaymanager Xorg kommt, dann ist bei dir noch irgendetwas falsch konfiguriert - schätzungsweise.

Dashier:
Code:
libGL error: XF86DRIQueryDirectRenderingCapable failed
würde unter Xorg bedeuten, dass bei dir keine 3D Beschleunigung funktioniert.

Unter Xgl würde das nichts aussagen, weil der Fehler durch unzureichende Implementation ausgegeben wird.

Gruss

R
 
Erst mal Danke für deine Geduld!

So, jetzt hab ich 3D abgeschaltet und nach reboot die diversen Abfragen gemacht:

Code:
LIBGL_DEBUG=verbose fglrxinfo

erzeugt Ausgabe:
libGL: XF86DRIGetClientDriverName: 8.33.6 fglrx (screen 0)
libGL: OpenDriver: trying /usr/X11R6/lib64/modules/dri/fglrx_dri.so
libGL: XF86DRIGetClientDriverName: 8.33.6 fglrx (screen 0)
drmOpenByBusid: busid is PCI:1:5:0
drmOpenDevice: minor is 0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 4, (OK)
drmOpenByBusid: drmOpenMinor returns 4
drmOpenByBusid: drmGetBusid reports PCI:1:5:0
Can't open configuration file /etc/drirc: No such file or directory.
Can't open configuration file /root/.drirc: No such file or directory.
display: :0.0 screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: RADEON XPRESS Series Generic
OpenGL version string: 2.0.6286 (8.33.6)

und

Code:
glxinfo

erzeugt Ausgabe (Auszug):
name of display: :0.0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.2
server glx extensions:
GLX_ARB_multisample, GLX_EXT_visual_info, GLX_EXT_visual_rating,
GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_OML_swap_method,
GLX_SGI_make_current_read, GLX_SGIS_multisample, GLX_SGIX_hyperpipe,
GLX_SGIX_swap_barrier, GLX_SGIX_fbconfig, GLX_MESA_copy_sub_buffer
client glx vendor string: ATI
client glx version string: 1.3
client glx extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_import_context,
GLX_ARB_get_proc_address, GLX_SGI_video_sync, GLX_ARB_multisample,
GLX_ATI_pixel_format_float, GLX_ATI_render_texture
GLX extensions:
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_import_context,
GLX_ARB_multisample
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: RADEON XPRESS Series Generic
OpenGL version string: 2.0.6286 (8.33.6)
OpenGL extensions:
.....(hier abgeschnitten).....

Aus der dritten Zeile geht hervor dass Direct Renderring (=DRI??) zur Verfügung steht.

Und hier noch
Code:
LIBGL_DEBUG=verbose glxinfo |grep bgra

bringt
libGL: XF86DRIGetClientDriverName: 8.33.6 fglrx (screen 0)
libGL: OpenDriver: trying /usr/X11R6/lib64/modules/dri/fglrx_dri.so
libGL: XF86DRIGetClientDriverName: 8.33.6 fglrx (screen 0)
drmOpenByBusid: busid is PCI:1:5:0
drmOpenDevice: minor is 0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 4, (OK)
drmOpenByBusid: drmOpenMinor returns 4
drmOpenByBusid: drmGetBusid reports PCI:1:5:0
Can't open configuration file /etc/drirc: No such file or directory.
Can't open configuration file /root/.drirc: No such file or directory.
GL_ATIX_vertex_shader_output_point_size, GL_EXT_abgr, GL_EXT_bgra,

Und jetzt??
 
Lal dir ist schon klar in welchem Zusammenhang du von 3D redest - oder?
GL_EXT_bgra

jetzt starte genau so an dieser Stelle:
Code:
xine -V openGl

hier Lesestoff in englisch:
http://dri.freedesktop.org/wiki/

Gruss

R
 
Ich habe vom 3D Desktop geprochen: XGL ist jetzt bei mir aus, Xorg ist aktiv, Oberfläche ist Standard KDE. Wolltest Du das wissen?

Dann hab ich xine -V openGl gestartet. Keine Fehlermeldung, nur einige bad frames:
This is xine (X11 gui) - a free video player v0.99.5cvs.
(c) 2000-2006 The xine Team.
bad_frame
bad_frame
bad_frame
....(abgeschnitten)....
und natürlich ist auch die Rechnerlast niedrig, wie oben schon geposted.

Nächste Schritte??
 
Jo das ist warscheinlich philosphie...

Vgl.: http://www.linux-club.de/viewtopic.php?p=468152#468152
und es kommen folgende Meldungen:

This is xine (X11 gui) - a free video player v0.99.5cvs.
(c) 2000-2006 The xine Team.
Xlib: extension "XFree86-DRI" missing on display ":0.0".
video_out_opengl: compiled for BGRA output, but missing extension.
bad_frame
Jetzt könnte man davon ausgehen, dass es schlicht an Beryl liegt...

Oder sich noch damit beschäftigen:
http://xinehq.de/index.php/faq#VIDEODRIVER
http://xinehq.de/index.php/faq#SPEEDUP
http://xinehq.de/index.php/faq#DISCARDEDSKIPPED

aber so 10 -12 % kommt unter Xorg bei mir auch hin.

Also ich hab schlicht festgestellt, dass man quasi die Schwelle einstellen könnte, die für die Ausgabe von "bad frame" sorgt. Oder es ignorieren könnte, wenn die CPU Last ok ist.

Andererseits könntest du unter Beryl die ausgabe von
Code:
top
noch beobachten und einen eventuellen störenfried optimieren, wenn dir daran läge.

Aber die Frage, wie man Beryl in dem Punkt noch gezielt optimieren könnte, fänd ich auch gut.

Wie`?

hmmm weiss jetzt nicht, ob sich das auf die Performance auswirkt... aber hast du in der Fstab sowas:
Code:
grep tmpfs /etc/fstab
? Ansonsten könntest du versuchen, es in die /etc/fstab/ als letzt zeile einzutragen.
tmpfs /dev/shm tmpfs defaults 0 0
Nach einem Neustart müsste es mit eingebunden sein dann.

Aber ich schmeiss jetz auch mal kurz beryl an und schau mir dort die CPU Last an... vllt. find ich auch noch was :)

also wenn ich nebenher browse usw... dann kommts max. auf 50 % beim Scrollen.

Und wenn die Fenster liegen und ich nur schau und würfel ned dreh dann so 3 - 5 % schlechter als unter Xorg.

wenn ich den Würfel dreh so 34 % etwa... und normal fernschauen eben so bis 15 %

Gruss

R
 
Hallo,

erstmal danke für die vielen Hinweise und Links. Ich hab dafür einige Zeit gebraucht, denn ich bin ja kein Fachmann.

Ich denke nicht dass Tuning an der fstab was bringt, denn die ist ja unabhängig ob XGL bzw. Xorg aktiviert ist, und die hohe Rechnerlast hab ich nur unter XGL.
Da das ganze aussieht wir fehlendes Video overlay, hab ich meine xorg.conf gecheckt. Brachte aber auch keinen Hinweis, denn folgende Zeilen sind dort vorhanden:
Code:
Option "VideoOverlay" "on"
Option "OpenGLOverlay" "off"
Allderdings hab ich hier im Forum gelesen, dass XGL momentan kein Direct Rendering erlaubt [1]. Das könnte zur Fehlermeldung von xine passen
This is xine (X11 gui) - a free video player v0.99.5cvs.
(c) 2000-2006 The xine Team.
Xlib: extension "XFree86-DRI" missing on display ":0.0".
video_out_opengl: compiled for BGRA output, but missing extension.

d.h. wenn xine diese Erweiterung für "schnelle" Viedeoausgabe erwartet, wäre das eine mögliche Erklärung für die hohe Rechnerlast.

Oder liege ich da voll daneben?


[1] http://www.linux-club.de/faq/ATI_Treiber_mit_voller_3D-Unterst%C3%BCtzung#Fehlermeldung_mit_XGL.2FBeryl:_Xlib:_extension_.22XFree86-DRI.22_missing_on_display_.22:0.0.22..27
 
Eigendlich würde ich das eher so sehen, dass dies durch AIGLX möglich würde.

Da aber AIGLX nicht mit fglrx funktioniert momentan, kann auch die composite Extension welche Probleme verursacht besonders im Zusammenhang mit AIGLX deaktiviert werden.

Fehler ziehen Fehler nach sich.

Ich habs so:
Zu AIGLX:
Code:
Section "ServerFlags"
	Option	    "AIGLX" "off"
	Option	    "AllowMouseOpenFail" "on"
	Option	    "IgnoreABI" "on"
EndSection

für Xine:
Code:
	Option	    "VideoOverlay" "off"
	Option	    "OpenGLOverlay" "on"
	Option	    "XAANoOffscreenPixmaps" "true"
Zu Composite:
Code:
Section "Extensions"
	Option	    "DAMAGE" "false"
	Option	    "Composite" "false"
EndSection

ich hoff dich stört die Frage jetzt nicht, was für einen PC du hast?
Ich mein meine Kiste ist relativ brachial eigendlich sollte das keine Anforderung für den Computer sein, wobei ich die prozentuale Auslastung noch im Rahmen finde.

Gruss

R
 
Hallo,

das Problem ist wohl vorläufig "gelöst", nachdem ich im XGL-users forum folgende Antwort bekommen habe [1]:

Xgl ist für Tv+Video+Games vollkommen unbrauchbar, da es die Grafikkarte belegt und dann Dinge wie Games, Videos oder TV von der CPU berechnet werden müssen, und das ist nunmal lahm.

Also: Die hohe Rechnerlast bei Video ist momentan normal.

Bleibt zu hoffen, dass zukünftige Versionen von XGL die entspr. Erweiterungen bekommen. Ich werde zum Videogucken wieder 2D Desktop einrichten (nicht weiter schlimm, aber ich hätte für andere Arbeiten gerne das 3D eyecandy gehabt.)

[1] http://www.xglusers.de/component/option,com_smf/Itemid,59/topic,329.0
 
AIGLX würde das Problem meiner Meinung nach beheben. Aber das ist leider im fglrx noch nicht implementiert.

http://de.wikipedia.org/wiki/AIGLX

Ich bin der Meinung, dass würde das ganze lösen, weil AIGLX mit DRI als Ansatz weiterentwickelt wird.

Von dem her müsste es dann auch möglich sein, Video mittels der üblichen Schnittstelle wiederzugeben.

Ich gehe mal davon aus, dass die Rechenlast durch die gnadenlose beschleunigung des ganzen Desktop zustande kommt.

Weil Videobeschleunigung. Und Ganzen desktop beschleunigen sind 2 Paar stiefel. <- kann man nachvollziehen?

also AIGLX (DRI und xine -V opengl;Xshm;Xv) "V.S." Xgl. (ganzer Desktop von einem ding beschleunigt.)

hab ich richtig verstanden?
http://de.wikipedia.org/wiki/AIGLX

Gruss

R
 
Oben