gpt4 book ai didi

cuda - 内核构造和并行构造之间的区别

转载 作者:行者123 更新时间:2023-12-03 21:39:27 25 4
gpt4 key购买 nike

我研究了很多文章和 OpenACC 的手册,但我仍然不明白这两种结构的主要区别。

最佳答案

kernels如果您之前编写过 GPU(例如 CUDA)内核,则指令是更一般的情况,并且可能是您可能想到的情况。 kernels简单地指示编译器处理一段代码,并生成任意数量的“内核”,任意“维度”,按顺序执行,将特定代码段并行化/卸载到加速器。 parallel构造允许对编译器如何尝试在加速器上构建工作进行更细粒度的控制,例如通过指定并行化的特定维度。例如,作为 parallel 的一部分, worker 和帮派的数量通常是恒定的。指令(因为通常只隐含一个底层“内核”),但可能不在 kernels 上指令(因为它可能会转化为多个底层“内核”)。

this PGI article 中包含对这个特定问题的很好的处理。 .

引用文章摘要:
“OpenACC 内核和并行结构都试图解决相同的问题,识别循环并行性并将其映射到机器并行性。内核结构更加隐含,使编译器可以更自由地根据目标的要求查找和映射并行性加速器。并行构造更明确,需要程序员进行更多分析,以确定何时合法和合适。”

关于cuda - 内核构造和并行构造之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13460903/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com