Virgl asyncronus command submission

Test the impact of asynchronous command submission on performance

HTML result view exported from: https://openbenchmarking.org/result/2201052-NE-2201047NE19&sro.

Virgl asyncronus command submissionProcessorMotherboardChipsetMemoryDiskGraphicsAudioMonitorNetworkOSKernelDisplay ServerOpenGLCompilerFile-SystemScreen ResolutionSystem LayerBaselineAsync command submissionAsync command submission v2Async command submission v3Async command submission v3 fixedAsync command submission v3 + shrink command buffersAsync command submission always + buffer fixAsync command submission always + larger inline bufferAsync command submission always + 16k inline bufferSync command + buffer fix and enlargementAsync, fence sync, buffer fix and enlargementglxgears fix + async + transfer buffer stuff8 x QEMU Virtual 2.5+ (8 Cores)QEMU Standard PC (Q35 + ICH9 2009) (rel-1.14.0-0-g155821a1990b-prebuilt.qemu.org BIOS)Intel 82G33/G31/P35/P31 + ICH916GB97GBvirgl 12288GBQEMU GenericQEMU MonitorRed Hat Virtio deviceDebian unstable5.15.0-2-amd64 (x86_64)X Server 1.20.134.3 Mesa 22.0.0-devel (git-f6a046dc64) (LLVM 13.0.0 D...)GCC 11.2.0ext41440x900KVM QEMU4.3 Mesa 22.0.0-devel (git-6d1f1ea57b) (LLVM 13.0.0 D...)4.3 Mesa 22.0.0-devel (git-b0cff210b9) (LLVM 13.0.0 D...)4.3 Mesa 22.0.0-devel (git-582efc9ba5) (LLVM 13.0.0 D...)OpenBenchmarking.orgKernel Details- Transparent Huge Pages: alwaysEnvironment Details- Baseline, Sync command + buffer fix and enlargement: VIRGL_DEBUG=snc_cmdProcessor Details- CPU Microcode: 0x1000065Python Details- Python 3.9.9Security Details- itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Not affected + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline STIBP: disabled RSB filling + srbds: Not affected + tsx_async_abort: Not affected

Virgl asyncronus command submissionopenarena: 1024 x 768unigine-heaven: 1024 x 768 - Fullscreen - OpenGLunigine-sanctuary: 1024 x 768 - Fullscreenunigine-tropics: 1024 x 768 - Fullscreenunigine-valley: 1024 x 768 - Fullscreen - OpenGLxonotic: 1024 x 768 - Ultimateglmark2: 1024 x 768BaselineAsync command submissionAsync command submission v2Async command submission v3Async command submission v3 fixedAsync command submission v3 + shrink command buffersAsync command submission always + buffer fixAsync command submission always + larger inline bufferAsync command submission always + 16k inline bufferSync command + buffer fix and enlargementAsync, fence sync, buffer fix and enlargementglxgears fix + async + transfer buffer stuff281.3216.502243.548227.555182.731247.83372384766302.4211.220251.189220.685190.516246.83842584781307.0205.905261.660227.233187.012246.03967684822296.6305.1208.234259.350304.6206.205299.7207.005241.808304.3206.926286.4217.582235.261215.454184.955245.66609604693304.5207.725223.045224.333187.642242.83209514839314.2211.848196.323226.431187.348249.07517834944OpenBenchmarking.org

OpenArena

Resolution: 1024 x 768

OpenBenchmarking.orgFrames Per Second, More Is BetterOpenArena 0.8.8Resolution: 1024 x 768Async command submissionAsync command submission always + 16k inline bufferAsync command submission always + buffer fixAsync command submission always + larger inline bufferAsync command submission v2Async command submission v3 + shrink command buffersAsync command submission v3 fixedAsync, fence sync, buffer fix and enlargementBaselineSync command + buffer fix and enlargementglxgears fix + async + transfer buffer stuff70140210280350SE +/- 2.07, N = 3SE +/- 4.01, N = 3SE +/- 3.33, N = 3SE +/- 4.24, N = 3SE +/- 1.80, N = 3SE +/- 2.24, N = 15SE +/- 3.86, N = 3SE +/- 3.42, N = 3SE +/- 3.12, N = 3SE +/- 1.81, N = 15SE +/- 1.04, N = 3302.4304.3304.6299.7307.0305.1296.6304.5281.3286.4314.2MIN: 1MIN: 1MIN: 1MIN: 1MIN: 1MIN: 1MIN: 1MIN: 1MIN: 1MIN: 1MIN: 1

OpenArena

Resolution: 1024 x 768 - Total Frame Time

OpenBenchmarking.orgMilliseconds, Fewer Is BetterOpenArena 0.8.8Resolution: 1024 x 768 - Total Frame TimeAsync command submissionAsync command submission always + 16k inline bufferAsync command submission always + buffer fixAsync command submission always + larger inline bufferAsync command submission v2Async command submission v3 + shrink command buffersAsync command submission v3 fixedAsync, fence sync, buffer fix and enlargementBaselineSync command + buffer fix and enlargementglxgears fix + async + transfer buffer stuff48121620Min: 1 / Avg: 3.34 / Max: 13Min: 1 / Avg: 3.36 / Max: 13Min: 1 / Avg: 3.34 / Max: 12Min: 1 / Avg: 3.31 / Max: 12Min: 1 / Avg: 3.28 / Max: 12Min: 1 / Avg: 3.19 / Max: 12Min: 1 / Avg: 3.45 / Max: 12Min: 1 / Avg: 3.31 / Max: 12Min: 1 / Avg: 3.5 / Max: 12Min: 1 / Avg: 3.45 / Max: 12Min: 1 / Avg: 3.17 / Max: 12

Unigine Heaven

Resolution: 1024 x 768 - Mode: Fullscreen - Renderer: OpenGL

OpenBenchmarking.orgFrames Per Second, More Is BetterUnigine Heaven 4.0Resolution: 1024 x 768 - Mode: Fullscreen - Renderer: OpenGLAsync command submissionAsync command submission always + 16k inline bufferAsync command submission always + buffer fixAsync command submission always + larger inline bufferAsync command submission v2Async command submission v3 + shrink command buffersAsync, fence sync, buffer fix and enlargementBaselineSync command + buffer fix and enlargementglxgears fix + async + transfer buffer stuff50100150200250SE +/- 0.55, N = 3SE +/- 0.66, N = 3SE +/- 0.49, N = 3SE +/- 0.93, N = 3SE +/- 1.73, N = 3SE +/- 1.84, N = 3SE +/- 1.44, N = 3SE +/- 1.61, N = 3SE +/- 1.02, N = 3SE +/- 2.10, N = 9211.22206.93206.21207.01205.91208.23207.73216.50217.58211.85

Unigine Sanctuary

Resolution: 1024 x 768 - Mode: Fullscreen

OpenBenchmarking.orgFrames Per Second, More Is BetterUnigine Sanctuary 2.3Resolution: 1024 x 768 - Mode: FullscreenAsync command submissionAsync command submission always + larger inline bufferAsync command submission v2Async command submission v3 + shrink command buffersAsync, fence sync, buffer fix and enlargementBaselineSync command + buffer fix and enlargementglxgears fix + async + transfer buffer stuff60120180240300SE +/- 18.27, N = 9SE +/- 14.73, N = 12SE +/- 17.76, N = 9SE +/- 15.01, N = 12SE +/- 11.38, N = 12SE +/- 11.80, N = 12SE +/- 14.16, N = 9SE +/- 9.46, N = 12251.19241.81261.66259.35223.05243.55235.26196.32

Unigine Tropics

Resolution: 1024 x 768 - Mode: Fullscreen

OpenBenchmarking.orgFrames Per Second, More Is BetterUnigine Tropics 1.3Resolution: 1024 x 768 - Mode: FullscreenAsync command submissionAsync command submission v2Async, fence sync, buffer fix and enlargementBaselineSync command + buffer fix and enlargementglxgears fix + async + transfer buffer stuff50100150200250SE +/- 2.09, N = 3SE +/- 2.77, N = 12SE +/- 3.11, N = 3SE +/- 2.69, N = 4SE +/- 2.79, N = 3SE +/- 2.32, N = 12220.69227.23224.33227.56215.45226.43

Unigine Valley

Resolution: 1024 x 768 - Mode: Fullscreen - Renderer: OpenGL

OpenBenchmarking.orgFrames Per Second, More Is BetterUnigine Valley 1.0Resolution: 1024 x 768 - Mode: Fullscreen - Renderer: OpenGLAsync command submissionAsync command submission v2Async, fence sync, buffer fix and enlargementBaselineSync command + buffer fix and enlargementglxgears fix + async + transfer buffer stuff4080120160200SE +/- 0.89, N = 3SE +/- 1.51, N = 3SE +/- 1.04, N = 3SE +/- 2.24, N = 4SE +/- 1.53, N = 3SE +/- 1.31, N = 3190.52187.01187.64182.73184.96187.35

Xonotic

Resolution: 1024 x 768 - Effects Quality: Ultimate

OpenBenchmarking.orgFrames Per Second, More Is BetterXonotic 0.8.2Resolution: 1024 x 768 - Effects Quality: UltimateAsync command submissionAsync command submission v2Async, fence sync, buffer fix and enlargementBaselineSync command + buffer fix and enlargementglxgears fix + async + transfer buffer stuff50100150200250SE +/- 0.86, N = 3SE +/- 1.10, N = 3SE +/- 0.92, N = 3SE +/- 0.34, N = 3SE +/- 0.51, N = 3SE +/- 2.70, N = 3246.84246.04242.83247.83245.67249.08MIN: 38 / MAX: 652MIN: 40 / MAX: 655MIN: 41 / MAX: 648MIN: 40 / MAX: 658MIN: 39 / MAX: 667MIN: 39 / MAX: 640

GLmark2

Resolution: 1024 x 768

OpenBenchmarking.orgScore, More Is BetterGLmark2 2021.08.30Resolution: 1024 x 768Async command submissionAsync command submission v2Async, fence sync, buffer fix and enlargementBaselineSync command + buffer fix and enlargementglxgears fix + async + transfer buffer stuff11002200330044005500478148224839476646934944


Phoronix Test Suite v10.8.4