- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
来自与 vkCmdPipelineBarrier 相关的规范:
If no memory barriers are specified, then the first access scope includes no accesses.
这对于第一个和第二个访问范围都有说明,所以如果我理解正确的话:
(1) 没有内存屏障的管道屏障导致所有 后续命令在目标阶段等待,直到所有 命令完成源阶段。这是适用于所有命令的硬约束。
(2) 带有内存屏障的管道屏障减轻了同步约束,因此只有处理该内存的后续命令才会在目标阶段(在相关访问操作中)等待,直到仅在前面处理该内存的命令完成源阶段(在相关访问操作中)。
是否正确?
最佳答案
(1)
是的,除了自由应用好像原则。如果您无法仅通过输出找到差异,则允许驱动程序违反它(例如,如果唯一的差异是性能)。
它适用于所有命令,如果它们是 Action 命令,是同一个队列,在这样的阶段确实处理了一些东西,等等……
规范调用此执行依赖。
(2)
这称为内存依赖。它是执行依赖 的超集。它不会削弱它。它使它更加严格。这意味着除了 (1) 之外,所有由内存依赖参数定义的副作用(缓存)都必须被刷新\无效(或者任何特定的设备架构需要做的,以及它的具体命名法)。
PS:虽然我不是 110% 确定 VK_KHR_synchronization2
。有一些尝试“简化”同步,但这样做失去了一些直觉。我认为虽然这与您遍历所有内存屏障结构并将所有阶段收集在一起是一样的,但它仍然像 (1) 一样工作。
关于vulkan - vulkan 管道内存屏障是否减轻了与没有内存屏障的管道屏障相关的同步约束?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68058931/
我有一个用于识别 Windows arch 的开关代码:ia32 和 x64,因此我的应用程序文件夹中有两个 pepflashplayer.dll,但这两个文件的重量为 45.8mb(应用程序的最终重
我从 Fortran 的角度写了这个问题,但这些问题并不仅限于 Fortran(因此有 c++ 标签)。 我有两个问题。我读到在 OpenMP 并行循环的开始和停止时存在延迟 here .我的问题是:
这个问题在这里已经有了答案: Programmatically Lighten or Darken a hex color (or rgb, and blend colors) (20 个答案) 关
什么是在网络服务器和应用服务器之间应用缓存层的好工具。 基本要求: 应用程序服务器需要一种方法来从缓存中删除项目并将项目放入缓存中并指定到期日期。 网络服务器需要一种方法以非常轻量级、快速的方式从缓存
我在一个项目上使用 git 已经有一段时间了,是时候清理一下了。 我有一些源代码文件已经变得很大,应该拆分成多个文件。我还想将一些功能从一个文件移动到一个更合适的文件。 由于 git 跟踪我的所有更改
我刚刚在读这篇文章 HERE ,作者是这样说的: Also try to keep your HTML structure as simple as possible. Remember that t
微软添加了一个方便的/Qspectre到他们的 MSVC 编译器(尽管目前似乎只是(试图)减轻 Spectre v1)他们将随着时间的推移进行更新。从用户的角度来看,这非常好,只需启用该标志,您就可以
我喜欢专家。我什至非常非常喜欢它。自从我从 Ant 切换到它以来,我节省了大量的工作时间、构建构建文件、管理依赖项等,并在我的源代码控制存储库中节省了大量空间。 问题是 maven 文件太冗长了。并不
我是一名优秀的程序员,十分优秀!