Vulkan® - GPUOpen

  • TOOLS
  • VMA
  • Blogs
  • Driver Versions
  • Linux Driver
  • Radeon™ Drivers
  • News

Vulkan®

Vulkan is an open standard and cross-platform Application Programming Interface (API) developed by the Khronos® Group.

Derived from AMD’s revolutionary Mantle API, Vulkan® is a powerful low-overhead graphics API designed for developers who want or need deeper hardware control over GPU acceleration for maximized performance and predictability.

Vulkan® gives software developers control over the performance, efficiency, and capabilities of AMD Radeon™ GPUs and multi-core CPUs.

Vulkan Family Tree

From the consortium that brought you OpenGL®, Vulkan® is a new graphics API for developers who want or need deeper hardware control. Designed with “low-overhead” capabilities, Vulkan® gives devs total control over the performance, efficiency, and capabilities of Radeon™ GPUs and multi-core CPUs.

Compared to OpenGL®, Vulkan® substantially reduces “API overhead,” which is background work a CPU must do to interpret what a game is asking of the hardware. Reducing this overhead gives hardware much more time to spend on delivering meaningful features, performance and image quality. Vulkan® also exposes GPU hardware features not ordinarily accessible through OpenGL®.

Vulkan® inherits these capabilities from AMD’s Mantle graphics API. Mantle was the first of its kind: the first low-overhead PC graphics API, the first to grant unprecedented access to PC GPU resources, and the first to offer absolute control of those resources. Most importantly for gamers, Mantle got the industry thinking about how much additional GPU performance could be unlocked with a low-overhead graphics API.

Though the Mantle API was tailored for AMD hardware, Mantle was also designed with just enough hardware abstraction to accommodate almost any modern graphics architecture.  That architecture proved useful when we contributed the source code and API specification of Mantle to serve as the foundation of Vulkan® in May of 2015.

Since that time, Vulkan® has been forged under the stewardship of a comprehensive industry alliance that spans the hardware development, game development and content creation industries. Many new and significant capabilities have been added, such as support and performance optimizations for Android® smartphones and tablets, or cross-OS support for Windows® and Linux®.

Some of our tools to support you with Vulkan® development

Radeon™ Raytracing Analyzer

Investigate the performance of your raytracing applications.

Shine some light on those potential bottlenecks.

Radeon™ Memory Visualizer

Appreciate your allocations. Obliterate that oversubscription. And make good those memory leaks.

Show your video memory some love.

Radeon™ GPU Profiler

Analyze. Adjust. Accelerate.

Optimize your game’s renderer today, with our flagship graphics profiler.

Radeon™ GPU Analyzer

Write faster shaders, faster.

Find out how our tools can help your Vulkan® development

Discover the Vulkan® Memory Allocator (VMA) library

Our battle-testedopen source memory allocation library for Vulkan® makes allocating memory a doddle.

Explore what VMA can do for you

Read some of our Vulkan® blog posts

Using Vulkan® Device Memory Using Vulkan® Device Memory This post serves as a guide on how to best use the various Memory Heaps & Memory Types exposed in Vulkan on AMD drivers, starting with some high-level tips. Vulkan® Barriers Explained Vulkan® Barriers Explained Barriers control resource and command synchronisation in Vulkan applications and are critical to performance and correctness. Learn more here. Understanding Vulkan® Objects Understanding Vulkan® Objects An important part of learning the Vulkan® API is to understand what types of objects are defined by it, what they represent and how they relate to each other. Reducing Vulkan® API call overhead Reducing Vulkan® API call overhead This guest post, by Arseny Kapoulkine from Roblox, looks at the costs associated with calling various Vulkan functions tens or hundreds of thousands of times per frame, and ways to bring them down.

Not enough? Go visit our dedicated page for Vulkan application development:

Developing Vulkan® applications Developing Vulkan® applications Discover our Vulkan blog posts, presentations, samples, and more. Find out how we can help you create and optimize your Vulkan applications!

