gpt4 book ai didi

cuda - 为什么我们必须传递一个指向 cudaMalloc 的指针

转载 作者:行者123 更新时间:2023-12-01 23:11:28 49 4
gpt4 key购买 nike

以下代码广泛用于GPU全局内存分配:

float *M;
cudaMalloc((void**)&M,size);

我想知道为什么我们必须将指针传递给 cudaMalloc,以及为什么它的设计不是这样的:

float *M;
cudaMalloc((void*)M,size);

感谢您的简单描述!

最佳答案

cudaMalloc需要将指针的值写入M(而不是*M),因此M必须通过引用传递。

另一种方法是以经典的 malloc 方式返回指针。然而,与 malloc 不同的是,cudaMalloc 返回错误状态,就像所有 CUDA 运行时函数一样。

关于cuda - 为什么我们必须传递一个指向 cudaMalloc 的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9813603/

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