LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 09-05-2009, 05:31 PM   #1
kd5zex
LQ Newbie
 
Registered: Dec 2008
Distribution: Slackware
Posts: 28

Rep: Reputation: 15
Question Poor Performance After Upgrade to 13.0 From Radeon 9800PRO With Open Source Driver


I upgraded to 13.0 using UPGRADE.TXT and it seems that I have lost hardware acceleration from my Radeon. Everything seems to be loading up fine but I get about 50 fps from glxgears where in 12.2 I was getting around 1200. I have tried using my old xorg.conf, a new one created from -configure and not using one at all. All give the same poor performance. I am using the stock kernel.

Any thoughts, or am I missing something obvious?

Xorg.0.log

Cheers!
 
Old 09-05-2009, 06:28 PM   #2
adamk75
Senior Member
 
Registered: May 2006
Posts: 3,091

Rep: Reputation: 399Reputation: 399Reputation: 399Reputation: 399
Well you have direct rendering enabled... What's the output of 'glxinfo'? It's quite possible, even likely, that the version of the driver (or glxgears) is attempting to sync to your monitors refresh rate by default, which would cause that low framerate. Have you tried anything else such as openarena?

Adam
 
Old 09-05-2009, 06:35 PM   #3
bonaire
Member
 
Registered: Jun 2008
Location: Bonn/Germany
Distribution: Slackware-13.37
Posts: 94

Rep: Reputation: 19
Amd released the fglrx-9.8-legacy driver 2 days ago. It's worth a try.

cu
 
Old 09-05-2009, 06:54 PM   #4
kd5zex
LQ Newbie
 
Registered: Dec 2008
Distribution: Slackware
Posts: 28

Original Poster
Rep: Reputation: 15
I have not tried any other drivers but I will look into openarena.

I tried the ati driver but it wouldn't compile.

glxinfo
Code:
GL_VERSION: 2.1 Mesa 7.5                                  
GL_EXTENSIONS: GL_ARB_depth_texture GL_ARB_draw_buffers GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_framebuffer_object GL_ARB_half_float_pixel GL_ARB_imaging GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_shader_objects GL_ARB_shading_language_100 GL_ARB_shading_language_120 GL_ARB_shadow GL_ARB_shadow_ambient GL_ARB_texture_border_clamp GL_ARB_texture_compression GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_mirrored_repeat GL_ARB_texture_non_power_of_two GL_ARB_texture_rectangle GL_ARB_transpose_matrix GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_window_pos GL_EXT_abgr GL_EXT_bgra GL_EXT_blend_color GL_EXT_blend_equation_separate GL_EXT_blend_func_separate GL_EXT_blend_logic_op GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_compiled_vertex_array GL_EXT_convolution GL_EXT_copy_texture GL_EXT_depth_bounds_test GL_EXT_draw_range_elements GL_EXT_framebuffer_object GL_EXT_framebuffer_blit GL_EXT_fog_coord GL_EXT_gpu_program_parameters GL_EXT_histogram GL_EXT_multi_draw_arrays GL_EXT_packed_depth_stencil GL_EXT_packed_pixels GL_EXT_paletted_texture GL_EXT_pixel_buffer_object GL_EXT_point_parameters GL_EXT_polygon_offset GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_separate_specular_color GL_EXT_shadow_funcs GL_EXT_shared_texture_palette GL_EXT_stencil_two_side GL_EXT_stencil_wrap GL_EXT_subtexture GL_EXT_texture 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_bias GL_EXT_texture_mirror_clamp GL_EXT_texture_object GL_EXT_texture_rectangle GL_EXT_texture_sRGB GL_EXT_texture_swizzle GL_EXT_vertex_array GL_EXT_vertex_array_bgra GL_3DFX_texture_compression_FXT1 GL_APPLE_packed_pixels GL_APPLE_vertex_array_object GL_ATI_blend_equation_separate GL_ATI_envmap_bumpmap GL_ATI_texture_env_combine3 GL_ATI_texture_mirror_once GL_ATI_fragment_shader GL_ATI_separate_stencil GL_IBM_multimode_draw_arrays GL_IBM_rasterpos_clip GL_IBM_texture_mirrored_repeat GL_INGR_blend_func_separate GL_MESA_pack_invert GL_MESA_resize_buffers GL_MESA_texture_array GL_MESA_ycbcr_texture GL_MESA_window_pos GL_NV_blend_square GL_NV_fragment_program GL_NV_light_max_exponent GL_NV_point_sprite GL_NV_texture_env_combine4 GL_NV_texture_rectangle GL_NV_texgen_reflection GL_NV_vertex_program GL_NV_vertex_program1_1 GL_OES_read_format GL_SGI_color_matrix GL_SGI_color_table GL_SGI_texture_color_table GL_SGIS_generate_mipmap GL_SGIS_texture_border_clamp GL_SGIS_texture_edge_clamp GL_SGIS_texture_lod GL_SUN_multi_draw_arrays
GL_RENDERER: Software Rasterizer
GL_VENDOR: Mesa Project
GLU_VERSION: 1.3
GLU_EXTENSIONS: GLU_EXT_nurbs_tessellator GLU_EXT_object_space_tess
GLUT_API_VERSION: 5
GLUT_XLIB_IMPLEMENTATION: 15
 
Old 09-05-2009, 07:11 PM   #5
adamk75
Senior Member
 
Registered: May 2006
Posts: 3,091

Rep: Reputation: 399Reputation: 399Reputation: 399Reputation: 399
Quote:
Originally Posted by bonaire View Post
Amd released the fglrx-9.8-legacy driver 2 days ago. It's worth a try.

cu
Not for Linux. They said they wouldn't be releasing new legacy drivers for r300-r500 cards for linux, unlike their releases for windows (which are now every three months, I believe, for those cards).

And, to confirm that, the latest on on their website for linux is still:

http://support.amd.com/us/gpudownloa...2&lang=English

Which won't work with any kernel newer than 2.6.27.* or X server newer than 1.5.*

Adam
 
Old 09-05-2009, 07:13 PM   #6
adamk75
Senior Member
 
Registered: May 2006
Posts: 3,091

Rep: Reputation: 399Reputation: 399Reputation: 399Reputation: 399
Quote:
Originally Posted by kd5zex View Post
I have not tried any other drivers but I will look into openarena.

I tried the ati driver but it wouldn't compile.

glxinfo
Code:
GL_VERSION: 2.1 Mesa 7.5                                  
<snip>
GL_RENDERER: Software Rasterizer
GL_VENDOR: Mesa Project
GLU_VERSION: 1.3
GLU_EXTENSIONS: GLU_EXT_nurbs_tessellator GLU_EXT_object_space_tess
GLUT_API_VERSION: 5
GLUT_XLIB_IMPLEMENTATION: 15
Alright, despite Direct Rendering being enabled in the X server, your GL library is falling back to the software rasterizer, which would definitely explain the poor performance.

What's the full output of 'LIBGL_DEBUG=verbose glxinfo'? The first few lines should be debugging information explaining why it's failing to use the appropriate hardware driver.

Adam
 
Old 09-05-2009, 07:34 PM   #7
kd5zex
LQ Newbie
 
Registered: Dec 2008
Distribution: Slackware
Posts: 28

Original Poster
Rep: Reputation: 15
Is this somehow a permissions issue?


