Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Benchmark #26

Open
john-peterson opened this issue May 18, 2013 · 2 comments
Open

Benchmark #26

john-peterson opened this issue May 18, 2013 · 2 comments

Comments

@john-peterson
Copy link
Member

john-peterson commented May 18, 2013

Benchmark

Files

The benchmark files are in

Dropbox

  • benchmark.txt
  • benchmark_summary.txt

SkyDrive

  • benchmark.xlsx

Configuration

normal

GFXBackend = DX11
EFBScale = 6
MaxAnisotropy = 3
EFBAccessEnable = True
DSPHLE = False

normal_athread

DSPThread = False

fast

GFXBackend = DX11
EFBScale = 2
MaxAnisotropy = 3
EFBAccessEnable = False
EFBCopyEnable = False
DSPHLE = False

fast_hle

DSPHLE = True

Movies

Length

The target length is

  • fixed because that makes the LLE and HLE movie comparable (because it draws the same geometry and audio)
  • one lap or 2 000 frames because that's adequate

Deterministicity

Producing dual thread benchmarks to

  • measure performance during play rather than when input synchronisation isn't important f.e. during an intro
  • compare LLE and HLE when video is threaded

is made difficult for some games because of desynchronisation described in this post that cause f.e. the controlled object to hit a wall repeatedly

Audio

Why's

  • HLE compared to LLE despite audio threading: 1,13

Video

Why's

  • DX9 compared to DX11: 1,08

GFZE01

Why's

  • HLE compared to LLE: 1,16
  • dx9 compared to dx11: 1,03
  • unthreaded LLE compared to threaded: not less than 0,95

GTEE01

Why's

  • HLE compared to LLE: 1,29
  • dx9 compared to dx11: 1,25
  • unthreaded LLE compared to threaded: not less than 0,96

SMNE01

Why's

  • OpenMP compared to non-OpenMP: ,65
@john-peterson
Copy link
Member Author

Benchmark

Log

What's the performance impact of disabled logs?

./dolphin -BC log -e twist_road.dtm

print 5 k ERROR_LOG per s (to mintty, at 50 fps) but there's no meaningful performance impact from these ERROR_LOG when they're disabled because

  • if its use of one core is 50 E3 / 3,5 E9 = 1,5 E-5 (if one disabled ERROR_LOG use around 10 instructions in the CPU emulation thread, and a 3,5 GHz CPU does 3,5 G instructions/s)
  • according to this test
AddList: unknown count of vertices found        
with    without 
43,0    42,8    
44,0    40,9    
41,0    43,0    
42,7    42,2    0,99

@john-peterson
Copy link
Member Author

GFZE01 empty 8 vertex triangle list

./dolphin -BC log -e twist_road.dtm

return this message

10:15:185 Src\IndexGenerator.cpp:90 E[Video]: AddList: unknown count of vertices found

Ignoring the last 2 vertices don't have an impact because they're zero according to this log

14:21:896 Src\VertexLoaderManager.cpp:129 N[Video]: RunVertices: unknown count of vertices found 0, 2, 8
14:21:899 Src\VertexLoaderManager.cpp:132 N[Video]: Vertex 1: 0,0, 0,0, 0,0
14:21:959 Src\VertexLoaderManager.cpp:132 N[Video]: Vertex 2: 0,0, 0,0, 0,0
14:21:960 Src\VertexLoaderManager.cpp:132 N[Video]: Vertex 3: 0,0, 0,0, 0,0
14:21:960 Src\VertexLoaderManager.cpp:132 N[Video]: Vertex 4: 0,0, 0,0, 0,0
14:21:960 Src\VertexLoaderManager.cpp:132 N[Video]: Vertex 5: 0,0, 0,0, 0,0
14:21:961 Src\VertexLoaderManager.cpp:132 N[Video]: Vertex 6: 0,0, 0,0, 0,0
14:21:961 Src\VertexLoaderManager.cpp:132 N[Video]: Vertex 7: 0,0, 0,0, 0,0
14:21:962 Src\VertexLoaderManager.cpp:132 N[Video]: Vertex 8: 0,0, 0,0, 0,0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant