当前位置:网站首页>Vulkan is not a "panacea"“
Vulkan is not a "panacea"“
2022-07-03 00:43:00 【I haven't had quiet memories for a long time】
The previous articles , We introduced a new generation of graphics API-Vulkan Advantages and characteristics of . Because of its fine control and performance characteristics , Some little friends have raised questions “ Whether the existing OpenGL The project moved to Vulkan On ?”,“Vulkan How is it that the effect is not as good as expected ?”. Today, let's talk about this topic .
The first thing I want to say is Vulkan Not all rendering problems can be solved by replacing graphics API It can be easily solved , There may even be negative benefits and costs .
Scene one Business performance problems
The problems of their own business scenarios have not been effectively solved , It's a drop in the bucket just to rely on the promotion of the bottom . All ideas to solve performance are to measure first , Then optimize the existing problems of the project according to the measurement results , Then through the underlying foundation and general capabilities . And most of the scenes are their own problems that have not been well solved .
Scene two Problems in non rendered scenes
The current performance bottleneck is not rendering related , It may be data, business logic or even network .
Scene three Low latency and less jamming
If your application is concerned about tiny catons or frame rate jitters ,Vulkan You can explicitly control when time-consuming operations occur during scene rendering . This benefits from Vulkan Fine control and design philosophy , Compared with OpenGL Drivers have more advantages in managing state and resources through prediction .
Scene 4 Multithreaded rendering
If the bottleneck of program performance is CPU Graphics related parts on , that Vulkan There is likely to be an opportunity to improve its performance , because Vulkan It naturally supports multithreading , Can give full play to CPU The ability of , Compared with OpenGL Single threaded rendering of has more advantages . Or for the performance of a platform that wants to squeeze out relatively limited computing resources , that Vulkan Allowing the program to directly allocate and manage all resources may also help performance .
Scene five Performance bottleneck GPU
This is a scene that is easy to cause controversy and misunderstanding , I personally understand the essence of graphics API Is with the GPU A specification that drives communication ,GPU The driver is CPU And GPU The medium of communication , All of these ( graphics API、 drive ) It's all implemented in CPU End , Instead of GPU End .
therefore , Different graphics API It cannot be directly promoted GPU Own work efficiency and improve its load , Can only improve CPU End and GPU Efficiency of end-to-end communication , Collaborative approach .
Although it cannot directly affect GPU Performance of , But different graphics API Yes GPU The granularity of the control ability is different ,Vulkan Far ratio OpenGL Handled carefully , Can also be used ( customized ) added GPU End function , So in some scenes, replace with Vulkan It can provide us with more control means , Is likely to help improve GPU Efficiency of execution .
Scene six Ecology and cost
Whether it's technology ecology or human cost ,Vulkan Are relatively at a disadvantage , So we must consider this when doing project migration , You can't follow blindly .
Of course, there are thousands of business scenarios , Developers need to consider many aspects to seek the greatest ROI.
attach :
边栏推荐
- Hdu3507 (slope DP entry)
- Rust string slicing, structs, and enumeration classes
- 1.12 - Instructions
- Logback configuration file
- 程序分析与优化 - 9 附录 XLA的缓冲区指派
- Graduation summary
- [shutter] image component (load network pictures | load static pictures | load local pictures | path | provider plug-in)
- Shell 实现文件基本操作(切割、排序、去重)
- Introduction of UART, RS232, RS485, I2C and SPI
- Multiprocess programming (I): basic concepts
猜你喜欢

Automated defect analysis in electron microscopic images-论文阅读笔记

百数不断创新,打造自由的低代码办公工具

Use Jenkins II job

Vulkan-性能及精细化

Unity learns from spaceshooter to record the difference between fixedupdate and update in unity for the second time

Hundreds of continuous innovation to create free low code office tools
![[shutter] image component (the placeholder | transparent_image transparent image plug-in is loaded into the memory)](/img/73/19e2e0fc5ea6f05e34584ba40a452d.jpg)
[shutter] image component (the placeholder | transparent_image transparent image plug-in is loaded into the memory)

redis21道经典面试题,极限拉扯面试官

【AutoSAR 九 C/S原理架构】

UART、RS232、RS485、I2C和SPI的介绍
随机推荐
NC24840 [USACO 2009 Mar S]Look Up
利亚德:Micro LED 产品消费端首先针对 100 英寸以上电视,现阶段进入更小尺寸还有难度
How to find out the currently running version of Solr- How do I find out version of currently running Solr?
Multiprocess programming (V): semaphores
Kubernetes simple introduction to writing YML
There is an unknown problem in inserting data into the database
ftrace工具的介绍及使用
【雅思阅读】王希伟阅读P2(阅读填空)
【JetCache】JetCache的配置说明和注解属性说明
About the practice topic of screen related to unity screen, unity moves around a certain point inside
Preview word documents online
Briefly talk about other uses of operation and maintenance monitoring
kubernetes编写yml简单入门
mm中的GAN模型架构
How SQLSEVER removes data with duplicate IDS
【AutoSAR 十三 NVM】
[IELTS reading] Wang Xiwei reading P1 (reading judgment question)
【AutoSAR 十 IO架构】
【AutoSAR 五 方法论】
lex && yacc && bison && flex 配置的問題