Announcement

Collapse
No announcement yet.

R6xx/R7XX kernel 2.6.33 module performance hacks

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

  • Obscene_CNN
    replied
    on my machine gltestperf hangs in the same spot with or without my patches.

    Leave a comment:


  • monraaf
    replied
    Just to be clear, it isn't your patch that's causing this because I haven't tried it yet. Just by the name of it it looks like some kind of OpenGL benchmark utility that can be used to test your performance hacks (if it doesn't kill your system)

    Leave a comment:


  • Obscene_CNN
    replied
    Originally posted by monraaf View Post
    Did you try benchmarking with progs/demos/gltestperf ? It locks-up the machine here
    I didn't check with that one. I will try it.

    I did have someone test it with ut2004 with great results

    Leave a comment:


  • monraaf
    replied
    Did you try benchmarking with progs/demos/gltestperf ? It locks-up the machine here

    Leave a comment:


  • Obscene_CNN
    replied
    Originally posted by tettamanti View Post


    *_RING are macros, so they are already inlined. You also left in place the OUT_RING and ADVANCE_RING macros, so the ring may be written twice (with strange side effects since tail pointer may be changed twice).
    Furthermore I fail to parse the
    Code:
    if (write < ...
    statements; typo?
    The macros implement a write, an increment of an index, and a mask operation. My patch does a check to see if the mask operation is needed and if not executes just writes. This leads to code that takes 1/4 the time required to execute because the cpu can execute both writes in parallel. This gives you two writes per cpu cycle.

    With the macro the write and the index increment can be done in parallel. The mask operation cannot be done in parallel with the next write because of a data dependency. So you get one write every two cpu cycles.

    Leave a comment:


  • tettamanti
    replied


    *_RING are macros, so they are already inlined. You also left in place the OUT_RING and ADVANCE_RING macros, so the ring may be written twice (with strange side effects since tail pointer may be changed twice).
    Furthermore I fail to parse the
    Code:
    if (write < ...
    statements; typo?

    Leave a comment:


  • Obscene_CNN
    started a topic R6xx/R7XX kernel 2.6.33 module performance hacks

    R6xx/R7XX kernel 2.6.33 module performance hacks

    here are some kernel 2.6.33 module performance patches for r6xx/7xx chipsets that I wrote.

    http://pastebin.ca/1743103
    http://pastebin.ca/1743100

    It made Torcs playable on my laptop.

    The benchmark x11perf -aa10text shows more than 5% improvement on my lap top

    Please give me a before and after benchmark with the command x11perf -aa10text if you could.
Working...
X