gpt4 book ai didi

c++ - CUDA - 如果我选择了太多 block 怎么办?

转载 作者:可可西里 更新时间:2023-11-01 16:31:44 25 4
gpt4 key购买 nike

我仍然对这些未知大小的矩阵很生气,每个维度可能在 10-20.000 之间变化。

我正在查看 CUDA SDK 并想知道:如果我选择的 block 数太高怎么办?

类似于在 X 和 Y 维度上由 9999 x 9999 block 组成的网格,如果我的硬件具有无法容纳所有这些 block 的 SM,内核是否会出现问题或者性能会崩溃?

我不知道如何在 block /线程中标注可能变化很大的东西。我正在考虑使用我的硬件支持的最大块数,然后使它们内部的线程在所有矩阵中工作,这是正确的方法吗?

最佳答案

线程 block 与核心没有一对一的映射。 block 在可用时被安排到核心,这意味着您可以请求任意数量(可能达到限制)。请求大量 block 只会减慢系统速度,因为它会向内核加载和卸载不执行任何操作的线程 block 。

您可以在运行时指定网格和 block 的尺寸。

编辑:这是文档中对网格和 block 尺寸的限制。

enter image description here

关于c++ - CUDA - 如果我选择了太多 block 怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5476152/

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