LIBGL_DEBUG=verbose glxinfo
Code:
libGL: XF86DRIGetClientDriverName: 5.3.0 r300 (screen 0)                                          
libGL: OpenDriver: trying /usr/lib/xorg/modules/dri/r300_dri.so                                   
drmOpenDevice: node name is /dev/dri/card0                                                        
drmOpenDevice: open result is -1, (Permission denied)                                             
drmOpenDevice: open result is -1, (Permission denied)                                             
drmOpenDevice: Open failed                                                                        
drmOpenByBusid: Searching for BusID pci:0000:01:00.0                                              
drmOpenDevice: node name is /dev/dri/card0                                                        
drmOpenDevice: open result is -1, (Permission denied)                                             
drmOpenDevice: open result is -1, (Permission denied)                                             
drmOpenDevice: Open failed                                                                        
drmOpenByBusid: drmOpenMinor returns -13                                                          
drmOpenDevice: node name is /dev/dri/card1                                                        
drmOpenByBusid: drmOpenMinor returns -1                                                           
drmOpenDevice: node name is /dev/dri/card2                                                        
drmOpenByBusid: drmOpenMinor returns -1                                                           
drmOpenDevice: node name is /dev/dri/card3                                                        
drmOpenByBusid: drmOpenMinor returns -1                                                           
drmOpenDevice: node name is /dev/dri/card4                                                        
drmOpenByBusid: drmOpenMinor returns -1                                                           
drmOpenDevice: node name is /dev/dri/card5                                                        
drmOpenByBusid: drmOpenMinor returns -1                                                           
drmOpenDevice: node name is /dev/dri/card6                                                        
drmOpenByBusid: drmOpenMinor returns -1                                                           
drmOpenDevice: node name is /dev/dri/card7                                                        
drmOpenByBusid: drmOpenMinor returns -1                                                           
drmOpenDevice: node name is /dev/dri/card8                                                        
drmOpenByBusid: drmOpenMinor returns -1                                                           
drmOpenDevice: node name is /dev/dri/card9                                                        
drmOpenByBusid: drmOpenMinor returns -1                                                           
drmOpenDevice: node name is /dev/dri/card10                                                       
drmOpenByBusid: drmOpenMinor returns -1                                                           
drmOpenDevice: node name is /dev/dri/card11                                                       
drmOpenByBusid: drmOpenMinor returns -1                                                           
drmOpenDevice: node name is /dev/dri/card12                                                       
drmOpenByBusid: drmOpenMinor returns -1                                                           
drmOpenDevice: node name is /dev/dri/card13                                                       
drmOpenByBusid: drmOpenMinor returns -1                                                           
drmOpenDevice: node name is /dev/dri/card14                                                       
drmOpenByBusid: drmOpenMinor returns -1                                                           
libGL error: drmOpenOnce failed (Operation not permitted)                                         
libGL error: reverting to software direct rendering                                               
libGL: OpenDriver: trying /usr/lib/xorg/modules/dri/swrast_dri.so
 
Old 09-05-2009, 07:48 PM   #8
adamk75
Senior Member
 
Registered: May 2006
Posts: 3,091

Rep: Reputation: 399Reputation: 399Reputation: 399Reputation: 399
Quote:
Originally Posted by kd5zex View Post
Is this somehow a permissions issue?


LIBGL_DEBUG=verbose glxinfo
Code:
libGL: XF86DRIGetClientDriverName: 5.3.0 r300 (screen 0)                                          
libGL: OpenDriver: trying /usr/lib/xorg/modules/dri/r300_dri.so                                   
drmOpenDevice: node name is /dev/dri/card0                                                        
drmOpenDevice: open result is -1, (Permission denied)                                             
drmOpenDevice: open result is -1, (Permission denied)                                             
drmOpenDevice: Open failed
<snip>
libGL error: drmOpenOnce failed (Operation not permitted)                                         
libGL error: reverting to software direct rendering                                               
libGL: OpenDriver: trying /usr/lib/xorg/modules/dri/swrast_dri.so
Indeed, that's what it looks like.

What's the permissions on /dev/dri/card0?

It's probably owned by root, with group video, and both root and group have rw access? If so, make sure your user is part of the video group (or whatever group has rw access).

EDIT:

I'm not in Slackware at the moment, so I don't know what the defaults are, but you can use the following information to make sure your user has permission:

You can change the permissions on /dev/dri/card0 with the DRI section in /etc/X11/xorg.conf:

Code:
Section "DRI"
        Mode 0666
EndSection
That would give DRI access to *everyone*.

Code:
Section "DRI"
        Group "video"
        Mode 0660
EndSection
That would give DRI access to root, plus anyone in the video group, but not anyone else.

Make sense?

Adam
 
Old 09-05-2009, 08:23 PM   #9
kd5zex
LQ Newbie
 
Registered: Dec 2008
Distribution: Slackware
Posts: 28

Original Poster
Rep: Reputation: 15
Thanks, I was not a member of the video group... I could have sworn that I tried the Mode 0666 thing but it's of no matter. I kinda feel like a dolt now.

Just to document the setup I have.

-No Xorg.conf
-User is a member of the video group.
-Getting ~1200 fps in glxgears

Appreciate your help.

Cheers!
 
  


Reply

Tags
ati, radeon, slackware



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Has anyone got Beryl working with open source driver for Radeon X600 and Radeon 9550 Bjwebb Linux - Software 0 04-17-2007 04:44 PM
Cannot install driver for ATi radeon 9800pro blueprobe Linux - Hardware 0 07-22-2005 01:32 PM
Poor 'radeon' performance? nagromo Linux - Hardware 1 02-28-2005 02:21 PM
radeon 7200, poor performance Prism Slackware 6 01-09-2005 12:48 PM
Radeon 9800pro driver mogumbo Linux - Hardware 6 05-20-2003 12:18 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 07:39 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration