GL_vs_VK: A Micro-Benchmark Looking At The Overhead Of OpenGL vs. Vulkan APIs

Written by Michael Larabel in Display Drivers on 6 June 2017 at 09:23 AM EDT. Page 1 of 3. 22 Comments.

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.


Related Articles