Need to know driver version information? Try here!

Radeon™ Vulkan® Drivers Version Table Radeon™ Vulkan® Drivers Version Table A handy table listing the equivalent versions of Vulkan®, Windows Store, and internal drivers for each Radeon Software Adrenalin driver release.

AMD open source driver for Vulkan®

The AMD open source driver for Vulkan is an open-source Vulkan driver for AMD Radeon™ graphics adapters on Linux®.

The driver is built on top of AMD’s Platform Abstraction Library (PAL), a shared component that is designed to encapsulate certain hardware and OS-specific programming details for many of AMD’s 3D and compute drivers. Leveraging PAL can help provide a consistent experience across platforms, including support for recently released GPUs and compatibility with AMD developer tools.

Learn more about our open source Vulkan® driver

Just want the drivers to play a Vulkan® game?

Get the latest Radeon™ drivers from AMD.com

Our latest Vulkan® news

AMD releases Vulkan support for Dense Geometry Format AMD releases Vulkan support for Dense Geometry Format We’ve released a provisional Vulkan® extension for AMD Dense Geometry Format (DGF), our block-based geometry compression technology. GPU Work Graphs mesh nodes in Vulkan® GPU Work Graphs mesh nodes in Vulkan® We’ve added mesh nodes to our Vulkan® experimental extension, VK_AMDX_shader_enqueue. Radeon™ GPU Detective adds Vulkan® support on Windows® Radeon™ GPU Detective adds Vulkan® support on Windows® The latest version of Radeon™ GPU Detective is out now! RGD v1.1 introduces support for post-mortem analysis of Vulkan applications on Windows. How do I become a graphics programmer? - A small guide from the AMD Game Engineering team How do I become a graphics programmer? - A small guide from the AMD Game Engineering team It is often difficult to know where to start when taking your first in the world of graphics. This guide is here to help with a discussion of first steps and a list of useful websites. Announcing GPU Work Graphs in Vulkan® Announcing GPU Work Graphs in Vulkan® AMD is providing an experimental AMD extension to access GPU Work Graphs in Vulkan. Check out this post for usage examples and resources. Radeon™ Memory Visualizer 1.6 introduces improved device configuration info and an expanded Resource details pane Radeon™ Memory Visualizer 1.6 introduces improved device configuration info and an expanded Resource details pane Radeon Memory Visualizer v1.6 adds improved device configuration information, and more parameters on the resource details pane. The latest Vulkan SDK now ships with Vulkan Memory Allocator (VMA) The latest Vulkan SDK now ships with Vulkan Memory Allocator (VMA) VMA appears as an optional component that can be selected in the Vulkan SDK 1.3.216.0 installer. Vulkan’s Best Practice layer now has AMD-specific checks Vulkan’s Best Practice layer now has AMD-specific checks Introducing AMD checks for the Vulkan® Best Practice validation layer! Find out more about how it now incorporates many of our performance suggestions.

Footnotes Vulkan and the Vulkan logo are trademarks of the Khronos Group Inc.

Related software

Vulkan® Memory Allocator Vulkan® Memory Allocator VMA is our single-header, MIT-licensed, C++ library for easily and efficiently managing memory allocation for your Vulkan® games and applications. AMD FidelityFX™ Hybrid Shadows sample AMD FidelityFX™ Hybrid Shadows sample This sample demonstrates how to combine ray traced shadows and rasterized shadow maps together to achieve high quality and performance. AMD FidelityFX™ Hybrid Stochastic Reflections sample AMD FidelityFX™ Hybrid Stochastic Reflections sample This sample shows how to combine AMD FidelityFX Stochastic Screen Space Reflections (SSSR) with ray tracing in order to create high quality reflections. AMD Radeon™ Memory Visualizer AMD Radeon™ Memory Visualizer AMD Radeon™ Memory Visualizer (RMV) is a tool to allow you to gain a deep understanding of how your application uses memory for graphics resources.

Related news and technical articles

AMD releases Vulkan support for Dense Geometry Format AMD releases Vulkan support for Dense Geometry Format We’ve released a provisional Vulkan® extension for AMD Dense Geometry Format (DGF), our block-based geometry compression technology. GPU Work Graphs mesh nodes in Vulkan® GPU Work Graphs mesh nodes in Vulkan® We’ve added mesh nodes to our Vulkan® experimental extension, VK_AMDX_shader_enqueue. Radeon™ GPU Detective adds Vulkan® support on Windows® Radeon™ GPU Detective adds Vulkan® support on Windows® The latest version of Radeon™ GPU Detective is out now! RGD v1.1 introduces support for post-mortem analysis of Vulkan applications on Windows. How do I become a graphics programmer? - A small guide from the AMD Game Engineering team How do I become a graphics programmer? - A small guide from the AMD Game Engineering team It is often difficult to know where to start when taking your first in the world of graphics. This guide is here to help with a discussion of first steps and a list of useful websites. Radeon™ Memory Visualizer 1.6 introduces improved device configuration info and an expanded Resource details pane Radeon™ Memory Visualizer 1.6 introduces improved device configuration info and an expanded Resource details pane Radeon Memory Visualizer v1.6 adds improved device configuration information, and more parameters on the resource details pane. RDNA Performance Guide RDNA Performance Guide Our one-stop resource for getting great AMD RDNA™ performance on Vulkan® and DirectX®12 APIs! Getting started: Our software Getting started: Our software New or fairly new to AMD's tools, libraries, and effects? This is the best place to get started on GPUOpen! Getting started: Development and performance Getting started: Development and performance Looking for tips on getting started with developing and/or optimizing your game, whether on AMD hardware or generally? We've got you covered!

Related videos

GPU Reshape – Modern Shader Instrumentation and Instruction Level Validation (Digital Dragons 2024) – YouTube link GPU Reshape – Modern Shader Instrumentation and Instruction Level Validation (Digital Dragons 2024) – YouTube link GPU Reshape is, a just-in-time instrumentation framework with instruction level validation of shaders. A deep dive into current validation methodologies, and what the future of instrumentation may hold. Mesh Shaders – Learning Through Examples (Digital Dragons 2024) – YouTube link Mesh Shaders – Learning Through Examples (Digital Dragons 2024) – YouTube link Learn about the new Mesh Shader pipeline which can help to create even more better-looking games. Game Optimization: Radeon™ Developer Tools on RADV and Steam Deck™ (Vulkanised 2023 - YouTube link) Game Optimization: Radeon™ Developer Tools on RADV and Steam Deck™ (Vulkanised 2023 - YouTube link) This talk at Vulkanised 2023 covers how to use the Radeon Developer Tool Suite (RDTS) to optimize games using RADV and Steam Deck. Memory Management in Vulkan® - YouTube link Memory Management in Vulkan® - YouTube link This talk by AMD's Ste Tovey discusses memory management with Vulkan® at Vulkanised 2018. Optimising a AAA Vulkan® Title on Desktop Optimising a AAA Vulkan® Title on Desktop This talk by AMD's Lou Kramer discusses optimising AAA Vulkan® titles on desktop. World War Z – Using Vulkan® to Tame the Zombie Swarm World War Z – Using Vulkan® to Tame the Zombie Swarm A talk by AMD's Jordan Logan and Saber Interactive's Nikolai Petrov at Reboot DEVELOPRED in 2019. Porting Your Engine to Vulkan® or DirectX®12 Porting Your Engine to Vulkan® or DirectX®12 This talk by AMD's Adam Sawicki at Digital Dragons in 2018 discusses how to port your engine to Vulkan® or DirectX®12.

Từ khóa » Vulkan Grafik Treiber