ffxvBenchCustom icon indicating copy to clipboard operation
ffxvBenchCustom copied to clipboard

Is there a way to output the result to a file?

Open shen9175 opened this issue 8 years ago • 5 comments

After customized run, the benchmark just quit without any result left. How do I know the performance?

shen9175 avatar Feb 06 '18 21:02 shen9175

Is this benchmark has hidden output to a text file option? If it exists, it's better for automation.

shen9175 avatar Feb 06 '18 22:02 shen9175

No but external solutions like MSI Afterburner, RTSS or FRAPS allow you to dump gpu stats to csv file IIRC.

SkacikPL avatar Feb 08 '18 14:02 SkacikPL

Yes, I am using Fraps and Afterburner. But for one thing, those tools do not capture the final score that the benchmark showed in the final. Second, for Fraps, it's hard to tell when the real 3d benchmark scene starts, there is a loading part in the beginning, different machines have different loading time. I don't know the whole benchmark is fixed time even with very low end graphic cards with 3-4fps. If it's always fixed time, then it's ok for counting time reversely. Or it's very hard to get precise benchmark through automation.

shen9175 avatar Feb 08 '18 23:02 shen9175

The benchmark stores its score in %TEMP%\ffxv_benchmark_result.txt (yes, that is a real path you can type into Explorer or Win+R etc.) - in fact, this is where the official launcher reads the score from.

I'd say that automating it is a bad idea though. As others have noted, the game apparently isn't very good at prefetching resources, leading to highly variable stutter during the first run. For serious testing you should run it in loop mode and measure the second run.

You may be able to run it in loop mode, wait until the file mentioned has been written twice, then kill the process and record the results; to be honest I'm not sure what it actually does with this file when running in loop mode though.

Even then, the "score" is not exactly a great metric. As mentioned by @SkacikPL I'd recommend getting frametime statistics with an external utility.

After loading, the benchmark appears to have (near-)constant runtime (though I did not test this on low-end systems), so if it does indeed write the score at the end of each run in loop mode, then you could automatically gather good stats by logging frametimes with RTSS/FRAPS/etc. for the entire runtime of the process, killing the process after the second write to the score file as mentioned above, and only keeping the last X seconds of collected stats.

drdaxxy avatar Feb 10 '18 06:02 drdaxxy

Thank you drdaxxy! I got it!

shen9175 avatar Mar 27 '18 22:03 shen9175