GPU亲和性(GPU核心亲和性)

3

有人可以告诉我为什么没有GPU亲和性(我的意思是执行单元亲和性)吗?我知道在Opencl规范1.2中,我们有一些称为设备分裂的内容,但据我所知,这只适用于CPU。

有人有更多信息吗?

谢谢


额...如果没有这样的东西,那么这个扩展是什么用途呢? - raina77ow
2
@raina77ow 这是为了允许一个(图形)程序与系统中的特定GPU相关联。我认为这个问题关注的是为什么在GPU上运行的(计算)代码不能显式地绑定到该GPU内的特定执行单元。 - Robert Crovella
4
首先,为什么想要特定执行单元的亲和力?在不对称或非均匀系统中,亲和力通常是可取的。从GPU计算程序员的角度来看,应该假设在GPU上运行的计算代码对资源具有对称、均匀的访问权限,而不管它在哪个特定的执行单元上。虽然在某些情况下这并不完全正确或者在某些情况下存在争议,但这种观点的原因是为了实现未来架构的可扩展性。应该鼓励程序员编写可以随着新GPU扩展的代码。 - Robert Crovella
谢谢您的回答。对我来说,我正在寻找亲和力,因为它可以给我提供对GPU的精确处理,并且我可以更准确地对硬件进行基准测试。 - AmineMs
同时在一个GPU上运行多个并行内核非常有用。 - AmineMs
4
当然,你不需要额外的结构来运行多个同时内核。如果(可能)将内核代码绑定到特定执行单元,你的总体性能可能会降低。GPU 硬件调度器将是更好的判断者。在 cl fission 扩展中列出的 3 个原因中,唯一对我来说不似循环的原因是第一个,为高优先级流量保留能力。然而,将设备细分可能不是实现这一目标的最佳方法。 - Robert Crovella
1个回答

0

我同意你的观点,但我很惊讶为什么这还没有实现!我们必须等待并观察吗? - AmineMs

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接