Vulkan是一個跨平臺的二維、3D軟件與計算的應用程式接口(API),最早由科納斯組織在2015年游戲開發者大會(GDC)上發表。與OpenGL類似,Vulkan針對全平臺即時3D圖形程式(如電子游戲和交互媒體)而設計,并提供高效能與更均衡的CPU與GPU占用,這也是Direct3D 12和AMD的Mantle的目標。Vulkan是一個底層API,能執行并行任務,能更好地分配多個CPU核心的使用。Vulkan兼容Mantle的一個分支,并使用了Mantle的一些組件。Vulkan旨在提供更低的CPU開銷與更直接的GPU控制,其理念大致與Direct3D12和Mantle類似。Vulkan是一個開放標準,旨在提供更高的性能和更高效的CPU和GPU使用,相比于舊版的OpenGL和Direct3D 11 API,Vulkan提供了更低級別的API,更接近現代GPU的工作方式。Vulkan是由非營利性組織Khronos Group在GDC 2015上首次宣布的,最初被稱為“下一代OpenGL行動”或“glNext”,但在正式宣布Vulkan之后這些名字就沒有再使用了。Vulkan是基于AMD的Mantle API構建的,AMD將其Mantle API捐贈給Khronos Group,為其開發底層API提供了基礎,使其成為行業標準。
特性
OpenGL已經發展了25年以上,并不斷滿足行業需求,但是現已經逐漸滿足不了行業的需要。
GPU的可編程性越來越強,越來越多的平臺開始支持加速圖形,計算,視覺和深度學習。靈活性和可移植性變得很重要。
Vulcanlogo
性能上,OpenGL也不能充分發揮現代CPU多核多線程的性能優勢。
為了解決上述問題,行業對新一代GPUAPI的提出了更高的要求:
以下是Vulkan相對于上一代API的優勢:
英偉達指出,由于OpenGL的復雜度和維護難度比Vulkan低很多,在多數情況下也能提供理想的整體性能,現階段OpenGL仍是個很好的選擇。AMD表示,Vulkan支持Close-To-Metal控制的獨特能力可加快跨Windows和Linux的性能并且提高影像質量。現今無其他圖形API提供如此強大的操作系統兼容性、成像功能和硬件效率組合。例如,CPU中包含的集成GPU可與高端專用GPU結合使用,以略微提高性能。
Vulkan1.1
科納斯在SIGGRAPH2016上宣布Vulkan將支持自動多GPU功能,類似于Direct3D12所提供的功能,顯示驅動程序不再需要處理多個GPU的使用,相反,兩個或更多完全不同的GPU之間可以智能地分配工作負載。
科納斯于2018年3月7日發布了Vulkan1.1。它擴展了幾個核心功能,包括子集操作,例如多視圖、設備組、高級渲染和編輯操作程序跨流程API交互操作。這些核心功能還包括16位內存獲取高級計算,HLSL內存分布支持,視頻流的顯示,處理和編程,通過許多視頻編輯解碼器生成的YCbCr顏色格式化紋理的直接抽樣。同時,它還帶來了與DirectX 12的更好兼容性,顯式支持多GPU,光線跟蹤支持,為下一代GPU奠定了基礎。
vulkan1.2
2020年1月15日,科納斯組織發布了Vulkan 1.2,將23個已經通過驗證的擴展集成到基本Vulkan標準中[35],大部分用來幫助提升Vulkan與其他圖形API之間的兼容層性能。
計劃中的功能
科納斯在SIGGRAPH2016上宣布,Vulkan將提供類似于Direct3D12的多卡互聯功能。通過Vulkan,不同型號的顯卡也能協同工作,而無需NVIDIASLI或AMDCrossfire的支持。Vulkan多卡互聯功能允許API在多個不同的顯卡之間智能分配負載,例如,CPU上的集成顯卡與高端獨立顯卡協同工作,能夠略微提升顯示性能。
在OpenCL2.2規范發布時,科納斯宣布OpenCL將在未來融入Vulkan。
獨特的跨OS支持
Vulkan?能夠支持深入硬件底層的控制,為Windows? 7、Windows? 8.1、Windows? 10和Linux?帶來更快的性能和更高的影像質量。Vulkan?API還提供超高的OS兼容性、渲染特性和硬件效率。
自動兼容GCN架構
只有基于GCN架構的Radeon?顯卡擁有強大的“異步計算”功能,使顯卡得以并行處理3D幾何圖形與計算工作量。例如,當游戲需要同時計算復雜照明與渲染人物時,這種功能就找到了用武之地。這些任務并不需要在Radeon?顯卡上串行運行,因此可以節約時間、提升整體幀速率。設計Vulkan應用的游戲開發者可以在所有近期版本的Windows和Linux系統中利用這種獨特硬件特性。
兼容組件
AMDRadeonSoftwareCrimson版16.3及更新版本在Windows?7、Window?8.1、Windows?10和Linux?中支持基于次世代圖形核心架構的以下AMDAPU和Radeon?顯卡:
AMDRadeon?R9系列顯卡
AMDRadeon?R7系列顯卡
AMDRadeon?R5240顯卡
AMDRadeon?HD8000系列OEM系統顯卡(HD8570及更高級別)
AMDRadeon?HD8000M系列筆記本顯卡
AMDRadeon?HD7000系列顯卡(HD7730及更高級別)
AMDRadeon?HD7000M系列筆記本顯卡(HD7730M及更高級別)
AMDA4/A6/A8/A10-7000系列APU
AMDA6/A8/A10PRO-7000系列APU
AMDA6/A8/A10 Fusion/FX?8000系列APU
AMDE1/A4/A10Micro-6000系列APU
AMDE1/E2/A4/A6/A8-6000系列APU
AMDA4-1200、A4-1300和A6-1400系列APU
AMDE1-2000、E2-3000、A4-5000、A6-5000和A4Pro-3000系列APU
自Android 7.0 開發者預覽版開始,谷歌便在系統平臺中添加了對Vulkan的API支持。
參考資料 >
AMD 顯卡已準備好支持Vulkan圖形API.中國財經網.2018-12-14