繁体   English   中英

Vulkan命令执行顺序

[英]Vulkan command execution order

引用Vulkan 1.0规范文档,第5章(命令缓冲区)第4段,

“除非另有说明,否则没有明确同步,通过命令缓冲区提交给队列的各种命令可以相对于彼此以任意顺序执行,和/或同时执行”

在第2.1.1章(队列操作)的第1段中,它也说明了

“...提交到单个队列的命令缓冲区按照它们提交的顺序播放,每个缓冲区内的命令按照它们记录的顺序播放”

第5章中的“任意顺序”是否意味着无序? 然后,对于第2.1.1章“按照提交顺序播放”的陈述,这不是冲突吗? 或者命令只是按顺序“回放”但是“执行”无序?

第2.1.1节定义了命令的API排序:提交到队列中的命令缓冲区的顺序,以及命令缓冲区中命令的顺序(以及命令中基元的顺序)。

第5章说, 除非某些文本另有说明,否则A​​PI排序并不意味着执行顺序。 第2.1.1章包含了特定的例外情况(混合,深度测试),第6章介绍了可以根据2.1.1中定义的API排序强制执行顺序的执行依赖性。 但是在明确声明排序的情况之外,API排序并不禁止队列在执行方面做任何其他想要的事情。

话虽如此,该规范解释得很糟糕。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM