First DRI uber-benchmark

2004-08-22 Thread John Lightsey
This is my third attempt sending this email.  If sourceforge decides to let 
all three copies through at once, you'll have to forgive me.


A while back it was suggested that benchmarking all of the various
DRI-compatible video cards might provide some interesting information.  I
just finished my first attempt at performing a slew of benchmarks with this
goal, and the results haven't been great.  It's certainly possible that (a)
some of the video cards might be bad since they were purchased on ebay, (b) I
didn't configure some of them properly, or (c) the CVS checkout I used had
problems.

At any rate, here are the results of the first run.  If anyone has
 suggestions for fixing any of the cards which failed in one way or another,
 I would really appreciate the feedback.


Setup:

I used an old ECS k7s5a pro motherboard with an Athlon 2400XP.  512 MB of
PC2100 Ram, onboard sound, IBM G74 monitor, and Maxtor ATA100 drive.

The OS was Debian Unstable, with the sources.list set to snapshot.debian.net
with a date of 15 Aug 2004.  The DRI packages I used are the same ones on my
server (CVS checkout from 15 Aug 04 with S3TC and Radeon DynamicPM.)

I shut off most of the services on the machine.  rcconf shows klogd, makedev,
and sysklogd as the only services active at boot.  The kernel used was
2.6.7-1-k7 from Debian.


Method:

All of the benchmarks were started with X already running.  I logged into a
user account, started X with xinit /usr/X11R6/bin/xterm -- :0 then ran the
benchmarks one after the other.

glxgears - let it run for 1 minute then marked down the highest score

quake2 - s_initsound 0, snd_restart, timedemo 1, map demo1.dm2.  Run each
resolution 2x and select the highest score.  Used glx OpenGL driver.

quake3 - s_initsound 0, snd_restart, timedemo 1, demo four.  Run each
resolution 2x and select the highest score.

RTCW - launched with wolfmp +set sv_cheats 1, s_initsound 0, snd_restart,
timedemo 1, demo checkpoint.  Run each resolution 2x and select the highest
score.

Unreal Tournament - launch game, bring up console, timedemo 1, wait for
second flyby to complete then mark down second score.

X and the games were all configured for 16 bit color.
r_ext_compressed_textures was set to 0.

Cards that didn't work:

Oxygen GMX 2000 96MB (gamma).  I tried various BusID values.  X would start,
but direct rendering was always disabled.

Diamond Speedstar a90 16MB (savage 4 pro+)  Lots of lockups.  glxgears gave
this a disappointing 229 fps.

Shuttle Spacewalker 32MB (sis 305)  Crashes on RTCW, hangs on Unreal 
Tournament.  glxgears gave this 337.8 fps.

Rage Pro Turbo (mach64)  glxgears works with 181.6 fps, but every other
 OpenGL program would crash.

Rage 128 Pro (r128)  At 640x480 this one seemed semi-reliable.  At 1024x768
 it usually froze.  glxgears gave this one 518.6 fps.


Cards that worked (more or less):

Voodoo 5-5500 64MB (tdfx)
glxgears - 1425.6
q2 640x480 - 56.4
q2 800x600 - 51.2
q2 1024x768 - 42.9
q3 640x480 - 95
q3 800x600 - 68
q3 1024x768 - 46.1
rtcw 640x480 - 57.6
rtcw 800x600 - 44.6
rtcw 1024x768 - 32.3
ut 640x480 - 80.79
ut 800x600 - 76.6
ut 1024x768 - 58.11
Notes: Seemed very reliable.

IBM SR9 16MB Savage 4 eXtreme (savage)
glxgears - 569.2
q2 640x480 - 49.4
q2 800x600 - 38.8
q2 1024x768 - 27.1
q3 640x480 - 45.1
q3 800x600 - 34.4
q3 1024x768 - 23.3
rtcw 640x480 - segfault
rtcw 800x600 - segfault
rtcw 1024x768 - segfault
ut 640x480 - 36.8
ut 800x600 - 28.78
ut 1024x768 - 20.6
Notes: The segfault in RTCW seemed to be related to the checkpoint demo.
wolfsp seemed to run fine.

Radeon DDR 32MB (r100)
glxgears - 1123
q2 640x480 - 87.8
q2 800x600 - 74.2
q2 1024x768 - 58.1
q3 640x480 - 114.9
q3 800x600 - 80.9
q3 1024x768 - 53.5
rtcw 640x480 - 85.5
rtcw 800x600 - 63.9
rtcw 1024x768 - 43.7
ut 640x480 - 82.97
ut 800x600 - 76.34
ut 1024x768 - 56.4
Notes: RTCW was substantially slower on the first run.  Screen became
corrupted once and was only fixed be a reboot.

Matrox G400 32MB (mga)
glxgears - 1000.2
q2 640x480 - 62.9
q2 800x600 - 52.3
q2 1024x768 - 40.2
q3 640x480 - 65.9
q3 800x600 - 51.4
q3 1024x768 - 36.4
rtcw 640x480 - 42.3
rtcw 800x600 - 33.5
rtcw 1024x768 - 24.7
ut 640x480 - 35.32
ut 800x600 - 30.98
ut 1024x768 - 26.7
Notes: Reliable, looks great.  UT suffered from lots of software fallback.

Radeon 8500 AIW 128MB (r200)
glxgears - 2583.4
q2 640x480 - 115
q2 800x600 - 105.4
q2 1024x768 - 88.2
q3 640x480 - 165.3
q3 800x600 - 131.5
q3 1024x768 - 90.6
rtcw 640x480 - 98.4
rtcw 800x600 - 92.2
rtcw 1024x768 - 68
ut 640x480 - 73.74
ut 800x600 - 73.4
ut 1024x768 - 67.14
Notes: Roland's observations about massive slowdown at the end of the UT
 flyby are still accurate.  Although not tested, the 8500 locks up playing
 ut2003 and ut2004.


I have a few more cards to benchmark for comparison.

Nvidia - TNT2 and FX5200
FGLRX - Radeon 8500 AIW and Radeon 9600se

I also have a Radeon 9200 that I was unable to get working with this machine.

Once I have all the benchmarks together I'll make some 

Re: First DRI uber-benchmark

2004-08-22 Thread Adam Jackson
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Sunday 22 August 2004 02:16, John Lightsey wrote:
 At any rate, here are the results of the first run.  If anyone has
 suggestions for fixing any of the cards which failed in one way or
 another, I would really appreciate the feedback.

Awesome stuff.

I'd ask that you open bugs for the crashes you get, preferably with testcases 
that aren't closed-source games if possible.

 All of the benchmarks were started with X already running.  I logged into a
 user account, started X with xinit /usr/X11R6/bin/xterm -- :0 then ran
 the benchmarks one after the other.

