Announcement

Collapse
No announcement yet.

Full EXA Composite For R300-500 GPUs

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    Originally posted by Tillin9 View Post
    Ah, I had remembered a few quotes from the radeonhd developers along the lines of "we're trying to keep things similar to make sharing code easier" from the forum and from FOSDEM talks. I guess the drivers diverged enough for this to be no longer the case.
    I don't think anything has changed. AFAIK we all still believe that acceleration code can be shared with relatively few changes. The two drivers store information in different data structures but it should be pretty easy to isolate those differences.

    Originally posted by Tillin9 View Post
    After reading today's article, my big question is which method leads to kernel-level modesetting, ideally, platform independent (non-x86) kernel-level modesetting?
    Both methods could work fine for kernel modesetting. I think Dave (the kernel DRM maintainer) is leaning towards AtomBIOS because it allows the modesetting code to be smaller and require fewer changes for new GPUs, but that is more of a preference than a black/white choice.

    Comment


    • #17
      Originally posted by bridgman View Post
      Both methods could work fine for kernel modesetting. I think Dave (the kernel DRM maintainer) is leaning towards AtomBIOS because it allows the modesetting code to be smaller and require fewer changes for new GPUs, but that is more of a preference than a black/white choice.
      I guess it will be atombios. Thinking backing this is that windows driver use that so it has to work, i was told that such things is obvious

      Comment


      • #18
        Thanks for all the clarification. If AtomBIOS is just a lookup table designed so that drives can be smaller and documentation needs not be at the level of set this register, then set that register, I think its more than okay. Especially if everything is being documented anyway.

        Just to mention I'm eagerly waiting for kernel modesetting, I have a MIPS box I'd love to equip with an X1550.

        Comment


        • #19
          Originally posted by Tillin9 View Post
          Thanks for all the clarification. If AtomBIOS is just a lookup table designed so that drives can be smaller and documentation needs not be at the level of set this register, then set that register, I think its more than okay. Especially if everything is being documented anyway.
          We are providing the register documentation, and, on the radeon driver at least, we print out every operation in each script so you can cross reference the register guide to see exactly what it's doing if you are interested.

          Comment


          • #20
            From testing the new branch on my R480 (X800 GTO^2), it seems that scrolling is significantly faster, but dragging windows (even switching windows) is much slower than XAA.

            Great work nonetheless.

            Comment


            • #21
              I'm still doing great on EXA with AccelDFS enabled. No scrolling problems to report at all anymore. If anything, the latest git pushes to the driver have improved my stability. FPS increased by about 100 in glxgears as well. Good work!

              Comment


              • #22
                The latest git pushes to the driver changed a couple of things on my Radeon 9700 Pro. Glxgears increased by 50 FPS on average. The biggest improvement is on the textured video front. Quality went up, but quality and framerate is still lower than overlay. Mainly CPU usage with textured video is 100%, while with overlay is around 30% for the same fullscreen.

                Comment


                • #23
                  I'm having issues with stuff that uses the 3d engine.

                  I have an x1600. When I switch on composite, the whole system freezes after a couple of seconds. I'm thinking that it's an initialization issue, because the fan on my card throttles to full speed right after the system freezes. This also happens when I try to use Xv with textured video.

                  Is the x1600 known not to work with this stuff yet? It seems like it might be hard to trace the problem, because no error is given and I have to hard reset my computer before it works again.

                  A second, somewhat more trivial (but annoying) issue is that the ati driver garbles my framebuffer console as soon as Xorg starts up, so I can't go back to text mode.

                  Comment


                  • #24
                    Originally posted by TechMage89 View Post
                    I'm having issues with stuff that uses the 3d engine.

                    I have an x1600. When I switch on composite, the whole system freezes after a couple of seconds. I'm thinking that it's an initialization issue, because the fan on my card throttles to full speed right after the system freezes. This also happens when I try to use Xv with textured video.

                    Is the x1600 known not to work with this stuff yet? It seems like it might be hard to trace the problem, because no error is given and I have to hard reset my computer before it works again.

                    A second, somewhat more trivial (but annoying) issue is that the ati driver garbles my framebuffer console as soon as Xorg starts up, so I can't go back to text mode.
                    This code is still new, so there are still some bugs that need to be shaken out. Please file bugs for these issues and attach your xorg logs and configs.

                    https://bugs.freedesktop.org

                    Comment


                    • #25
                      This code is still new, so there are still some bugs that need to be shaken out. Please file bugs for these issues and attach your xorg logs and configs.
                      Might have to wait until after I get back from vacation. I'll get to it though, crummy ati drivers were the primary reason I've been stuck on Windows for most stuff, so I want to help improve them any way I can.

                      I'm hoping I might have time this summer to actually learn how the hardware and drivers work so I can contribute code myself. But right now I'm unfortuately too busy.

                      Comment


                      • #26
                        exa + composite is working really great now on my radeon 9700. no matter whether i use compiz or the old xcompmgr - scrolling and blending is f***ing fast and keeps the cpu almost idle.
                        thanks to all who made this possible, you are doing a great job

                        Comment


                        • #27
                          3D almost there on R520

                          Hi,

                          After the recent work by Alex I decided to try the latest 'radeon' driver, kernel drm module, and mesa (all from git). At first I would just get an error when starting 3D:

                          Code:
                          $ glxinfo
                          unknown chip id 0x7100, can't guess
                          so I added my PCI id to the mesa source and now I get:

                          Code:
                          $ glxinfo
                          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_import_context, GLX_EXT_texture_from_pixmap, 
                              GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer, 
                              GLX_OML_swap_method, GLX_SGI_swap_control, GLX_SGIS_multisample, 
                              GLX_SGIX_fbconfig, GLX_SGIX_visual_select_group
                          client glx vendor string: SGI
                          client glx version string: 1.4
                          client glx extensions:
                              GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context, 
                              GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_allocate_memory, 
                              GLX_MESA_copy_sub_buffer, GLX_MESA_swap_control, 
                              GLX_MESA_swap_frame_usage, GLX_OML_swap_method, GLX_OML_sync_control, 
                              GLX_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGI_video_sync, 
                              GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, 
                              GLX_SGIX_visual_select_group, GLX_EXT_texture_from_pixmap
                          GLX version: 1.2
                          GLX extensions:
                              GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context, 
                              GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer, 
                              GLX_MESA_swap_control, GLX_MESA_swap_frame_usage, GLX_OML_swap_method, 
                              GLX_SGI_swap_control, GLX_SGI_video_sync, GLX_SGIS_multisample, 
                              GLX_SGIX_fbconfig, GLX_SGIX_visual_select_group
                          OpenGL vendor string: DRI R300 Project
                          OpenGL renderer string: Mesa DRI R300 20060815 x86/MMX+/3DNow!+/SSE2 NO-TCL
                          OpenGL version string: 1.3 Mesa 7.1
                          OpenGL extensions:
                              GL_ARB_depth_texture, GL_ARB_fragment_program, GL_ARB_imaging, 
                              GL_ARB_multisample, GL_ARB_multitexture, 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_MESAX_texture_float, GL_ARB_texture_mirrored_repeat, 
                              GL_ARB_texture_rectangle, GL_ARB_transpose_matrix, 
                              GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, 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_clip_volume_hint, GL_EXT_compiled_vertex_array, GL_EXT_convolution, 
                              GL_EXT_copy_texture, GL_EXT_draw_range_elements, 
                              GL_EXT_gpu_program_parameters, GL_EXT_histogram, GL_EXT_packed_pixels, 
                              GL_EXT_polygon_offset, GL_EXT_rescale_normal, GL_EXT_secondary_color, 
                              GL_EXT_separate_specular_color, 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_filter_anisotropic, GL_EXT_texture_lod_bias, 
                              GL_EXT_texture_mirror_clamp, GL_EXT_texture_object, 
                              GL_EXT_texture_rectangle, GL_EXT_vertex_array, GL_APPLE_packed_pixels, 
                              GL_ATI_blend_equation_separate, GL_ATI_texture_env_combine3, 
                              GL_ATI_texture_mirror_once, GL_IBM_rasterpos_clip, 
                              GL_IBM_texture_mirrored_repeat, GL_INGR_blend_func_separate, 
                              GL_MESA_pack_invert, GL_MESA_ycbcr_texture, GL_MESA_window_pos, 
                              GL_NV_blend_square, GL_NV_light_max_exponent, GL_NV_texture_rectangle, 
                              GL_NV_texgen_reflection, GL_NV_vertex_program, GL_OES_read_format, 
                              GL_SGI_color_matrix, GL_SGI_color_table, GL_SGIS_generate_mipmap, 
                              GL_SGIS_texture_border_clamp, GL_SGIS_texture_edge_clamp, 
                              GL_SGIS_texture_lod, GL_SGIX_depth_texture
                          
                             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
                          ----------------------------------------------------------------------
                          0x21 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  0  0  0  0  0  0 0 None
                          0x22 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  0  0  0  0  0  0 0 None
                          0x6c 32 tc  0 32  0 r  .  .  8  8  8  8  0 24  0  0  0  0  0  0 0 None
                          when I try to use 3D, like glxgears, nothing shows up except a black screen where the gears should be, but the text output tells me I'm getting about 3000-4000 fps. is 3D really this close to working? any suggestions on how I can get it working on my X1800 PCIe 512MB card?

                          Code:
                          05:00.0 VGA compatible controller: ATI Technologies Inc R520 [Radeon X1800] (prog-if 00 [VGA controller])
                                  Subsystem: ATI Technologies Inc Unknown device 0b12
                                  Flags: bus master, fast devsel, latency 0, IRQ 21
                                  Memory at d0000000 (64-bit, prefetchable) [size=256M]
                                  Memory at fd7f0000 (64-bit, non-prefetchable) [size=64K]
                                  I/O ports at 7c00 [size=256]
                                  [virtual] Expansion ROM at fd700000 [disabled] [size=128K]
                                  Capabilities: <access denied>
                          
                          05:00.1 Display controller: ATI Technologies Inc R520 [Radeon X1800] (Secondary)
                                  Subsystem: ATI Technologies Inc Unknown device 0b13
                                  Flags: fast devsel
                                  Memory at fd7e0000 (64-bit, non-prefetchable) [disabled] [size=64K]
                                  Capabilities: <access denied>
                          If you need to see my xorg.log I put a copy at:

                          HTML Code:
                          http://www.webaccel.net/surfer/xorg.log
                          Any help would be appreciated.

                          Thanks,
                          Matt.
                          Last edited by surfer; 03-20-2008, 06:48 PM.

                          Comment


                          • #28
                            The R5xx 3D support is not in the main repositories yet. Dave's blog page has links to the private branches - one for mesa and one for DRM.

                            As I understand it, right now the R5xx 3D code is working on RV5xx parts but has problems with R5xx parts like yours.

                            http://airlied.livejournal.com

                            Then again, it's only been running for a day so it might get better tonight

                            Comment


                            • #29
                              surfer,

                              I tried with a 0x7100 this morning with a blank screen. but no results were shown in my case.

                              I had then tried with an RV515, but that too had the same problem for me.
                              Michael Larabel
                              http://www.michaellarabel.com/

                              Comment


                              • #30
                                The 3D driver and EXA composite support are separate things. All you need to try out the new EXA composite is the radeon driver from git and optionally the latest drm bits for CP support. To play with r5xx 3D, you need the latest radeon bits and Dave's drm and mesa branches. Also, Dave just got it running last night, so it may or may not work for everyone yet.

                                Comment

                                Working...
                                X