Tips and Tricks: Vulkan Dos and Don’ts (original) (raw)

Note: This post was updated on 1/14/2025 to reflect updates.

The increased performance potential of modern graphics APIs is coupled with a dramatically increased level of developer responsibility. Optimal use of Vulkan is not a trivial concept, especially in the context of a large engine, and information about how to maximize performance is still somewhat sparse. The following document contains recommendations for best practices that achieve performance on NVIDIA hardware. It is not exhaustive, and is expected to be augmented over time, but should be a useful stepping stone for developers looking to utilize Vulkan to its full potential.

Engine Architecture

Do

Don’t

Work Submission

Do

Don’t

Pipeline

Do

Don’t

Pipeline Layout

Do

Command Pools and Buffers

Do

Don’t

Memory Management

Do

Don’t

Resources

Do

Don’t

Barriers

Do

Don’t

Debugging

Do

Don’t

More Information

You can find additional information about using Vulkan with NVIDIA GPUs in Introduction to Real-Time Ray Tracing with Vulkan, Turing Extensions for Vulkan and OpenGL, and Path Tracing for Quake II in Two Months.

Tags

About the Authors