There are several programs under mesa/progs/* that include synthetic 
benchmarks, which might show interesting variations compared with glxgears 
(the other canonical synthetic benchmark).  Maybe.  Also several of the 
xscreensaver GL demos have benchmarks; glblur, blocktube, flurry, and 
lavalite are particularly punishing, and menger and sierpinski3d are great 
for generating absurd numbers of polygons.

 Cards that didn't work:

 Oxygen GMX 2000 96MB (gamma).  I tried various BusID values.  X would
 start, but direct rendering was always disabled.

This you can probably drop from future testing.

 Rage Pro Turbo (mach64)  glxgears works with 181.6 fps, but every other
 OpenGL program would crash.

This is disturbing, I used to play ut on a mach64 all the time.  Perhaps the 
DMA path is still busted?

- - ajax
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.4 (GNU/Linux)

iD8DBQFBKEKcW4otUKDs0NMRAgKtAKCUxdHJ5lFXMK0i+o6lFcdqrHRN1ACfQoL9
Kk57HH8zm33OypDlRZbhW3A=
=o0+S
-END PGP SIGNATURE-


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread Michael Mazack
 Diamond Speedstar a90 16MB (savage 4 pro+)  Lots of
lockups.

I can confirm that this card locks up very frequently.
One way which I have found to immediately lock it up
is by attempting to use GL_NV_texgen_reflection.

Hope this helps the savage developers.




__
Do you Yahoo!?
Yahoo! Mail - 50x more storage than other providers!
http://promotions.yahoo.com/new_mail


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 1003] running two instances of glsnake locks X

2004-08-22 Thread bugzilla-daemon
Please do not reply to this email: if you want to comment on the bug, go to  
the URL shown below and enter yourcomments there.   
 
https://freedesktop.org/bugzilla/show_bug.cgi?id=1003
   




--- Additional Comments From [EMAIL PROTECTED]  2004-08-22 01:23 ---
Could you try again with current mesa-cvs ?
Eric Anholt committed a fix against locking issues with r100/r200.
I tried it on r100 and it helped: running glxgears and some instances ipers at
the same time worked well: no data/vertex-migration between contexts. q3a and
glxgears at the same time seems to be ok now, too.
   
   
-- 
Configure bugmail: https://freedesktop.org/bugzilla/userprefs.cgi?tab=email   
   
--- You are receiving this mail because: ---
You are the assignee for the bug, or are watching the assignee.


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [PATCH][DRI] Fix singlesize.c compile error for glx...

2004-08-22 Thread Felix Kühling
On Sat, 21 Aug 2004 23:44:26 -0500
Steven J. Hill [EMAIL PROTECTED] wrote:

 Latest CVS checkout does not compile, please apply.
 
 -Steve

Please note that the xc module in DRI CVS has been officially declared
dead. All DRI development is now going on in either Mesa CVS or Xorg
CVS. Only the DRM module is still in DRI CVS.

I'm going to commit a fix for this anyway in order to get the snapshots
building again until I get around to making them build them from Xorg CVS.

Regards,
  Felix

 
 
[snip patch]

| Felix Kühling [EMAIL PROTECTED] http://fxk.de.vu |
| PGP Fingerprint: 6A3C 9566 5B30 DDED 73C3  B152 151C 5CC1 D888 E595 |


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread Steffen Hein
On Sunday 22 August 2004 08:16, John Lightsey wrote:
 Rage 128 Pro (r128)  At 640x480 this one seemed semi-reliable.  At 1024x768
  it usually froze.  glxgears gave this one 518.6 fps.

I also encountered this instability on a mobility M6 (mobile Rage128)


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread Felix Kühling
On Sun, 22 Aug 2004 01:16:18 -0500
John Lightsey [EMAIL PROTECTED] wrote:

 
 Diamond Speedstar a90 16MB (savage 4 pro+)  Lots of lockups.  glxgears gave
 this a disappointing 229 fps.

There are rumors about some Savage4's that lock up when reading the
status register. :-/ A workaround would be to use shadow status (the
card writes status to system/AGP memory and the driver picks it up from
there). This is high on my todo list, but it'll require some fundamental
work on the DRM driver first. In the mean time, maybe trying different
AGP speeds would help. Or is this a PCI card?

Also, the Savage4 I'm using for testing here has severe heat problems.
Mounting a small fan on top of the passive heat sink helped.

 IBM SR9 16MB Savage 4 eXtreme (savage)
 glxgears - 569.2
 q2 640x480 - 49.4
 q2 800x600 - 38.8
 q2 1024x768 - 27.1
 q3 640x480 - 45.1
 q3 800x600 - 34.4
 q3 1024x768 - 23.3
 rtcw 640x480 - segfault
 rtcw 800x600 - segfault
 rtcw 1024x768 - segfault
 ut 640x480 - 36.8
 ut 800x600 - 28.78
 ut 1024x768 - 20.6
 Notes: The segfault in RTCW seemed to be related to the checkpoint demo.
 wolfsp seemed to run fine.

Good to know that at least one Savage4 works more or less reliably. ;-)

Regards,
  Felix

| Felix Kühling [EMAIL PROTECTED] http://fxk.de.vu |
| PGP Fingerprint: 6A3C 9566 5B30 DDED 73C3  B152 151C 5CC1 D888 E595 |


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread Simon 'corecode' Schubert
On 22.08.2004, at 08:16, John Lightsey wrote:
glxgears - let it run for 1 minute then marked down the highest score
how reproducable and meaningful is a highest score? I don't know, but I 
got a feeling that using a mean or a median might be of better 
reproducability and also might better reflect common 3d response 
feeling (in case you want to make a real-world benchmark, not a 
synthetic one).

cheers
  simon
--
/\
\ /
 \ ASCII Ribbon Campaign
/ \  Against HTML Mail and News


PGP.sig
Description: This is a digitally signed message part


Re: First DRI uber-benchmark

2004-08-22 Thread John Lightsey
On Sunday 22 August 2004 04:57, Simon 'corecode' Schubert wrote:
 On 22.08.2004, at 08:16, John Lightsey wrote:
  glxgears - let it run for 1 minute then marked down the highest score

 how reproducable and meaningful is a highest score? I don't know, but I
 got a feeling that using a mean or a median might be of better
 reproducability and also might better reflect common 3d response
 feeling (in case you want to make a real-world benchmark, not a
 synthetic one).


The high score ends up being a fraction of a frame higher than the mode score.  
The difference doesn't seem significant on any of the cards.

John


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread John Lightsey
On Sunday 22 August 2004 04:59, Felix Kühling wrote:
 On Sun, 22 Aug 2004 01:16:18 -0500

 John Lightsey [EMAIL PROTECTED] wrote:
  Diamond Speedstar a90 16MB (savage 4 pro+)  Lots of lockups.  glxgears
  gave this a disappointing 229 fps.

 There are rumors about some Savage4's that lock up when reading the
 status register. :-/ A workaround would be to use shadow status (the
 card writes status to system/AGP memory and the driver picks it up from
 there). This is high on my todo list, but it'll require some fundamental
 work on the DRM driver first. In the mean time, maybe trying different
 AGP speeds would help. Or is this a PCI card?

They're all AGP cards.  I'll try setting the a90 to AGP1x to see if that 
helps.  The crash with the IBM SR9 happens while the checkpoint demo is 
loading.  Some kind of texture loading problem perhaps?

John


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: 2.4.8.1+P6: radeon, dri xruns

2004-08-22 Thread Alan Cox
On Sul, 2004-08-22 at 02:51, Jon Smirl wrote:
 Michel pointed out that all IOCTL calls hold the big kernel lock.
 Releasing this lock is sure to case problems since the DRM code is not
 designed to be reentrant.

That lock is already released whenever the code sleeps (eg page faults)
so if its broken then its already broken and it doesn't matter. If it
isnt broken then its still not broken



---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread Alan Cox
On Sul, 2004-08-22 at 07:16, John Lightsey wrote:
 I shut off most of the services on the machine.  rcconf shows klogd, makedev,
 and sysklogd as the only services active at boot.  The kernel used was
 2.6.7-1-k7 from Debian.

Which DRI kernel modules - the CVS tree provided ones or the 2.6.7
kernel ones ?



---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread Dave Airlie

 Which DRI kernel modules - the CVS tree provided ones or the 2.6.7
 kernel ones ?

there should be no regression between them, I'd expect the currrnt CVS
ones might in theory be slower than 2.6.7 but I haven't seen any
regressions on the radeon modules while I've been doing the function table
work, 2.6.7 is pretty close to CVS about 5 mths ago...

I don't think we have fixed any lockups or anything of that great interest
in this time ..

Dave.


-- 
David Airlie, Software Engineer
http://www.skynet.ie/~airlied / airlied at skynet.ie
pam_smb / Linux DECstation / Linux VAX / ILUG person



---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread Alan Cox
On Sul, 2004-08-22 at 13:11, Dave Airlie wrote:
 there should be no regression between them, I'd expect the currrnt CVS
 ones might in theory be slower than 2.6.7 but I haven't seen any
 regressions on the radeon modules while I've been doing the function table
 work, 2.6.7 is pretty close to CVS about 5 mths ago...
 
 I don't think we have fixed any lockups or anything of that great interest
 in this time ..

At least on the fedora-test list the new Xorg CVS seems to be showing up
some i815/830 works with 2.6.8.1 but not 2.6.old kernels.



---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


First DRI uber-benchmark

2004-08-22 Thread John Lightsey
A while back it was suggested that benchmarking all of the various 
DRI-compatible video cards might provide some interesting information.  I 
just finished my first attempt at performing a slew of benchmarks with this 
goal, and the results haven't been great.  It's certainly possible that (a) 
some of the video cards might be bad since they were purchased on ebay, (b) I 
didn't configure some of them properly, or (c) the CVS checkout I used had 
problems.

At any rate, here are the results of the first run.  If anyone has suggestions 
for fixing any of the cards which failed in one way or another, I would 
really appreciate the feedback.


Setup:

I used an old ECS k7s5a pro motherboard with an Athlon 2400XP.  512 MB of 
PC2100 Ram, onboard sound, IBM G74 monitor, and Maxtor ATA100 drive.

The OS was Debian Unstable, with the sources.list set to snapshot.debian.net 
with a date of 15 Aug 2004.  The DRI packages I used are the same ones on my 
server (CVS checkout from 15 Aug 04 with S3TC and Radeon DynamicPM.)

I shut off most of the services on the machine.  rcconf shows klogd, makedev, 
and sysklogd as the only services active at boot.  The kernel used was 
2.6.7-1-k7 from Debian.


Method:

All of the benchmarks were started with X already running.  I logged into a 
user account, started X with xinit /usr/X11R6/bin/xterm -- :0 then ran the 
benchmarks one after the other.

glxgears - let it run for 1 minute then marked down the highest score

quake2 - s_initsound 0, snd_restart, timedemo 1, map demo1.dm2.  Run each 
resolution 2x and select the highest score.  Used glx OpenGL driver.

quake3 - s_initsound 0, snd_restart, timedemo 1, demo four.  Run each 
resolution 2x and select the highest score.

RTCW - launched with wolfmp +set sv_cheats 1, s_initsound 0, snd_restart, 
timedemo 1, demo checkpoint.  Run each resolution 2x and select the highest 
score.

Unreal Tournament - launch game, bring up console, timedemo 1, wait for 
second flyby to complete then mark down second score.

X and the games were all configured for 16 bit color.  
r_ext_compressed_textures was set to 0.

Cards that didn't work:

Oxygen GMX 2000 96MB (gamma).  I tried various BusID values.  X would start, 
but direct rendering was always disabled.

Diamond Speedstar a90 16MB (savage 4 pro+)  Lots of lockups.  glxgears gave 
this a disappointing 229 fps.

Shuttle Spacewalker 16MB (sis 305)  Lots of crashing.  Problems with vesafb?  
glxgears gave this 337.8 fps.

Rage Pro Turbo (mach64)  glxgears works with 181.6 fps, but every other OpenGL 
program would crash.

Rage 128 Pro (r128)  At 640x480 this one seemed semi-reliable.  At 1024x768 it 
usually froze.  glxgears gave this one 518.6 fps.


Cards that worked (more or less):

Voodoo 5-5500 64MB (tdfx)
glxgears - 1425.6
q2 640x480 - 56.4
q2 800x600 - 51.2
q2 1024x768 - 42.9
q3 640x480 - 95
q3 800x600 - 68
q3 1024x768 - 46.1
rtcw 640x480 - 57.6
rtcw 800x600 - 44.6
rtcw 1024x768 - 32.3
ut 640x480 - 80.79
ut 800x600 - 76.6
ut 1024x768 - 58.11
Notes: Seemed very reliable.

IBM SR9 16MB Savage 4 eXtreme (savage)
glxgears - 569.2
q2 640x480 - 49.4
q2 800x600 - 38.8
q2 1024x768 - 27.1
q3 640x480 - 45.1
q3 800x600 - 34.4
q3 1024x768 - 23.3
rtcw 640x480 - segfault
rtcw 800x600 - segfault
rtcw 1024x768 - segfault
ut 640x480 - 36.8
ut 800x600 - 28.78
ut 1024x768 - 20.6
Notes: The segfault in RTCW seemed to be related to the checkpoint demo.  
wolfsp seemed to run fine.

Radeon DDR 32MB (r100)
glxgears - 1123
q2 640x480 - 87.8
q2 800x600 - 74.2
q2 1024x768 - 58.1
q3 640x480 - 114.9
q3 800x600 - 80.9
q3 1024x768 - 53.5
rtcw 640x480 - 85.5
rtcw 800x600 - 63.9
rtcw 1024x768 - 43.7
ut 640x480 - 82.97
ut 800x600 - 76.34
ut 1024x768 - 56.4
Notes: RTCW was substantially slower on the first run.  Screen became 
corrupted once and was only fixed be a reboot.

Matrox G400 32MB (mga)
glxgears - 1000.2
q2 640x480 - 62.9
q2 800x600 - 52.3
q2 1024x768 - 40.2
q3 640x480 - 65.9
q3 800x600 - 51.4
q3 1024x768 - 36.4
rtcw 640x480 - 42.3
rtcw 800x600 - 33.5
rtcw 1024x768 - 24.7
ut 640x480 - 35.32
ut 800x600 - 30.98
ut 1024x768 - 26.7
Notes: Reliable, looks great.  UT suffered from lots of software fallback.

Radeon 8500 AIW 128MB (r200)
glxgears - 2583.4
q2 640x480 - 115
q2 800x600 - 105.4
q2 1024x768 - 88.2
q3 640x480 - 165.3
q3 800x600 - 131.5
q3 1024x768 - 90.6
rtcw 640x480 - 98.4
rtcw 800x600 - 92.2
rtcw 1024x768 - 68
ut 640x480 - 73.74
ut 800x600 - 73.4
ut 1024x768 - 67.14
Notes: Roland's observations about massive slowdown at the end of the UT flyby 
are still accurate.  Although not tested, the 8500 locks up playing ut2003 
and ut2004.


I have a few more cards to benchmark for comparison.

Nvidia - TNT2 and FX5200
FGLRX - Radeon 8500 AIW and Radeon 9600se

I also have a Radeon 9200 that I was unable to get working with this machine.

Once I have all the benchmarks together I'll make some pretty little graphs.

Soany suggestions, comments, feedback?

John



Re: 2.4.8.1+P6: radeon, dri xruns

2004-08-22 Thread Lee Revell
On Sat, 2004-08-21 at 15:25, Fernando Pablo Lopez-Lezcano wrote:
 On Fri, 2004-08-20 at 22:59, Jon Smirl wrote:
  I don't believe the DRM drivers are holding any global kernel locks
  when they do wait_for_fifo. Any locks held would be internal to DRM and
  can be changed if needed.
 
 There must be a lock. I used to use a patch that I found somewhere (that
 does conditional reschedules), but it triggers the scheduling while
 lock held kernel oops if you enable that option in the kernel
 configuration. 
 

There are several, and they undoubtedly interact in subtle ways.  Grep
for spin_lock in the drm directory and you will see what i mean.  These
locks are internal to the DRM and not global kernel locks, which makes
it possible to fix them, but holding any spinlock will disable
preemption.

Based on the generalized solution Ingo proposed and the reaction of the
DRI developers it seems like this will not be too hard to fix, but a
thorough understanding of the locking code will be required.

Lee



---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread John Lightsey
On Sunday 22 August 2004 01:52, Adam Jackson wrote:
 On Sunday 22 August 2004 02:16, John Lightsey wrote:
  At any rate, here are the results of the first run.  If anyone has
  suggestions for fixing any of the cards which failed in one way or
  another, I would really appreciate the feedback.

 Awesome stuff.

 I'd ask that you open bugs for the crashes you get, preferably with
 testcases that aren't closed-source games if possible.


Once I'm certain that the problems are not caused by bad hardware or a bad 
configuration on my part I'll try to debug and report the lockups and 
crashes.  

  All of the benchmarks were started with X already running.  I logged into
  a user account, started X with xinit /usr/X11R6/bin/xterm -- :0 then
  ran the benchmarks one after the other.

 There are several programs under mesa/progs/* that include synthetic
 benchmarks, which might show interesting variations compared with glxgears
 (the other canonical synthetic benchmark).  Maybe.  Also several of the
 xscreensaver GL demos have benchmarks; glblur, blocktube, flurry, and
 lavalite are particularly punishing, and menger and sierpinski3d are great
 for generating absurd numbers of polygons.


I looked around for some free software programs that would calculate an 
average framerate rather than simply showing a FPS counter, but I didn't find 
any.  Something based on crystal-space would be particularly nice.

I also looked at specviewperf, but it takes far too long to run.

Are there any in mesa/progs that stand out?

  Rage Pro Turbo (mach64)  glxgears works with 181.6 fps, but every other
  OpenGL program would crash.

 This is disturbing, I used to play ut on a mach64 all the time.  Perhaps
 the DMA path is still busted?


It crashes without locking the display or even changing the resolution.  This 
one looks easier to debug than the others.

John


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: 2.4.8.1+P6: radeon, dri xruns

2004-08-22 Thread Fernando Pablo Lopez-Lezcano
On Fri, 2004-08-20 at 22:29, Jon Smirl wrote:
 The delay is very large because this routine is waiting for the
 graphics coprocessor to finish an operation. Some of the operations can
 take many ms to complete; for example telling the chip to copy 64MB of
 memory somewhere. I would think the question should be, how do we wait
 on the GPU without killing both audio and video latency.
 
 The problem here is that most graphics commands are very short in
 duration. Some of these commands can be issued a million of times per
 second. A few commands are much longer running. I don't believe there
 is an easy way to tell how long the commands will run.
 
 A better solution might be to loop twenty times to pick up the very
 short commands. After 20us switch to a loop that allows the kernel to
 schedule. You don't want to immediately schedule since that will kill
 graphics performance.

As Ingo comments in another email I don't think that is necessarily the
case [but then again I'm not an expert in the schedulling code]. You
want to test whether a schedule is needed (a conditional reschedule, if
I'm correct). If it is not then nothing happens and the code keeps
feeding comands to the graphics processor. If one is needed then I don't
see why the graphics code should keep holding the processor. Ok, if
there is something else that needs the processor graphics performance
could be affected, but that is because there is something else that
needs the processor (and will suffer a performance problem if ignored). 

-- Fernando




---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: 2.4.8.1+P6: radeon, dri xruns

2004-08-22 Thread Fernando Pablo Lopez-Lezcano
[please cc me, I'm not on the dri list]
On Fri, 2004-08-20 at 22:29, Jon Smirl wrote:
 The delay is very large because this routine is waiting for the
 graphics coprocessor to finish an operation. Some of the operations can
 take many ms to complete; for example telling the chip to copy 64MB of
 memory somewhere.

That corresponds to my experience. I currently use glxgears while
running low latency audio stuff to test whether the problem is there or
not. For small window sizes (of glxgears) everything is fine. If I keep
making the window bigger there is a point where I start triggering xruns
like crazy (7 to 10 msecs or so). 

 I would think the question should be, how do we wait
 on the GPU without killing both audio and video latency.
 
 The problem here is that most graphics commands are very short in
 duration. Some of these commands can be issued a million of times per
 second. A few commands are much longer running. I don't believe there
 is an easy way to tell how long the commands will run.
 
 A better solution might be to loop twenty times to pick up the very
 short commands. After 20us switch to a loop that allows the kernel to
 schedule. You don't want to immediately schedule since that will kill
 graphics performance.

What would be a good program that measures graphics performance that I
could run to test this? I could build a kernel with a patch I have that
has conditional reschedules in it (but it is illegal in the sense that
reschedules with a lock held) and see how that impacts performance, or
not. But I need something to test that will reflect some metric that
makes sense to the graphics crowd. 

-- Fernando

 What's the right way to write a loop like this that meets the above
 requirements and also satisfies the audio needs?
 
 
 static int radeon_do_wait_for_idle( drm_radeon_private_t *dev_priv )
 {
 int i, ret;

 
 dev_priv-stats.boxes |= RADEON_BOX_WAIT_IDLE;

 
 ret = radeon_do_wait_for_fifo( dev_priv, 64 );
 if ( ret ) return ret;

 
 for ( i = 0 ; i  dev_priv-usec_timeout ; i++ ) {
 if ( !(RADEON_READ( RADEON_RBBM_STATUS )
 RADEON_RBBM_ACTIVE) ) {
 radeon_do_pixcache_flush( dev_priv );
 return 0;
 }
 DRM_UDELAY( 1 );
 }

 
 #if RADEON_FIFO_DEBUG
 DRM_ERROR( failed!\n );
 radeon_status( dev_priv );
 #endif
 return DRM_ERR(EBUSY);
 }
 
 =
 Jon Smirl
 [EMAIL PROTECTED]




---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: 2.4.8.1+P6: radeon, dri xruns

2004-08-22 Thread Fernando Pablo Lopez-Lezcano
On Fri, 2004-08-20 at 22:59, Jon Smirl wrote:
 I don't believe the DRM drivers are holding any global kernel locks
 when they do wait_for_fifo. Any locks held would be internal to DRM and
 can be changed if needed.

There must be a lock. I used to use a patch that I found somewhere (that
does conditional reschedules), but it triggers the scheduling while
lock held kernel oops if you enable that option in the kernel
configuration. 

-- Fernando

 --- Lee Revell [EMAIL PROTECTED] wrote:
 
  On Sat, 2004-08-21 at 01:29, Jon Smirl wrote:
  
   What's the right way to write a loop like this that meets the above
   requirements and also satisfies the audio needs?
   
  
  I think it depends on which locks you are holding, and what kind of
  locks they are.
  
  Lee
  
  
 
 
 =
 Jon Smirl
 [EMAIL PROTECTED]
 
 
   
 __
 Do you Yahoo!?
 Yahoo! Mail Address AutoComplete - You start. We finish.
 http://promotions.yahoo.com/new_mail



---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: 2.4.8.1+P6: radeon, dri xruns

2004-08-22 Thread Fernando Pablo Lopez-Lezcano
On Sat, 2004-08-21 at 09:58, Jon Smirl wrote:
 BTW, loops like this are in most of the DRM drivers for other cards.
 They are probably in accelerated framebuffer drivers too.

I know for a fact that the mga driver also has this problem, and I
suspect that the r128 is also affected (but have not tested it). When I
looked at them a while ago the code base seemed very similar so that
most probably a fix for one of them would be usable for the others. 

-- Fernando




---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


First DRI uber-benchmark

2004-08-22 Thread John Lightsey
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

I sent this message earlier, but it doesn't seem to have made it through.


Subject: First DRI uber-benchmark
Date: Saturday 21 August 2004 13:17
From: John Lightsey [EMAIL PROTECTED]
To: [EMAIL PROTECTED]

A while back it was suggested that benchmarking all of the various
DRI-compatible video cards might provide some interesting information.  I
just finished my first attempt at performing a slew of benchmarks with this
goal, and the results haven't been great.  It's certainly possible that (a)
some of the video cards might be bad since they were purchased on ebay, (b) I
didn't configure some of them properly, or (c) the CVS checkout I used had
problems.

At any rate, here are the results of the first run.  If anyone has
 suggestions for fixing any of the cards which failed in one way or another,
 I would really appreciate the feedback.


Setup:

I used an old ECS k7s5a pro motherboard with an Athlon 2400XP.  512 MB of
PC2100 Ram, onboard sound, IBM G74 monitor, and Maxtor ATA100 drive.

The OS was Debian Unstable, with the sources.list set to snapshot.debian.net
with a date of 15 Aug 2004.  The DRI packages I used are the same ones on my
server (CVS checkout from 15 Aug 04 with S3TC and Radeon DynamicPM.)

I shut off most of the services on the machine.  rcconf shows klogd, makedev,
and sysklogd as the only services active at boot.  The kernel used was
2.6.7-1-k7 from Debian.


Method:

All of the benchmarks were started with X already running.  I logged into a
user account, started X with xinit /usr/X11R6/bin/xterm -- :0 then ran the
benchmarks one after the other.

glxgears - let it run for 1 minute then marked down the highest score

quake2 - s_initsound 0, snd_restart, timedemo 1, map demo1.dm2.  Run each
resolution 2x and select the highest score.  Used glx OpenGL driver.

quake3 - s_initsound 0, snd_restart, timedemo 1, demo four.  Run each
resolution 2x and select the highest score.

RTCW - launched with wolfmp +set sv_cheats 1, s_initsound 0, snd_restart,
timedemo 1, demo checkpoint.  Run each resolution 2x and select the highest
score.

Unreal Tournament - launch game, bring up console, timedemo 1, wait for
second flyby to complete then mark down second score.

X and the games were all configured for 16 bit color.
r_ext_compressed_textures was set to 0.

Cards that didn't work:

Oxygen GMX 2000 96MB (gamma).  I tried various BusID values.  X would start,
but direct rendering was always disabled.

Diamond Speedstar a90 16MB (savage 4 pro+)  Lots of lockups.  glxgears gave
this a disappointing 229 fps.

Shuttle Spacewalker 16MB (sis 305)  Lots of crashing.  Problems with vesafb?
glxgears gave this 337.8 fps.

Rage Pro Turbo (mach64)  glxgears works with 181.6 fps, but every other
 OpenGL program would crash.

Rage 128 Pro (r128)  At 640x480 this one seemed semi-reliable.  At 1024x768
 it usually froze.  glxgears gave this one 518.6 fps.


Cards that worked (more or less):

Voodoo 5-5500 64MB (tdfx)
glxgears - 1425.6
q2 640x480 - 56.4
q2 800x600 - 51.2
q2 1024x768 - 42.9
q3 640x480 - 95
q3 800x600 - 68
q3 1024x768 - 46.1
rtcw 640x480 - 57.6
rtcw 800x600 - 44.6
rtcw 1024x768 - 32.3
ut 640x480 - 80.79
ut 800x600 - 76.6
ut 1024x768 - 58.11
Notes: Seemed very reliable.

IBM SR9 16MB Savage 4 eXtreme (savage)
glxgears - 569.2
q2 640x480 - 49.4
q2 800x600 - 38.8
q2 1024x768 - 27.1
q3 640x480 - 45.1
q3 800x600 - 34.4
q3 1024x768 - 23.3
rtcw 640x480 - segfault
rtcw 800x600 - segfault
rtcw 1024x768 - segfault
ut 640x480 - 36.8
ut 800x600 - 28.78
ut 1024x768 - 20.6
Notes: The segfault in RTCW seemed to be related to the checkpoint demo.
wolfsp seemed to run fine.

Radeon DDR 32MB (r100)
glxgears - 1123
q2 640x480 - 87.8
q2 800x600 - 74.2
q2 1024x768 - 58.1
q3 640x480 - 114.9
q3 800x600 - 80.9
q3 1024x768 - 53.5
rtcw 640x480 - 85.5
rtcw 800x600 - 63.9
rtcw 1024x768 - 43.7
ut 640x480 - 82.97
ut 800x600 - 76.34
ut 1024x768 - 56.4
Notes: RTCW was substantially slower on the first run.  Screen became
corrupted once and was only fixed by a reboot.

Matrox G400 32MB (mga)
glxgears - 1000.2
q2 640x480 - 62.9
q2 800x600 - 52.3
q2 1024x768 - 40.2
q3 640x480 - 65.9
q3 800x600 - 51.4
q3 1024x768 - 36.4
rtcw 640x480 - 42.3
rtcw 800x600 - 33.5
rtcw 1024x768 - 24.7
ut 640x480 - 35.32
ut 800x600 - 30.98
ut 1024x768 - 26.7
Notes: Reliable, looks great.  UT suffered from lots of software fallback.

Radeon 8500 AIW 128MB (r200)
glxgears - 2583.4
q2 640x480 - 115
q2 800x600 - 105.4
q2 1024x768 - 88.2
q3 640x480 - 165.3
q3 800x600 - 131.5
q3 1024x768 - 90.6
rtcw 640x480 - 98.4
rtcw 800x600 - 92.2
rtcw 1024x768 - 68
ut 640x480 - 73.74
ut 800x600 - 73.4
ut 1024x768 - 67.14
Notes: Roland's observations about massive slowdown at the end of the UT
 flyby are still accurate.  Although not tested, the 8500 locks up playing
 ut2003 and ut2004.


I have a few more cards to benchmark for comparison.

Nvidia - TNT2 and FX5200
FGLRX - Radeon 8500 AIW and Radeon 9600se

I also have a Radeon 9200 

Re: 2.4.8.1+P6: radeon, dri xruns

2004-08-22 Thread Ingo Molnar

* Jon Smirl [EMAIL PROTECTED] wrote:

 --- Ingo Molnar [EMAIL PROTECTED] wrote:
  the cleanest and highest performing solution would be to have an
  interrupt source for 3D completion - do you have such an interrupt
  handler handy? If yes then you can sleep precisely up to completion:
 
 Interrupts are not a good solution. The hardware would generate
 millions of them per second. This is the same problem network cards
 have, you can interrupt the machine to death.

you'd only have to enable interrupt generation when you are not
busy-polling. In 99.9% of the cases (when !need_resched()) you could
busy poll as much as you want, and keep IRQ generation off. Very likely
IRQ generation can be turned on/off via a single PCI write on most 3D
hardware. Anyway, IRQ generation would just be a 'nice' thing. But the
following property is a must:

 I would expect the best solution is to make a few passes through the
 loop delaying a couple usec to catch the common case of quick
 completion. Then switch to doing need_resched().

no. If need_resched() is set then the code *must* try to schedule ASAP. 
There is no excuse for not doing so - 'performance will suffer' is not a
correct argument becase _if_ need_resched() is true then the system (and
the user) doesnt want the 3D app to run right now. There will be no
performance difference to the 3D app, since by having high latencies the
DRI code does not give any extra performance to 3D apps, it only
increases the scheduling latency! The timeslices of the 3D app are used
up depending on how long the 3D app runs - so if it burns cycles
busy-polling it will in fact get less CPU time on average. (if the CPU
is contended.)

Anyway, need_resched() set is not a common condition, and if it happens
then kernel code _must_ react. (In fact most kernel code will be
preempted right away - but the DRI code runs under spinlocks.)

So the correct solution is to add something like this to _at least_ the
busy-polling code:

if (need_resched()) {
... drop locks ...
cond_resched();
... reacquire locks ...
}

or, if there's a single spinlock held (the BKL doesnt count) then:

cond_resched_lock(driver-lock);

(but the locking obviously has to be correct and safe.)

ok?

Ingo


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread Michel Dänzer
On Sun, 2004-08-22 at 11:40 +0200, Steffen Hein wrote:
 On Sunday 22 August 2004 08:16, John Lightsey wrote:
  Rage 128 Pro (r128)  At 640x480 this one seemed semi-reliable.  At 1024x768
   it usually froze.  glxgears gave this one 518.6 fps.
 
 I also encountered this instability on a mobility M6 (mobile Rage128)

M6 is Radeon, the mobile Rage128 chips were M3 and M4 (and M5?). Which
is it?


-- 
Earthling Michel Dnzer  | Debian (powerpc), X and DRI developer
Libre software enthusiast|   http://svcs.affero.net/rm.php?r=daenzer


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread Michel Dänzer
On Sun, 2004-08-22 at 01:16 -0500, John Lightsey wrote:
 This is my third attempt sending this email.  If sourceforge decides to let 
 all three copies through at once, you'll have to forgive me.

It's mostly me administrating the dri-{announce,devel,patches} at the
moment... if anyone (preferably non-newcomers though) wants to help out,
that would be great.


-- 
Earthling Michel Dnzer  | Debian (powerpc), X and DRI developer
Libre software enthusiast|   http://svcs.affero.net/rm.php?r=daenzer


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread John Lightsey
On Sunday 22 August 2004 05:39, Alan Cox wrote:
 On Sul, 2004-08-22 at 07:16, John Lightsey wrote:
  I shut off most of the services on the machine.  rcconf shows klogd,
  makedev, and sysklogd as the only services active at boot.  The kernel
  used was 2.6.7-1-k7 from Debian.

 Which DRI kernel modules - the CVS tree provided ones or the 2.6.7
 kernel ones ?

The kernel modules were from CVS.

John


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread Steffen Hein
You're right. It's a 8mb mobility M3 in a dell latitude c600.

Sorry, not my notebook ;-)


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread John Lightsey
Here are the FGLRX and Nvidia scores for comparison...

The Nvidia drivers were built from the packages in Debian non-free (1.0.6111) 
and the FGLRX drivers were built from Flavio Stanchina's packages (3.11.1).

BFG FX5200 Ultra 128MB
glxgears - 3934.8
q2 640x480 - 337.1
q2 800x600 - 312.3
q2 1024x768 - 268.5
q3 640x480 - 219.2
q3 800x600 - 217.6
q3 1024x768 - 203.6
rtcw 640x480 - 108.9
rtcw 800x600 - 108.7
rtcw 1024x768 - 107.7
ut 640x480 - 98.12
ut 800x600 - 98.28
ut 1024x768 - 95.71
Notes:

TNT2 32MB
glxgears - 491.6
q2 640x480 - 83.7
q2 800x600 - 55
q2 1024x768 - 38.9
q3 640x480 - 54.2
q3 800x600 - 34.6
q3 1024x768 - 22.4
rtcw 640x480 - 41.8
rtcw 800x600 - 27.2
rtcw 1024x768 - 17.4
ut 640x480 - 60.14
ut 800x600 - 41.59
ut 1024x768 - 26.31
Notes: Locked up with agpgart.  Minor display corruption when switching 
resolutions in UT which was cleared up by restarting X.

Radeon 8500 AIW 128MB w/FGLRX
Contant lockups...  Totally unusable.

Radeon 9600LE 128MB
glxgears - 753.4
q2 640x480 - 146.2
q2 800x600 - 97.8
q2 1024x768 - 56
q3 640x480 - 133.6
q3 800x600 - 82.8
q3 1024x768 - 45.3
rtcw 640x480 - 95.1
rtcw 800x600 - 67.4
rtcw 1024x768 - 37.7
ut 640x480 - 93.08
ut 800x600 - 72.98
ut 1024x768 - 41.65
Notes: These numbers all represent X running at 32 bit color depth.  FGLRX 
does not support 16 bit.



So...  A Radeon DDR 32MB running DRI seems to be faster than a TNT2 32MB.  
Matrox G400 seems to be faster on everything other than Unreal Tournament.

I'll send a link to the graphs on Monday.

John


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread Moritz Muehlenhoff
In gmane.comp.video.dri.devel, you wrote:
 I looked around for some free software programs that would calculate an 
 average framerate rather than simply showing a FPS counter, but I didn't find 
 any.  Something based on crystal-space would be particularly nice.

Have a look at the samples provided with the Ogre engine; they calculate the
average framerate of every run and the minima and maxima: http://www.ogre3d.org
They should be pretty useful especially for benchmarking advanced 3D stuff.

The default build links against the proprietary Cg library by Nvidia. To
circumvent that simply remove the autoconf test for Cg in configure.in,
remove CgProgramManager from PlugIns/Makefile.am and run bootstrap.sh. The
functionality is not affected as Cg shader support is loaded on demand.

Cheers,
Moritz


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread Alan Cox
On Sul, 2004-08-22 at 21:51, John Lightsey wrote:
 So...  A Radeon DDR 32MB running DRI seems to be faster than a TNT2 32MB.  
 Matrox G400 seems to be faster on everything other than Unreal Tournament.
 
 I'll send a link to the graphs on Monday.

Maybe I should get the Voodoo2 DRI written. The voodoo2 can wipe the
Matrox G400's backside but I'd assumed it was still too slow to be
useful



---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: 2.6.8.1+P6: radeon, dri xruns

2004-08-22 Thread Fernando Pablo Lopez-Lezcano
On Fri, 2004-08-20 at 22:37, Dave Airlie wrote:
  It looks like the timeout for many Radeon DRI operations is controlled
  by the dev_priv-usec_timeout value, which is copied from userspace via
  ioctl in radeon_cp_init.  This value can be as large as 100 MSECS!
 
  radeon_drv.h:#define RADEON_MAX_USEC_TIMEOUT   10  /* 100 ms */
 
  The driver does not seem to have a default for this, so you need to find
  the userspace code that is initializing the DRI and find the value it is
  being set to.
 
 the current default is 1 usecs from radeon_dri.h in
 xc/programs/Xserver/hw/xfree86/drivers/ati (Xorg tree) you can use the
 option CPusecTimeout in your /etc/X11/xorg.conf file to tweak this value

