How to do a proper benchmark (can't believe I missed this!)

Discuss anything to do with Nexuiz here.

Moderators: Nexuiz Moderators, Moderators


  • Some time ago I tried to make a Nexuiz benchmark but it was inconsistent because of not everything being specified in the .cfg's that were executed. I've just been reading through the DP readme and spotted something I didn't see before:

    Code: Select all
    -benchmark <demoname> runs a timedemo and quits, results of any timedemo can be found in gamedir/benchmark.log (for example id1/benchmark.log)


    So, to do a decent, consistent benchmark, run Nexuiz with the following command line options:

    Code: Select all
    -game benchmark -benchmark demos/demo1

    The first bit specifies a mod directory. This is simply so that a directory is created called benchmark in which the log will be written. Since benchmark/ is new, data/default.cfg will be used ensuring consistency. The second bit specifies the demo being used.

    Fire it up and the demo will be run and Nexuiz will exit upon completion. Then look in benchmark/benchmark.log for the result. A config.cfg file will have been created too. Do not modify it and delete it upon a Nezuiz update.

    So this is what I got with the Linux i686 SDL version:
    result 1910 frames 51.8550000 seconds 36.8334780 fps min/avg/max: 2.4875622/36.8334780/111.1111111
    Laters losers.
    Ed
    Forum addon
     
    Posts: 1172
    Joined: Wed Mar 01, 2006 12:32 am
    Location: UK


  • Ed wrote: Since benchmark/ is new, data/default.cfg will be used ensuring consistency. The second bit specifies the demo being used.
    A config.cfg file will have been created too. Do not modify it and delete it upon a Nezuiz update.

    Sorry but this is not true. benchmark/config.cfg will take data/config.cfg as basis if benchmark/config.cfg does not exist. But what should work is to to create a empty benchmark/config.cfg file and then start Nexuiz as you told. It will then find a config.cfg in the benchmark directory and not fallback to data/config.cfg. However as its a special directory its save to delete/use an empty config.cfg without a user complaining :).
    Also i would advice to delete / recreate the empty config.cfg when a new version is out.
    User avatar
    esteel
    Site admin and forum addon
     
    Posts: 3924
    Joined: Wed Mar 01, 2006 8:27 am


  • esteel wrote:Sorry but this is not true. benchmark/config.cfg will take data/config.cfg as basis if benchmark/config.cfg does not exist.

    No, it will not read data/config.cfg. I've tried. I know because it uses completely new settings and writes a config.cfg in the benchmark/ directory that is different from data/config.cfg.
    Last edited by Ed on Thu Aug 24, 2006 8:41 pm, edited 1 time in total.
    Laters losers.
    Ed
    Forum addon
     
    Posts: 1172
    Joined: Wed Mar 01, 2006 12:32 am
    Location: UK

Thu Aug 24, 2006 6:25 pm

Thu Aug 24, 2006 8:45 pm

  • Hold on, yes, you are right. :oops: I've been looking at completely the wrong file. Yeah, everyone do as esteel says.
    Laters losers.
    Ed
    Forum addon
     
    Posts: 1172
    Joined: Wed Mar 01, 2006 12:32 am
    Location: UK

Thu Aug 24, 2006 9:11 pm

  • Result: result 1910 frames 32.5010000 seconds 58.7674225 fps min/avg/max: 4.7619048/58.7674225/250.0000000

    Though because of shaders and caching stuff its better to just start nexuiz with -game benchmark and then start tdem demo1 twice.
    So the whole procedure would be: create Nexuiz/benchmark, create empty Nexuiz/data/benchmark/config.cfg, start Nexuiz with -game benchmark and start twice tdem demo1
    As you can see the result fromt he second run is: result 1909 frames 31.1210000 seconds 61.3412165 fps min/avg/max: 17.8571429/61.3412165/250.0000000
    Thats a bit better.

    But i guess your method is easier:
    create Nexuiz/benchmark, create empty Nexuiz/data/benchmark/config.cfg, start Nexuiz with -game benchmark -benchmark demos/demo1
    It might work to create a simple bench.zip that does contain the file Nexuiz/benchmark/config.cfg read-only and scripts to start the benchmark..


    UNTESTED!!! http://esteel.planetnexuiz.de/nexuiz/misc/bench.zip
    User avatar
    esteel
    Site admin and forum addon
     
    Posts: 3924
    Joined: Wed Mar 01, 2006 8:27 am

Thu Aug 24, 2006 9:30 pm

  • An autoexec.cfg with
    Code: Select all
    exec normal.cfg
    exec default.cfg
    tdem demo1
    tdem demo1
    might be better... (also untested)
    User avatar
    KadaverJack
    Site admin and forum addon
     
    Posts: 1102
    Joined: Tue Feb 28, 2006 9:42 pm

Thu Aug 24, 2006 9:45 pm

  • Well a user might have strange settings in his config.cfg that interfer with a benchmark. a empty config.cfg i saver. And i am not sure if tdem twice in the autoexec.cfg will do the job. It right start and restart the second timedemo right after the first without waiting for it to finish..
    User avatar
    esteel
    Site admin and forum addon
     
    Posts: 3924
    Joined: Wed Mar 01, 2006 8:27 am

Thu Aug 24, 2006 11:51 pm

  • esteel wrote:And i am not sure if tdem twice in the autoexec.cfg will do the job. It right start and restart the second timedemo right after the first without waiting for it to finish..

    Yeah, that's true :(
    Unfortunately mutliple -benchmark arguments don't work either...
    An alternative would be to bind "tdem demos/demo1" to one of the F keys (the F work in the menu unlike other keys).
    User avatar
    KadaverJack
    Site admin and forum addon
     
    Posts: 1102
    Joined: Tue Feb 28, 2006 9:42 pm

Fri Aug 25, 2006 8:02 am

  • KadaverJack wrote:An autoexec.cfg with
    Code: Select all
    exec normal.cfg
    exec default.cfg
    tdem demo1
    tdem demo1
    might be better... (also untested)

    I'd do that with quake.rc I think. The double benchmarking isn't that important really. I realise there's the shader compilation thing but if that is being done every time it is consistent. When you play the game normally the shaders need to be compiled so do it now too.
    Laters losers.
    Ed
    Forum addon
     
    Posts: 1172
    Joined: Wed Mar 01, 2006 12:32 am
    Location: UK

Fri Aug 25, 2006 8:55 am

  • shader compile time is likely to be cpu dependent. not realy to interesting as nex bench, so the doubble run is proly a good idea.
    HOF:
    <Diablo> the nex is a "game modification"
    <Diablo> quake1 never had a weapon like that.
    <Vordreller> there was no need for anything over 4GB untill Vista came along
    <Samua>]Idea: Fix it? :D
    <Samua>Lies, that only applies to other people.
    User avatar
    tZork
    tZite Admin
     
    Posts: 1337
    Joined: Tue Feb 28, 2006 6:16 pm
    Location: Halfway to somwhere else

Thu Sep 21, 2006 4:06 pm

  • esteel wrote:Result: result 1910 frames 32.5010000 seconds 58.7674225 fps min/avg/max: 4.7619048/58.7674225/250.0000000

    Though because of shaders and caching stuff its better to just start nexuiz with -game benchmark and then start tdem demo1 twice.
    So the whole procedure would be: create Nexuiz/benchmark, create empty Nexuiz/data/benchmark/config.cfg, start Nexuiz with -game benchmark and start twice tdem demo1
    As you can see the result fromt he second run is: result 1909 frames 31.1210000 seconds 61.3412165 fps min/avg/max: 17.8571429/61.3412165/250.0000000
    Thats a bit better.

    result 1910 frames 192.0250000 seconds 9.9466215 fps min/avg/max: 2.7777778/9.9466215/111.1111111

    That reminds me... I must get a new graphics card :lol: :cry:
    old_codger
    Alien
     
    Posts: 100
    Joined: Sat Sep 02, 2006 12:27 pm
    Location: Shropshire, UK



Return to Nexuiz - General Discussion




Information
  • Who is online
  • Users browsing this forum: No registered users and 1 guest