LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Hardware (https://www.linuxquestions.org/questions/linux-hardware-18/)
-   -   slow XGL effects (https://www.linuxquestions.org/questions/linux-hardware-18/slow-xgl-effects-494447/)

pytheas22 10-21-2006 04:50 PM

slow XGL effects
 
Hi everyone,

I have XGL working in Fedora Core 5 with an nvidia geforce 5200 card, but it's pretty choppy opening and closing windows and switching between desktops (by "choppy" I mean that there's a delay between when I click to drag a window and when I see it actually start to move, for instance, and that I have to wait a second when switching between desktops for the cube to start spinning), and I'd like to figure out how to make it smoother if I can. I've noticed that glxinfo tells me that direct rendering is not enabled, but I don't know why, as I have the latest nvidia driver (beta 1.0.9625) installed. If not having direct rendering would make XGL choppy, does anyone know how to enable it?

Otherwise, I'm posting my xorg.conf file in the hopes that someone might be able to tell me what I can do to make XGL smoother. XGL effects are incredible, but they're making my system so choppy that it's hard to use. I've tried minimizing the settings in compiz, which made things better but not great. Unless my hardware just can't handle it well (which I don't think should be the case, since I've run plenty of graphics-intense games in Windows on the same card without a problem), I don't understand what's making XGL so slow and choppy. If anyone can help, I would appreciate it greatly.

xorg.conf:

Code:

# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig:  version 1.0  (buildmeister@builder3)  Thu Sep 14 15:50:24 PDT 2006
# Xorg configuration created by system-config-display

Section "ServerLayout"
        Identifier    "Multihead layout"
        Screen      0  "Screen0" 0 0
        Screen      1  "Screen0" LeftOf "Screen1"
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard0" "CoreKeyboard"
        Option            "Xinerama" "on"
EndSection

Section "Files"

# Multiple FontPath entries are allowed (they are concatenated together)
# By default, a font server independent of the X server is
# used to render fonts.
        FontPath    "unix/:7100"
EndSection

Section "Module"
        Load  "dbe"
        Load  "extmod"
        Load  "fbdevhw"
        Load  "glx"
        Load  "record"
        Load  "freetype"
        Load  "type1"
EndSection

Section "InputDevice"

# Specify which keyboard LEDs can be user-controlled (eg, with xset(1))
#        Option        "Xleds"                "1 2 3"
# To disable the XKEYBOARD extension, uncomment XkbDisable.
#        Option        "XkbDisable"
# To customise the XKB settings to suit your keyboard, modify the
# lines below (which are the defaults).  For example, for a non-U.S.
# keyboard, you will probably want to use:
#        Option        "XkbModel"        "pc102"
# If you have a US Microsoft Natural keyboard, you can use:
#        Option        "XkbModel"        "microsoft"
#
# Then to change the language, change the Layout setting.
# For example, a german layout can be obtained with:
#        Option        "XkbLayout"        "de"
# or:
#        Option        "XkbLayout"        "de"
#        Option        "XkbVariant"        "nodeadkeys"
#
# If you'd like to switch the positions of your capslock and
# control keys, use:
#        Option        "XkbOptions"        "ctrl:swapcaps"
# Or if you just want both to be control, use:
#        Option        "XkbOptions"        "ctrl:nocaps"
#
        Identifier  "Keyboard0"
        Driver      "kbd"
        Option            "XkbModel" "pc105"
        Option            "XkbLayout" "us"
        Option            "XkbVariant" "intl"
EndSection

Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "mouse"
        Option            "Protocol" "IMPS/2"
        Option            "Device" "/dev/input/mice"
        Option            "ZAxisMapping" "4 5"
        Option            "Emulate3Buttons" "yes"
EndSection

Section "Monitor"

 ### Comment all HorizSync and VertSync values to use DDC:
 ### Comment all HorizSync and VertSync values to use DDC:
        Identifier  "Monitor0"
        VendorName  "Monitor Vendor"
        ModelName    "EMC0309"
        DisplaySize  320        240
 ### Comment all HorizSync and VertSync values to use DDC:
        HorizSync    30.0 - 70.0
        VertRefresh  50.0 - 160.0
        Option            "dpms"
EndSection

Section "Monitor"
        Identifier  "Monitor0"
        VendorName  "Monitor Vendor"
        DisplaySize  320        240
 ### Comment all HorizSync and VertSync values to use DDC:
        HorizSync    30.0 - 70.0
        VertRefresh  50.0 - 160.0
        Option            "dpms"
EndSection

Section "Device"
        Identifier  "Videocard0"
        Driver      "nvidia"
        VendorName  "Videocard vendor"
        BoardName  "nVidia Corporation NV34 [GeForce FX 5200]"
        Option            "TwinView"
        Option            "MetaModes" "1280x960, 800x600"
        Option            "ConnectedMonitor" "CRT, TV"
        Option            "SLI" "Auto"
        Option            "RenderAccel" "true"
        Option            "SecondMonitorHorizSync" "30.0 - 62.0"
        Option            "SecondMonitorVertRefresh" "50.0 - 90.0"
        Option            "TwinViewOrientation" "Clone"
        Option      "NoFlip" "True"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device    "Videocard0"
        Monitor    "Monitor0"
        DefaultDepth    24
        SubSection "Display"
                Viewport  0 0
                Depth    16
                Modes    "1280x960" "1152x864" "1024x768" "800x600" "640x480"
        EndSubSection
        SubSection "Display"
                Viewport  0 0
                Depth    24
                Modes    "1280x960" "1152x864" "1024x768" "800x600" "640x480"
        EndSubSection
EndSection

Section "Extensions"
#        Option            "Composite" "off"
EndSection

also, output from glxinfo:
Code:

$ glxinfo
name of display: localhost:1.0
display: localhost:1  screen: 0
direct rendering: No
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
client glx vendor string: NVIDIA Corporation
client glx version string: 1.4
client glx extensions:
    GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_visual_info,
    GLX_EXT_visual_rating, GLX_EXT_import_context, GLX_SGI_video_sync,
    GLX_NV_swap_group, GLX_NV_video_out, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
    GLX_SGI_swap_control, GLX_NV_float_buffer, GLX_ARB_fbconfig_float,
    GLX_EXT_fbconfig_packed_float, GLX_EXT_texture_from_pixmap
GLX version: 1.2
GLX extensions:
    GLX_ARB_multisample, GLX_EXT_visual_info, GLX_EXT_visual_rating,
    GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_SGIX_fbconfig,
    GLX_ARB_get_proc_address
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: unknown board/PCI/SSE2
OpenGL version string: 1.2 (2.1.0 NVIDIA 96.25)
OpenGL extensions:
    GL_ARB_depth_texture, GL_ARB_imaging, GL_ARB_multitexture,
    GL_ARB_point_parameters, GL_ARB_point_sprite, GL_ARB_shadow,
    GL_ARB_texture_border_clamp, GL_ARB_texture_cube_map,
    GL_ARB_texture_env_add, GL_ARB_texture_env_combine,
    GL_ARB_texture_env_dot3, GL_ARB_texture_mirrored_repeat,
    GL_ARB_window_pos, GL_ARB_vertex_program, GL_ARB_fragment_program,
    GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color, GL_EXT_blend_func_separate,
    GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_draw_range_elements,
    GL_EXT_fog_coord, GL_EXT_multi_draw_arrays, GL_EXT_packed_pixels,
    GL_EXT_rescale_normal, GL_EXT_secondary_color,
    GL_EXT_separate_specular_color, GL_EXT_shadow_funcs, GL_EXT_stencil_wrap,
    GL_EXT_texture3D, GL_EXT_texture_edge_clamp, GL_EXT_texture_env_add,
    GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, GL_EXT_texture_lod,
    GL_EXT_texture_lod_bias, GL_EXT_texture_object, GL_EXT_vertex_array,
    GL_HP_occlusion_test, GL_IBM_texture_mirrored_repeat, GL_NV_blend_square,
    GL_NV_texgen_reflection, GL_NV_texture_rectangle,
    GL_NV_texture_env_combine4, GL_SGIS_generate_mipmap, GL_SGIS_texture_lod,
    GL_SGIX_depth_texture, GL_SGIX_shadow
glu version: 1.3
glu extensions:
    GLU_EXT_nurbs_tessellator, GLU_EXT_object_space_tess

  visual  x  bf lv rg d st colorbuffer ax dp st accumbuffer  ms  cav
 id dep cl sp sz l  ci b ro  r  g  b  a bf th cl  r  g  b  a ns b eat
----------------------------------------------------------------------
0x2c 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0 1953264993 1717912576 None
0x2d 24 tc  0 32  0 r  .  .  8  8  8  8  0  0  0  0  0  0  0 1935867952 811819875 None
0x2e 32 tc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0 993013821 2053582378 Ncon
0x2f 32 tc  0 32  0 r  .  .  8  8  8  8  0  0  0  0  0  0  0 859516976 1030578808 Ncon


HappyTux 10-21-2006 05:37 PM

From your glxinfo it appears your not using Nvidia's glx I'm not sure how it works in Fedora but in Debian you need to install the nvidia-glx package but having never used XGL I'm not sure if you are supposed to be using the SGI one. A couple of things you can check to make sure you are getting the most out the card is these settings.

Code:

>$ cat /proc/driver/nvidia/agp/card
Fast Writes:    Supported
SBA:            Supported
AGP Rates:      8x 4x
Registers:      0x1f000e1b:0x1f000312

The above shows you what your card supports below shows you what is in use.

Code:

>$ cat /proc/driver/nvidia/agp/status
Status:          Enabled
Driver:          AGPGART
AGP Rate:        8x
Fast Writes:    Enabled
SBA:            Enabled

Now if the Fast Writes and SBA are supported but not enabled try something like this in your /etc/modules.conf file.

Code:

options nvidia NVreg_EnableAGPFW=1 NVreg_EnableAGPSBA=1
Then modprobe -r nvidia and modprobe nvidia from command line without X running to unload/reload the module using the new settings.


All times are GMT -5. The time now is 01:15 AM.