Hey, thanks, I was not aware of that option!

Changing the value has the predictable effect of lowering the duration
of the latency hits I get. Setting it to 1000 (instead of 1)
makes it possible to run glxgears (the test I'm using to trigger xruns)
with bigger screen sizes than before. I can still trigger xruns, of
course, but they are  1ms instead of  10ms :-( 

DRI gurus: let me know if somebody comes up with a patch, I'm willing to
be a guinea pig...

-- Fernando




---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread Dave Airlie

 At least on the fedora-test list the new Xorg CVS seems to be showing up
 some i815/830 works with 2.6.8.1 but not 2.6.old kernels.

hmm interesting.. I'll try and get Xorg on one of my i810 systems in the
next day or two...

Dave.



-- 
David Airlie, Software Engineer
http://www.skynet.ie/~airlied / airlied at skynet.ie
pam_smb / Linux DECstation / Linux VAX / ILUG person



---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread Ville Syrjälä
On Sun, Aug 22, 2004 at 01:16:18AM -0500, John Lightsey wrote:
 
 Matrox G400 32MB (mga)
 glxgears - 1000.2
 q2 640x480 - 62.9
 q2 800x600 - 52.3
 q2 1024x768 - 40.2
 q3 640x480 - 65.9
 q3 800x600 - 51.4
 q3 1024x768 - 36.4
 rtcw 640x480 - 42.3
 rtcw 800x600 - 33.5
 rtcw 1024x768 - 24.7
 ut 640x480 - 35.32
 ut 800x600 - 30.98
 ut 1024x768 - 26.7

I'm aware of two perfomance bottlenecks in the driver.

Number one is that it always uses synchronous DMA. I have asynchronous
DMA working just fine under DirectFB but it should probably be tested
more with XFree86 before going to cvs.

Number two is the TC2_MAGIC bit. It really hurts the single texturing
case and even dual texturing gains ~1 fps (in q3) with that bit turned
off.

Even with those two changes the Windows drivers are still quite a bit
faster :(

 Notes: Reliable, looks great.  UT suffered from lots of software fallback.

Any idea what fallbacks? ut2k4 demo was actually playable on my G400
if I disabled the texenv extensions. We probably need a config option
for that. ut2k3 demo always used projective multi texturing despite what
settings I tweaked so I couldn't get decent performance out of it.

-- 
Ville Syrjälä
[EMAIL PROTECTED]
http://www.sci.fi/~syrjala/


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: First DRI uber-benchmark

2004-08-22 Thread John Lightsey
On Sunday 22 August 2004 18:37, Ville Syrjälä wrote:
 On Sun, Aug 22, 2004 at 01:16:18AM -0500, John Lightsey wrote:
  Matrox G400 32MB (mga)
...
 I'm aware of two perfomance bottlenecks in the driver.

 Number one is that it always uses synchronous DMA. I have asynchronous
 DMA working just fine under DirectFB but it should probably be tested
 more with XFree86 before going to cvs.

 Number two is the TC2_MAGIC bit. It really hurts the single texturing
 case and even dual texturing gains ~1 fps (in q3) with that bit turned
 off.

 Even with those two changes the Windows drivers are still quite a bit
 faster :(

  Notes: Reliable, looks great.  UT suffered from lots of software
  fallback.

 Any idea what fallbacks? ut2k4 demo was actually playable on my G400
 if I disabled the texenv extensions. We probably need a config option
 for that. ut2k3 demo always used projective multi texturing despite what
 settings I tweaked so I couldn't get decent performance out of it.

I'm not at all sure...  It slows down to a crawl in a few different places.

1) The section of tunnel with textures on the ground that look like paper 
trash.  This lasts until you pass the grate with steam coming out of it.

2) As the billboards are approached it slows down.  (This happens twice.)

3) Heading towards the fire escape it slows down.

4) Right before it enters the tunnel on the building it slows down very 
briefly.

