gpt4 book ai didi

cudaMemcpy() 与 cudaMemcpyFromSymbol()

转载 作者:行者123 更新时间:2023-12-02 18:13:51 26 4
gpt4 key购买 nike

我试图找出为什么 cudaMemcpyFromSymbol() 存在。似乎“symbol” func 可以做的所有事情,nonSymbol cmd 也可以做。

symbol 函数似乎可以轻松移动数组或索引的一部分,但这也可以使用 nonSymbol 函数轻松完成。我怀疑非符号方法会运行得更快,因为不需要符号查找。 (尚不清楚符号查找计算是在编译时还是运行时完成。)

为什么我要使用 cudaMemcpyFromSymbol()cudaMemcpy()?

最佳答案

cudaMemcpyFromSymbol 是从设备内存中静态定义的任何变量进行复制的规范方法。

cudaMemcpy 不能直接用于复制静态定义的设备变量或从静态定义的设备变量复制,因为它需要设备指针,而运行时主机代码并不知道该指针。因此,需要一个可以查询设备上下文符号表的 API 调用。有两种选择:cudaMemcpyFromSymbol(在一次操作中执行符号查找和复制)或cudaGetSymbolAddress(返回可传递给cudaMemcpy的地址) >。如果您只想执行一份副本,则前者可能更有效;如果您想在主机代码中多次使用该地址,则后者可能更有效。

关于cudaMemcpy() 与 cudaMemcpyFromSymbol(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14817186/

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