GL_vs_VK: A Micro-Benchmark Looking At The Overhead Of OpenGL vs. Vulkan APIs
GL_vs_VK is self-described as a "comparison of OpenGL and Vulkan API in terms of performance" and offers multiple test-cases for directly comparing OpenGL and Vulkan in different environments. Here are some benchmarks on several different drivers and GPUs.
GL_vs_VK is being written by a university student, Damian Dyńdo, for his master thesis project looking at the OpenGL and Vulkan APIs in terms of API-related overhead by implementing nearly identical tests in both OpenGL and Vulkan. Where available are also multi-threaded test-cases for each scene. Damian was open to making GL_vs_VK automated benchmark friendly so I've added a test profile for it so it can be benchmarked via the Phoronix Test Suite.
The first test of GL_vs_VK is a static scene with a variable number of rendered objects. This test has a multi-threaded OpenGL option and is also multi-threaded in Vulkan, but the other tests don't have a multi-threaded GL ability.
The second test is a terrain with dynamic level-of-detail (LoD).
The third test case is shadow mapping. More details on these GL_vs_VK tests via the GitHub site. I tested GL_vs_VK via the Phoronix Test Suite with several different drivers and GPUs:
- The NVIDIA 381.22 driver with the GeForce GTX 780 Ti, GTX 1050, GTX 1060, and GTX 1080.
- The AMD Radeon R9 Fury and RX 580 with the AMDGPU-PRO 17.10 driver.
- The AMD Radeon R9 Fury and RX 580 with the Linux 4.12 + Mesa 17.2-dev open-source graphics driver stack, including RADV.
- The HD Graphics 630 of the Core i7 7700K Kabylake CPU with Linux 4.12 + Mesa 17.2-dev.