Virgl asnychronous command stream submission

Virgl testsing of performance improvement

HTML result view exported from: https://openbenchmarking.org/result/2201245-NE-2201199NE51.

Virgl asnychronous command stream submissionProcessorMotherboardChipsetMemoryDiskGraphicsAudioMonitorNetworkOSKernelDisplay ServerOpenGLCompilerFile-SystemScreen ResolutionSystem LayerBaselineAsnychronous command emission and early flushAsync transfer fixedAsync transfer query fixed tooAsync transfer query fixed too againAsync transfer fixed staging tooAsync transfer fixed staging too disable dpmsAsync transfer fixed staging too -dpms8 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 + ICH932GB97GBvirgl 12288GBIntel 82801IQEMU MonitorRed Hat Virtio deviceGentoo/Linux5.15.11-gentoo-x86_64 (x86_64)X Server 1.20.144.3 Mesa 22.0.0-devel (git-a167e8ecc8) (LLVM 13.0.0 D...)GCC 11.2.0 + LLVM 13.0.0ext41440x900QEMU4.3 Mesa 22.0.0-devel (git-55482b8164) (LLVM 13.0.0 D...)4.3 Mesa 22.0.0-devel (git-47fee50e3e) (LLVM 13.0.0 D...)1024x7684.3 Mesa 22.0.0-devel (git-692c5348f2) (LLVM 13.0.0 D...)4.3 Mesa 22.0.0-devel (git-b8ec3a5274) (LLVM 13.0.0 D...)OpenBenchmarking.orgProcessor 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 asnychronous command stream submissionopenarena: 1600 x 900unigine-heaven: 1600 x 900 - Fullscreen - OpenGLunigine-sanctuary: 1600 x 900 - Fullscreenunigine-tropics: 1600 x 900 - Fullscreenunigine-valley: 1600 x 900 - Fullscreen - OpenGLxonotic: 1024 x 768 - Ultimateglmark2: 1024 x 768gputest: 1600 x 900BaselineAsnychronous command emission and early flushAsync transfer fixedAsync transfer query fixed tooAsync transfer query fixed too againAsync transfer fixed staging tooAsync transfer fixed staging too disable dpmsAsync transfer fixed staging too -dpms301.1162.689213.194168.360160.499250.4787894467213369412.6163.886357.740232.878159.183268.3132810464014741365.5165.368397.093235.961161.147271.1263553461314618392.5163.478408.487233.080159.120270.1677618451714859399.9164.351510.694254.427159.482271.2741134448014741358.0157.481374.1164.467347.941243.035163.096272.2699109451614816OpenBenchmarking.org

OpenArena

Resolution: 1600 x 900

OpenBenchmarking.orgFrames Per Second, More Is BetterOpenArena 0.8.8Resolution: 1600 x 900BaselineAsnychronous command emission and early flushAsync transfer fixedAsync transfer query fixed tooAsync transfer query fixed too againAsync transfer fixed staging tooAsync transfer fixed staging too -dpms90180270360450SE +/- 1.00, N = 3SE +/- 3.32, N = 3SE +/- 0.82, N = 3SE +/- 5.07, N = 3SE +/- 2.90, N = 3SE +/- 4.39, N = 4SE +/- 1.40, N = 3301.1412.6365.5392.5399.9358.0374.1MIN: 1MIN: 1MIN: 1MIN: 1MIN: 1MIN: 1MIN: 1

OpenArena

Resolution: 1600 x 900 - Total Frame Time

OpenBenchmarking.orgMilliseconds, Fewer Is BetterOpenArena 0.8.8Resolution: 1600 x 900 - Total Frame TimeBaselineAsnychronous command emission and early flushAsync transfer fixedAsync transfer query fixed tooAsync transfer query fixed too againAsync transfer fixed staging tooAsync transfer fixed staging too -dpms48121620Min: 1 / Avg: 3.35 / Max: 12Min: 1 / Avg: 2.44 / Max: 12Min: 1 / Avg: 2.74 / Max: 12Min: 1 / Avg: 2.55 / Max: 9Min: 1 / Avg: 2.52 / Max: 12Min: 1 / Avg: 2.8 / Max: 17Min: 1 / Avg: 2.68 / Max: 12

Unigine Heaven

Resolution: 1600 x 900 - Mode: Fullscreen - Renderer: OpenGL

OpenBenchmarking.orgFrames Per Second, More Is BetterUnigine Heaven 4.0Resolution: 1600 x 900 - Mode: Fullscreen - Renderer: OpenGLBaselineAsnychronous command emission and early flushAsync transfer fixedAsync transfer query fixed tooAsync transfer query fixed too againAsync transfer fixed staging tooAsync transfer fixed staging too -dpms4080120160200SE +/- 0.59, N = 3SE +/- 0.15, N = 3SE +/- 0.16, N = 3SE +/- 0.29, N = 3SE +/- 0.05, N = 3SE +/- 1.64, N = 9SE +/- 0.24, N = 3162.69163.89165.37163.48164.35157.48164.47

Unigine Sanctuary

Resolution: 1600 x 900 - Mode: Fullscreen

OpenBenchmarking.orgFrames Per Second, More Is BetterUnigine Sanctuary 2.3Resolution: 1600 x 900 - Mode: FullscreenBaselineAsnychronous command emission and early flushAsync transfer fixedAsync transfer query fixed tooAsync transfer query fixed too againAsync transfer fixed staging too -dpms110220330440550SE +/- 21.79, N = 9SE +/- 26.47, N = 9SE +/- 33.13, N = 12SE +/- 31.26, N = 12SE +/- 2.10, N = 3SE +/- 29.18, N = 12213.19357.74397.09408.49510.69347.94

Unigine Tropics

Resolution: 1600 x 900 - Mode: Fullscreen

OpenBenchmarking.orgFrames Per Second, More Is BetterUnigine Tropics 1.3Resolution: 1600 x 900 - Mode: FullscreenBaselineAsnychronous command emission and early flushAsync transfer fixedAsync transfer query fixed tooAsync transfer query fixed too againAsync transfer fixed staging too -dpms60120180240300SE +/- 5.19, N = 10SE +/- 8.02, N = 9SE +/- 5.08, N = 12SE +/- 5.55, N = 11SE +/- 3.45, N = 3SE +/- 5.09, N = 12168.36232.88235.96233.08254.43243.04

Unigine Valley

Resolution: 1600 x 900 - Mode: Fullscreen - Renderer: OpenGL

OpenBenchmarking.orgFrames Per Second, More Is BetterUnigine Valley 1.0Resolution: 1600 x 900 - Mode: Fullscreen - Renderer: OpenGLBaselineAsnychronous command emission and early flushAsync transfer fixedAsync transfer query fixed tooAsync transfer query fixed too againAsync transfer fixed staging too -dpms4080120160200SE +/- 0.36, N = 3SE +/- 1.51, N = 3SE +/- 0.46, N = 3SE +/- 0.75, N = 3SE +/- 0.54, N = 3SE +/- 0.59, N = 3160.50159.18161.15159.12159.48163.10

Xonotic

Resolution: 1024 x 768 - Effects Quality: Ultimate

OpenBenchmarking.orgFrames Per Second, More Is BetterXonotic 0.8.2Resolution: 1024 x 768 - Effects Quality: UltimateBaselineAsnychronous command emission and early flushAsync transfer fixedAsync transfer query fixed tooAsync transfer query fixed too againAsync transfer fixed staging too -dpms60120180240300SE +/- 0.53, N = 3SE +/- 0.46, N = 3SE +/- 0.31, N = 3SE +/- 1.16, N = 3SE +/- 1.63, N = 3SE +/- 1.66, N = 3250.48268.31271.13270.17271.27272.27MIN: 40 / MAX: 669MIN: 39 / MAX: 703MIN: 42 / MAX: 724MIN: 38 / MAX: 751MIN: 39 / MAX: 715MIN: 40 / MAX: 729

GLmark2

Resolution: 1024 x 768

OpenBenchmarking.orgScore, More Is BetterGLmark2 2021.08.30Resolution: 1024 x 768BaselineAsnychronous command emission and early flushAsync transfer fixedAsync transfer query fixed tooAsync transfer query fixed too againAsync transfer fixed staging too -dpms10002000300040005000467246404613451744804516

GpuTest

Resolution: 1600 x 900

OpenBenchmarking.orgPoints, More Is BetterGpuTest 0.7.0Resolution: 1600 x 900BaselineAsnychronous command emission and early flushAsync transfer fixedAsync transfer query fixed tooAsync transfer query fixed too againAsync transfer fixed staging too -dpms3K6K9K12K15KSE +/- 107.53, N = 3SE +/- 52.23, N = 3SE +/- 77.42, N = 3SE +/- 4.51, N = 3SE +/- 38.84, N = 3SE +/- 36.56, N = 3133691474114618148591474114816


Phoronix Test Suite v10.8.3