ut2004 is almost playable with the g400 with the lowest settings.  The Nvidia 
logo looks wrong and it's very slow.  There are also some points on different 
maps where the framerate drops through the floor (on DM-Asbestos for 
instance, when you look at the sunken area where the rocket launcher appears, 
the framerate drops to single digits.  The sunken area is supposed to be 
filled with water, but there is no water visible with the g400.)

I didn't include ut2003/2004 in the list of benchmarks because I didn't figure 
any of the cards would handle it.  I'll try including on of them next time.

John


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: 2.4.8.1+P6: radeon, dri xruns

2004-08-22 Thread Mike Mestnik

--- Jon Smirl [EMAIL PROTECTED] wrote:

 Michel pointed out that all IOCTL calls hold the big kernel lock.
 Releasing this lock is sure to case problems since the DRM code is not
 designed to be reentrant. I don't know what it will take to fix locking
 to allow this, maybe one of the original DRM authors will pop in here
 with the answer. Until locking is adjusted we can't add the schedule
 call.
 
From what I'v read, http://lwn.net/Articles/86859/, it's not a global
kernel lock (I.E. it dosen't stop non-locked kernel code from running). 
So the only reason it effects audio performace is that well, read the
article :)

Also DRI allready runes with it off in ioctls, every time there is a
sleep.  This is why DRI has spinlocks, right?  Now if we turn BKL off for
our ioctls we defeat the pupose it was turned on for, what is that?  Would
it be posible to use differed execution instead of blindly droping the
BKL? 

As for the other DRI-spinlocks the code presented by Ingo Molnar lookes
correct, no arguments here.  I just don't see why DRI needs to drop the
BKL any sooner then any other part of the kernel?  After all DRI dosen't
request it, it's just one of many victums of the ioctl BKL.  So I think it
would be best to let upstream fix the DRI BKL problem.

 --- Fernando Pablo Lopez-Lezcano [EMAIL PROTECTED] wrote:
 
  On Fri, 2004-08-20 at 22:59, Jon Smirl wrote:
   I don't believe the DRM drivers are holding any global kernel locks
   when they do wait_for_fifo. Any locks held would be internal to DRM
  and
   can be changed if needed.
  
  There must be a lock. I used to use a patch that I found somewhere
  (that
  does conditional reschedules), but it triggers the scheduling while
  lock held kernel oops if you enable that option in the kernel
  configuration. 
  
  -- Fernando
  
   --- Lee Revell [EMAIL PROTECTED] wrote:
   
On Sat, 2004-08-21 at 01:29, Jon Smirl wrote:

 What's the right way to write a loop like this that meets the
  above
 requirements and also satisfies the audio needs?
 

I think it depends on which locks you are holding, and what kind
  of
locks they are.

Lee


   
   
   =
   Jon Smirl
   [EMAIL PROTECTED]
   
   
 
   __
   Do you Yahoo!?
   Yahoo! Mail Address AutoComplete - You start. We finish.
   http://promotions.yahoo.com/new_mail
  
  
 
 
 =
 Jon Smirl
 [EMAIL PROTECTED]
 
 
   
 __
 Do you Yahoo!?
 Yahoo! Mail - 50x more storage than other providers!
 http://promotions.yahoo.com/new_mail
 
 
 ---
 SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
 100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
 Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
 http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
 --
 ___
 Dri-devel mailing list
 [EMAIL PROTECTED]
 https://lists.sourceforge.net/lists/listinfo/dri-devel
 




__
Do you Yahoo!?
Yahoo! Mail Address AutoComplete - You start. We finish.
http://promotions.yahoo.com/new_mail 


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: 2.4.8.1+P6: radeon, dri xruns

2004-08-22 Thread Mike Mestnik

--- Ingo Molnar [EMAIL PROTECTED] wrote:

 
 * Jon Smirl [EMAIL PROTECTED] wrote:
 
  --- Ingo Molnar [EMAIL PROTECTED] wrote:
   the cleanest and highest performing solution would be to have an
   interrupt source for 3D completion - do you have such an interrupt
   handler handy? If yes then you can sleep precisely up to completion:
  
  Interrupts are not a good solution. The hardware would generate
  millions of them per second. This is the same problem network cards
  have, you can interrupt the machine to death.
 
 you'd only have to enable interrupt generation when you are not
 busy-polling. In 99.9% of the cases (when !need_resched()) you could
 busy poll as much as you want, and keep IRQ generation off. Very likely
 IRQ generation can be turned on/off via a single PCI write on most 3D
 hardware. Anyway, IRQ generation would just be a 'nice' thing. But the
 following property is a must:
 
This lookes like a great idea.  We turn on interrupt generation just after
we drop our spinlock(in the if need_resched() block).  This would greatly
improve system proformance as IRQs would only be used when we wait for
long periods.

  I would expect the best solution is to make a few passes through the
  loop delaying a couple usec to catch the common case of quick
  completion. Then switch to doing need_resched().
 
 no. If need_resched() is set then the code *must* try to schedule ASAP. 
 There is no excuse for not doing so - 'performance will suffer' is not a
 correct argument becase _if_ need_resched() is true then the system (and
 the user) doesnt want the 3D app to run right now. There will be no
 performance difference to the 3D app, since by having high latencies the
 DRI code does not give any extra performance to 3D apps, it only
 increases the scheduling latency! The timeslices of the 3D app are used
 up depending on how long the 3D app runs - so if it burns cycles
 busy-polling it will in fact get less CPU time on average. (if the CPU
 is contended.)
 
I see jerky ness alot with Q3, where frame rate spikes for one frame. 
This lookes like a good explination, as the frame b4 and after would have
many of the same GL calls.

End Of Line.

 Anyway, need_resched() set is not a common condition, and if it happens
 then kernel code _must_ react. (In fact most kernel code will be
 preempted right away - but the DRI code runs under spinlocks.)
 
 So the correct solution is to add something like this to _at least_ the
 busy-polling code:
 
   if (need_resched()) {
   ... drop locks ...
   cond_resched();
   ... reacquire locks ...
   }
 
 or, if there's a single spinlock held (the BKL doesnt count) then:
 
   cond_resched_lock(driver-lock);
 
 (but the locking obviously has to be correct and safe.)
 
 ok?
 
   Ingo
 
 
 ---
 SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
 100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
 Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
 http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
 --
 ___
 Dri-devel mailing list
 [EMAIL PROTECTED]
 https://lists.sourceforge.net/lists/listinfo/dri-devel
 




__
Do you Yahoo!?
Yahoo! Mail - 50x more storage than other providers!
http://promotions.yahoo.com/new_mail


---
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink  Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
--
___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel