Vulkan vs. OpenGL API Drivers

Tests for a future article on Phoronix.com

HTML result view exported from: https://openbenchmarking.org/result/1706066-TR-VULKANVS243&sor&grr.

ProcessorMotherboardChipsetMemoryDiskGraphicsAudioNetworkMonitorOSKernelDesktopDisplay ServerDisplay DriverOpenGLOpenCLVulkanCompilerFile-SystemScreen ResolutionVulkan NVIDIA GTX 780 Ti NVIDIA GTX 1050 NVIDIA GTX 1060 NVIDIA GTX 1080 Ti AMDGPU-PRO RX 580 AMDGPU-PRO R9 Fury Open RX 580 Open R9 Fury Intel HD 630Intel Core i7-7700K @ 4.50GHz (8 Cores)MSI Z270-A PRO (MS-7A71) v1.0Intel Device 591f + Z27016384MBSamsung SSD 950 PRO 256GBNVIDIA GeForce GTX 780 Ti 3072MB (875/3500MHz)Realtek ALC892Realtek RTL8111/8168/8411Ubuntu 16.044.8.0-53-generic (x86_64)Unity 7.4.0X Server 1.18.4NVIDIA 381.224.5.0OpenCL 1.2 CUDA 8.0.01.0.42GCC 5.4.0 20160609ext43840x2160Zotac NVIDIA GeForce GTX 1050 2048MB (1316/3504MHz)NVIDIA GeForce GTX 1060 6GB 6144MB (1506/4006MHz)NVIDIA GeForce GTX 1080 Ti 11264MB (403/5508MHz)MSI AMD Radeon RX 580 8192MBAcer B286HKmodesetting 1.18.44.5.13474OpenCL 2.0 AMD-APP (2348.3)Sapphire AMD Radeon R9 Fury 4096MBIntel Device 591fMSI AMD POLARIS10 8192MB4.12.0-999-generic (x86_64) 201706044.5 Mesa 17.2.0-devel- padoka PPA Gallium 0.4 (LLVM 5.0.0)1.0.21Sapphire AMD Radeon R9 FURY / NANO 4096MBIntel HD 630 (Kaby Lake GT2) 3072MB (1150MHz)4.5 Mesa 17.2.0-devel- padoka PPAOpenBenchmarking.orgCompiler Details- --build=x86_64-linux-gnu --disable-browser-plugin --disable-vtable-verify --disable-werror --enable-checking=release --enable-clocale=gnu --enable-gnu-unique-object --enable-gtk-cairo --enable-java-awt=gtk --enable-java-home --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --enable-libmpx --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-multilib --enable-nls --enable-objc-gc --enable-plugin --enable-shared --enable-threads=posix --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-abi=m64 --with-arch-32=i686 --with-arch-directory=amd64 --with-default-libstdcxx-abi=new --with-multilib-list=m32,m64,mx32 --with-tune=generic -v Processor Details- Scaling Governor: intel_pstate performanceGraphics Details- Vulkan: AMDGPU-PRO RX 580, Vulkan: AMDGPU-PRO R9 Fury: GLAMOR

gl-vs-vk: Shadow Mapping - Nogl-vs-vk: Shadow Mapping - Yesgl-vs-vk: Terrain With Dynamic LoD - Nogl-vs-vk: Terrain With Dynamic LoD - Yesgl-vs-vk: Static Scene - Nogl-vs-vk: Static Scene - YesVulkanOpenGL NVIDIA GTX 780 Ti NVIDIA GTX 1050 NVIDIA GTX 1060 NVIDIA GTX 1080 Ti AMDGPU-PRO RX 580 AMDGPU-PRO R9 Fury Open RX 580 Open R9 Fury Intel HD 630 NVIDIA GTX 780 Ti NVIDIA GTX 1050 NVIDIA GTX 1060 NVIDIA GTX 1080 Ti AMDGPU-PRO RX 580 AMDGPU-PRO R9 Fury Open R9 Fury Open RX 580 Intel HD 6303.253.8415.7010.4278.9219.943.663.9615.6410.3579.0020.863.262.8515.6410.3478.7420.983.281.0215.6510.3479.2020.904.001.6219.6412.8095.8125.634.011.6119.4412.5995.9326.933.876.0124.0115.1391.1621.733.786.6424.7015.2190.4122.978.438.7020.9921.48100.2136.815.6119.43136.6285.945.6019.46134.5784.285.5919.25133.1985.675.5719.13137.1985.697.4628.91210.94161.957.5029.20210.72161.186.3223.68168.26116.416.2923.37167.67116.8712.6062.50237.56188.00OpenBenchmarking.org

GL-vs-VK

Test: Shadow Mapping - Multi-Threaded: No

VulkanOpenGLOpenBenchmarking.orgFPS, More Is BetterGL-vs-VK 2017-06-05Test: Shadow Mapping - Multi-Threaded: NoNVIDIA GTX 780 TiNVIDIA GTX 1060NVIDIA GTX 1080 TiNVIDIA GTX 1050Open R9 FuryOpen RX 580AMDGPU-PRO RX 580AMDGPU-PRO R9 FuryIntel HD 63070140210280350SE +/- 0.77, N = 3SE +/- 0.63, N = 3SE +/- 0.20, N = 3SE +/- 0.84, N = 3SE +/- 9.23, N = 3SE +/- 0.33, N = 3SE +/- 1.79, N = 3SE +/- 0.48, N = 3SE +/- 0.08, N = 3SE +/- 0.67, N = 3SE +/- 0.32, N = 3SE +/- 0.98, N = 3SE +/- 0.81, N = 3SE +/- 1.04, N = 3SE +/- 1.22, N = 3SE +/- 0.97, N = 3SE +/- 0.36, N = 3SE +/- 0.25, N = 3307.98306.70304.52273.16265.30258.24250.09249.21118.58179.45179.02178.49178.36158.98158.15134.04133.3879.391. (CXX) g++ options:

GL-vs-VK

Test: Shadow Mapping - Multi-Threaded: No

VulkanOpenGLOpenBenchmarking.orgFrame Time - ms, Fewer Is BetterGL-vs-VK 2017-06-05Test: Shadow Mapping - Multi-Threaded: NoNVIDIA GTX 780 TiNVIDIA GTX 1060NVIDIA GTX 1080 TiNVIDIA GTX 1050Open R9 FuryOpen RX 580AMDGPU-PRO RX 580AMDGPU-PRO R9 FuryIntel HD 6303691215SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.00, N = 3SE +/- 0.01, N = 3SE +/- 0.13, N = 3SE +/- 0.00, N = 3SE +/- 0.03, N = 3SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.02, N = 3SE +/- 0.01, N = 3SE +/- 0.03, N = 3SE +/- 0.03, N = 3SE +/- 0.04, N = 3SE +/- 0.05, N = 3SE +/- 0.05, N = 3SE +/- 0.02, N = 3SE +/- 0.04, N = 33.253.263.283.663.783.874.004.018.435.575.595.605.616.296.327.467.5012.601. (CXX) g++ options:

GL-vs-VK

Test: Shadow Mapping - Multi-Threaded: Yes

OpenBenchmarking.orgFPS, More Is BetterGL-vs-VK 2017-06-05Test: Shadow Mapping - Multi-Threaded: YesNVIDIA GTX 1080 TiAMDGPU-PRO R9 FuryAMDGPU-PRO RX 580NVIDIA GTX 1060NVIDIA GTX 780 TiNVIDIA GTX 1050Open RX 580Open R9 FuryIntel HD 6302004006008001000SE +/- 4.30, N = 3SE +/- 1.19, N = 3SE +/- 6.51, N = 3SE +/- 57.01, N = 3SE +/- 57.14, N = 3SE +/- 2.93, N = 3SE +/- 20.51, N = 3SE +/- 17.86, N = 3SE +/- 0.22, N = 3979.40622.47618.24367.02279.77252.31170.91154.34114.90-std=c++11 -lpthread -lm -ldl - MIN: 61.3 / MAX: 7633587.78-std=c++11 -lpthread -lm -ldl - MIN: 219.1 / MAX: 5434782.61-std=c++11 -lpthread -lm -ldl - MIN: 186.13 / MAX: 8771929.82-std=c++11 -lpthread -lm -ldl - MIN: 62.41 / MAX: 10752688.17-std=c++11 -lpthread -lm -ldl - MIN: 46.61 / MAX: 7936507.94-std=c++11 -lpthread -lm -ldl - MIN: 58.79 / MAX: 7518796.99-rdynamic - MIN: 74.35 / MAX: 6211180.12-rdynamic - MIN: 94.84 / MAX: 9090909.091. (CXX) g++ options:

GL-vs-VK

Test: Shadow Mapping - Multi-Threaded: Yes

OpenBenchmarking.orgFrame Time - ms, Fewer Is BetterGL-vs-VK 2017-06-05Test: Shadow Mapping - Multi-Threaded: YesNVIDIA GTX 1080 TiAMDGPU-PRO R9 FuryAMDGPU-PRO RX 580NVIDIA GTX 1060NVIDIA GTX 780 TiNVIDIA GTX 1050Open RX 580Open R9 FuryIntel HD 630246810SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.02, N = 3SE +/- 0.40, N = 3SE +/- 0.66, N = 3SE +/- 0.05, N = 3SE +/- 0.64, N = 3SE +/- 0.69, N = 3SE +/- 0.02, N = 31.021.611.622.853.843.966.016.648.70-std=c++11 -lpthread -lm -ldl - MAX: 16.31-std=c++11 -lpthread -lm -ldl - MAX: 4.56-std=c++11 -lpthread -lm -ldl - MAX: 5.37-std=c++11 -lpthread -lm -ldl - MAX: 16.02-std=c++11 -lpthread -lm -ldl - MAX: 21.45-std=c++11 -lpthread -lm -ldl - MAX: 17.01-rdynamic - MAX: 13.45-rdynamic - MAX: 10.54-rdynamic - MAX: 18.481. (CXX) g++ options:

GL-vs-VK

Test: Terrain With Dynamic LoD - Multi-Threaded: No

VulkanOpenGLOpenBenchmarking.orgFPS, More Is BetterGL-vs-VK 2017-06-05Test: Terrain With Dynamic LoD - Multi-Threaded: NoNVIDIA GTX 1060NVIDIA GTX 1050NVIDIA GTX 1080 TiNVIDIA GTX 780 TiAMDGPU-PRO R9 FuryAMDGPU-PRO RX 580Intel HD 630Open RX 580Open R9 Fury1428425670SE +/- 0.06, N = 3SE +/- 0.03, N = 3SE +/- 0.06, N = 3SE +/- 0.04, N = 3SE +/- 0.11, N = 3SE +/- 0.49, N = 3SE +/- 0.03, N = 3SE +/- 0.04, N = 3SE +/- 1.19, N = 3SE +/- 0.05, N = 3SE +/- 0.30, N = 3SE +/- 0.45, N = 3SE +/- 0.27, N = 3SE +/- 0.02, N = 3SE +/- 0.38, N = 3SE +/- 0.48, N = 3SE +/- 0.47, N = 3SE +/- 0.05, N = 363.9463.9263.9063.6851.4450.9247.6541.6540.5652.2751.9451.4851.4042.7942.2434.6034.2616.001. (CXX) g++ options:

GL-vs-VK

Test: Terrain With Dynamic LoD - Multi-Threaded: No

VulkanOpenGLOpenBenchmarking.orgFrame Time - ms, Fewer Is BetterGL-vs-VK 2017-06-05Test: Terrain With Dynamic LoD - Multi-Threaded: NoNVIDIA GTX 1050NVIDIA GTX 1060NVIDIA GTX 1080 TiNVIDIA GTX 780 TiAMDGPU-PRO R9 FuryAMDGPU-PRO RX 580Intel HD 630Open RX 580Open R9 Fury1428425670SE +/- 0.01, N = 3SE +/- 0.02, N = 3SE +/- 0.02, N = 3SE +/- 0.01, N = 3SE +/- 0.04, N = 3SE +/- 0.19, N = 3SE +/- 0.01, N = 3SE +/- 0.02, N = 3SE +/- 0.75, N = 3SE +/- 0.02, N = 3SE +/- 0.11, N = 3SE +/- 0.17, N = 3SE +/- 0.10, N = 3SE +/- 0.01, N = 3SE +/- 0.21, N = 3SE +/- 0.41, N = 3SE +/- 0.41, N = 3SE +/- 0.18, N = 315.6415.6415.6515.7019.4419.6420.9924.0124.7019.1319.2519.4319.4623.3723.6828.9129.2062.501. (CXX) g++ options:

GL-vs-VK

Test: Terrain With Dynamic LoD - Multi-Threaded: Yes

OpenBenchmarking.orgFPS, More Is BetterGL-vs-VK 2017-06-05Test: Terrain With Dynamic LoD - Multi-Threaded: YesNVIDIA GTX 1060NVIDIA GTX 1080 TiNVIDIA GTX 1050NVIDIA GTX 780 TiAMDGPU-PRO R9 FuryAMDGPU-PRO RX 580Open RX 580Open R9 FuryIntel HD 63020406080100SE +/- 0.08, N = 3SE +/- 0.13, N = 3SE +/- 0.09, N = 3SE +/- 0.05, N = 3SE +/- 0.02, N = 3SE +/- 0.88, N = 3SE +/- 0.02, N = 3SE +/- 0.02, N = 3SE +/- 0.03, N = 396.7196.7096.6595.9979.4578.1766.0965.7646.56-std=c++11 -lpthread -lm -ldl - MIN: 42.79 / MAX: 8403361.34-std=c++11 -lpthread -lm -ldl - MIN: 40.42 / MAX: 8000000-std=c++11 -lpthread -lm -ldl - MIN: 27.4 / MAX: 7142857.14-std=c++11 -lpthread -lm -ldl - MIN: 40.62 / MAX: 7352941.18-std=c++11 -lpthread -lm -ldl - MIN: 56.34 / MAX: 10638297.87-std=c++11 -lpthread -lm -ldl - MIN: 54.19 / MAX: 8620689.65-rdynamic - MIN: 47.63 / MAX: 9090909.09-rdynamic - MIN: 39.87 / MAX: 9433962.26-rdynamic - MIN: 18.85 / MAX: 9259259.261. (CXX) g++ options:

GL-vs-VK

Test: Terrain With Dynamic LoD - Multi-Threaded: Yes

OpenBenchmarking.orgFrame Time - ms, Fewer Is BetterGL-vs-VK 2017-06-05Test: Terrain With Dynamic LoD - Multi-Threaded: YesNVIDIA GTX 1060NVIDIA GTX 1080 TiNVIDIA GTX 1050NVIDIA GTX 780 TiAMDGPU-PRO R9 FuryAMDGPU-PRO RX 580Open RX 580Open R9 FuryIntel HD 630510152025SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.00, N = 3SE +/- 0.15, N = 3SE +/- 0.00, N = 3SE +/- 0.01, N = 3SE +/- 0.02, N = 310.3410.3410.3510.4212.5912.8015.1315.2121.48-std=c++11 -lpthread -lm -ldl - MAX: 23.37-std=c++11 -lpthread -lm -ldl - MAX: 24.74-std=c++11 -lpthread -lm -ldl - MAX: 36.49-std=c++11 -lpthread -lm -ldl - MAX: 24.62-std=c++11 -lpthread -lm -ldl - MAX: 17.75-std=c++11 -lpthread -lm -ldl - MAX: 18.45-rdynamic - MAX: 20.99-rdynamic - MAX: 25.08-rdynamic - MAX: 53.051. (CXX) g++ options:

GL-vs-VK

Test: Static Scene - Multi-Threaded: No

VulkanOpenGLOpenBenchmarking.orgFPS, More Is BetterGL-vs-VK 2017-06-05Test: Static Scene - Multi-Threaded: NoNVIDIA GTX 1060NVIDIA GTX 780 TiNVIDIA GTX 1050NVIDIA GTX 1080 TiOpen R9 FuryOpen RX 580AMDGPU-PRO RX 580AMDGPU-PRO R9 FuryIntel HD 6303691215SE +/- 0.01, N = 3SE +/- 0.02, N = 3SE +/- 0.03, N = 3SE +/- 0.06, N = 3SE +/- 0.01, N = 3SE +/- 0.00, N = 3SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.04, N = 3SE +/- 0.03, N = 3SE +/- 0.04, N = 3SE +/- 0.09, N = 3SE +/- 0.11, N = 3SE +/- 0.02, N = 3SE +/- 0.02, N = 3SE +/- 0.05, N = 3SE +/- 0.05, N = 3SE +/- 0.02, N = 312.7012.6712.6612.6311.0610.9710.4410.429.987.517.437.327.295.965.944.754.744.211. (CXX) g++ options:

GL-vs-VK

Test: Static Scene - Multi-Threaded: No

VulkanOpenGLOpenBenchmarking.orgFrame Time - ms, Fewer Is BetterGL-vs-VK 2017-06-05Test: Static Scene - Multi-Threaded: NoNVIDIA GTX 1060NVIDIA GTX 780 TiNVIDIA GTX 1050NVIDIA GTX 1080 TiOpen R9 FuryOpen RX 580AMDGPU-PRO RX 580AMDGPU-PRO R9 FuryIntel HD 63050100150200250SE +/- 0.06, N = 3SE +/- 0.11, N = 3SE +/- 0.17, N = 3SE +/- 0.37, N = 3SE +/- 0.06, N = 3SE +/- 0.02, N = 3SE +/- 0.11, N = 3SE +/- 0.11, N = 3SE +/- 0.42, N = 3SE +/- 0.46, N = 3SE +/- 0.66, N = 3SE +/- 1.73, N = 3SE +/- 2.15, N = 3SE +/- 0.46, N = 3SE +/- 0.48, N = 3SE +/- 2.38, N = 3SE +/- 2.10, N = 3SE +/- 1.32, N = 378.7478.9279.0079.2090.4191.1695.8195.93100.21133.19134.57136.62137.19167.67168.26210.72210.94237.561. (CXX) g++ options:

GL-vs-VK

Test: Static Scene - Multi-Threaded: Yes

VulkanOpenGLOpenBenchmarking.orgFPS, More Is BetterGL-vs-VK 2017-06-05Test: Static Scene - Multi-Threaded: YesNVIDIA GTX 780 TiNVIDIA GTX 1050NVIDIA GTX 1080 TiNVIDIA GTX 1060Open RX 580Open R9 FuryAMDGPU-PRO RX 580AMDGPU-PRO R9 FuryIntel HD 6301122334455SE +/- 0.05, N = 3SE +/- 0.28, N = 3SE +/- 0.11, N = 3SE +/- 0.21, N = 3SE +/- 0.08, N = 3SE +/- 0.07, N = 3SE +/- 0.29, N = 3SE +/- 0.15, N = 3SE +/- 0.12, N = 3SE +/- 0.03, N = 3SE +/- 0.08, N = 3SE +/- 0.09, N = 3SE +/- 0.09, N = 3SE +/- 0.09, N = 3SE +/- 0.07, N = 3SE +/- 0.06, N = 3SE +/- 0.06, N = 3SE +/- 0.08, N = 350.1647.9447.8647.6746.0343.5439.0237.1327.1711.8711.6711.6711.648.598.566.216.185.321. (CXX) g++ options:

GL-vs-VK

Test: Static Scene - Multi-Threaded: Yes

VulkanOpenGLOpenBenchmarking.orgFrame Time - ms, Fewer Is BetterGL-vs-VK 2017-06-05Test: Static Scene - Multi-Threaded: YesNVIDIA GTX 780 TiNVIDIA GTX 1050NVIDIA GTX 1080 TiNVIDIA GTX 1060Open RX 580Open R9 FuryAMDGPU-PRO RX 580AMDGPU-PRO R9 FuryIntel HD 6304080120160200SE +/- 0.02, N = 3SE +/- 0.12, N = 3SE +/- 0.05, N = 3SE +/- 0.09, N = 3SE +/- 0.04, N = 3SE +/- 0.04, N = 3SE +/- 0.19, N = 3SE +/- 0.11, N = 3SE +/- 0.16, N = 3SE +/- 0.22, N = 3SE +/- 0.67, N = 3SE +/- 0.62, N = 3SE +/- 0.65, N = 3SE +/- 1.23, N = 3SE +/- 0.99, N = 3SE +/- 1.65, N = 3SE +/- 1.61, N = 3SE +/- 2.70, N = 319.9420.8620.9020.9821.7322.9725.6326.9336.8184.2885.6785.6985.94116.41116.87161.18161.95188.001. (CXX) g++ options:


Phoronix Test Suite v10.8.4