腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
加速神经网络计算
、
、
、
我正在努力完成Nvidia的“
CUDA
Python加速计算基础”课程,并完成了重构一些代码的简单版本的任务,这些代码执行在神经网络
中
创建隐藏层所需的工作:fromnumba import
cuda
, vectorize weights =
cuda
.to_device(weights) normalized = <
浏览 19
提问于2022-09-19
得票数 1
2
回答
在
CUDA
内核
中
声明变量
假设在
CUDA
内核
中
声明了一个新变量,然后
在
多个
线程
中使用它,如下所示:int i = blockIdx.x* blockDim.x + threadIdx.x;a = delt[i] + deltb[i];}int threads= 200; uint3 blocks = make_ui
浏览 3
提问于2013-07-29
得票数 5
回答已采纳
2
回答
CUDA
运行时错误:未指定的启动失败&超出范围的共享或
本地
地址
、
我是
在
1 1GB全局
内存
的GPU上运行这个程序的。Host Frame:/usr/lib/libcuda.so (cuLaunchKernel + 0x3dc) [0xc9edc] ========= Host Frame:/usr/local/
cuda
是因为设备上的全局
内存
不足吗?有没有办法返回设备上的
内存
使用情况?
在
源代码
中
,checkDevice.cu是
在
grid::SetSub
浏览 0
提问于2013-03-13
得票数 0
回答已采纳
1
回答
Numbapro
cuda
python
在
gpu
线程
寄存器
中
定义
数组
、
、
、
、
我知道如何使用np.array或np.zeros或np.empty(shape, dtype)
在
主机
中
创建全局设备函数,然后使用
cuda
.to_device复制。另外,还可以将共享
数组
声明为
cuda
.shared.array(shape, dtype)。 但是如何在gpu函数
中
特定
线程
的寄存器
中
创建一个恒定大小的
数组
。我试过
cuda
.device_array或np.array,但都没有用。我只想在
线程</em
浏览 5
提问于2014-11-28
得票数 0
回答已采纳
1
回答
无法使用
CUDA
+ MATLAB + Visual Studio检查全局
内存
、
、
、
、
我目前正在从MEX文件中使用
CUDA
在
MATLAB
中
编写代码。我
在
本地
(x64)和
CUDA
上将MATLAB进程附加到Visual Studio,但是当我在
内核
定义
中
的断点处停止时,我无法检查全局
内存
中
的值,即使我可以看到
线程
(
本地
)
内存
中
定义的任何其他变量。如果不是,
在
调试
内核
时,我可以做些什么来检查全局<em
浏览 3
提问于2016-01-28
得票数 1
1
回答
使用numba
cuda
注册
数组
、
在
numba
cuda
内核
中
,我知道我们可以定义
本地
数组
和共享
数组
。此外,
内核
中
的所有变量赋值都会被分配给特定
线程
的寄存器。可以使用numba
cuda
声明一个寄存器
数组
吗?
在
CUDA
C
内核
中会用到的类似于下面的内容? register float accumulators[32];
浏览 8
提问于2019-05-13
得票数 0
回答已采纳
1
回答
Opencl
内核
本地
内存
OpenCL提供的
本地
内存
类似于
cuda
中
的共享
内存
。
在
cuda
中
,我们必须使用带有共享
内存
的易失性,因为如果您不将共享
数组
声明为易失性,那么编译器可以通过
在
寄存器
中
定位它们来自由地优化共享
内存
中
的位置。但如果
线程
之间相互通信,这将是一个问题。我的问题是,我们是否也必须在opencl
内核
中
遵循
浏览 1
提问于2019-07-30
得票数 1
1
回答
CUDA
线程
局部
数组
我正在编写一个
CUDA
内核
,它需要每个
线程
维护一个小的关联
数组
。我所说的小,我指的是最多8个元素的最坏情况,以及预期的两个左右的条目数量;所以没什么特别的;只有一个键
数组
和一个值
数组
,索引和插入是通过在这些
数组
上进行循环的方式进行的。现在我通过
线程
本地
内存
来实现这一点;这就是identifiersize;其中size是一个编译时间常数。现在我听说,
在
某些情况下,这个
内存
存储
浏览 2
提问于2012-09-20
得票数 1
回答已采纳
1
回答
内核
参数数据驻留在哪里?
、
、
、
与标题一样,
在
cuda
程序
中
,
内核
参数在
内核
启动后、
本地
内存
或GPU的全局
内存
中
驻留在哪里?例如,
在
cuda
程序的LLVM IR
中
:%0 = alloca int那么,在这种情况下,%0指向哪里
本地
内存
还是全局
内存
? 此外,我看到
浏览 1
提问于2015-09-28
得票数 3
回答已采纳
2
回答
如果同时从多个pthread调用
CUDA
内核
,会发生什么情况?
、
我有一个
CUDA
内核
来完成我的繁重工作,但我也有一些繁重的工作需要在CPU
中
完成(同一
数组
的两个位置的计算),我无法
在
CUDA
中
编写(因为
CUDA
线程
不同步,所以我需要在一个
数组
的位置X上执行一个繁重的工作,然后执行zx = yx - yx - 1,其中y是
CUDA
内核
的
数组
结果,其中每个
线程
都在这个
数组
的一个位置上工作,z是<
浏览 3
提问于2012-10-25
得票数 3
回答已采纳
3
回答
在
CUDA
内核
中
,如何在“
本地
线程
内存
”
中
存储
数组
?
、
、
、
我正在尝试用
CUDA
开发一个小程序,但由于它很慢,我做了一些测试并搜索了一下。我发现,虽然单变量默认
存储
在
本地
线程
内存
中
,但
数组
通常不是,我想这就是为什么它需要这么多时间来执行的原因。现在我在想:既然
本地
线程
内存
至少应该是16KB,而且我的
数组
就像52个字符一样长,有没有办法(语法请:)将它们
存储
在
本地
内存
<e
浏览 127
提问于2012-04-24
得票数 31
1
回答
我能否确保NVCC已设法将
数组
放入寄存器?
、
、
、
带有一些
本地
的固定大小
数组
的
CUDA
内核
可能会被编译,使得
数组
驻留在
线程
的“
本地
内存
”
中
,或者-如果NVCC可以在编译时确定每个
数组
访问的位置,并且有足够的寄存器可用-该
数组
可能会被分解,其元素驻留在寄存器
中
是否可以通过代码或作为构建过程的一部分,检查或确保特定的
数组
或
内核
中
的所有局部
数组
都已装入寄存器?有没有
浏览 76
提问于2018-06-04
得票数 0
1
回答
对于GPU上的非原子写入的弱保证?
、
、
、
OpenCL和
CUDA
已经包括了几年的原子操作(虽然显然不是每个
CUDA
或OpenCL设备都支持这些操作)。但是-我的问题是,由于非原子的写作,“与种族一起生活”的可能性。假设一个网格
中
的多个
线程
都写入全局
内存
中
的相同位置。我们是否保证,当
内核
执行结束时,其中一个写操作的结果将出现在该位置,而不是一些垃圾?这个问题的相关参数(选择任意组合,编辑,除了已经得到答案的nVIDIA+
CUDA
):
内存
空间:仅限于全局
内存</e
浏览 0
提问于2016-07-02
得票数 5
4
回答
CUDA
共享
内存
-从
内核
减少总和
我有一个处理单个数据元素的
内核
。每个数据元素产生6个中间结果(浮点数)。我的代码块由1024个
线程
组成。这6个中间结果由每个
线程
存储
在
共享
内存
中
(6个浮点
数组
)。我没有足够的全局
内存
将这6个浮点
数组
保存到全局
内存
中
,然后从主机代码
中
运行一个来自推力或任何其他库的缩减。
在
共享
内存
中
的
数组
上,有
浏览 5
提问于2013-09-18
得票数 2
3
回答
openCL
中
的多维
内核
发布不起作用
、
、
我正试图
在
以下三个维度
中
启动openCL:size_t localWorkSize[2] = {32, 32};globalWorkSize, localWorkSize,但是只有32个
线程
被启动还有什么方法可以找到
Cuda
n openCL
线程
的等价性? 有人能帮忙吗。谢
浏览 0
提问于2019-04-05
得票数 1
回答已采纳
2
回答
如何管理
CUDA
内存
?
、
、
(从其他人的帖子
中
,我认为问题与
内存
碎片有关)我试图理解这个问题,并意识到我有几个有关
CUDA
内存
管理的问题。
在
CUDA
中
是否存在虚拟
内存
的概念?如果只允许一个
内核
在
CUDA
上同时运行,在其终止后,它所使用或分配的所有
内存
会被释放吗?如果没有,这些
内存
何时释放?如果允许多个
内核
在
CUDA
上运行,如何确保它们使
浏览 4
提问于2011-12-30
得票数 27
回答已采纳
1
回答
使用Python和numba的
CUDA
内核
中
的
数组
、
、
(GPU) 回到第二步,重复,直到满足某一条件。大多数示例都非常具有说明性,但它们似乎都是这样工作的:
在
CPU上执行代码的主要部分,并且只
在
GPU上执行中间矩阵乘法等等。特别是,主机通常知道
内核
将要使用的所有变量。对我来说,反之亦然,我希望
在
GPU上执行代码的主要部分,
在
CPU本身上只执行一小部分步骤。我的主人根本不知道我的个别
线程
里发生了什么。它只管理标量列表以及
浏览 3
提问于2015-10-30
得票数 1
回答已采纳
1
回答
cuda
4.0如何支持递归
我想知道,
cuda
4.0是否支持使用
本地
内存
或共享
内存
的递归?我必须自己使用全局
内存
来维护堆栈,因为系统级别的递归不能支持我的程序(可能是太多级别的递归)。当递归变得更深时,
线程
就停止工作。所以我真的想知道
在
CUDA
中
默认的递归是如何工作的,它是否使用共享
内存
的
本地
内存
?谢谢!
浏览 2
提问于2013-09-25
得票数 4
1
回答
在
CUDA
中使用寄存器
存储
器
我有一些关于
cuda
寄存器
内存
的问题。2)如果我使用设备函数,那么我
在
设备函数中使用的寄存器在其执行后会发生什么变化?它们是否可用于调用
内核
执行或其他设备功能? 3) nvcc如何优化注册使用?请分享
内存
密集型
内核
的重要w.r.t优化要点。PS:我有一个复杂的算法来移植到
浏览 2
提问于2016-10-21
得票数 4
回答已采纳
2
回答
是否合并了
本地
内存
访问?
、
假设,我
在
CUDA
内核
函数
中
为每个
线程
声明了一个局部变量:另外,假设声明的变量被编译器放到一个
本地
内存
中
(就我所知,它只对一个
线程
可见,与全局
内存
相同)。我的问题是,
在
阅读f时,对它的访问会被合并吗?
浏览 2
提问于2011-09-06
得票数 2
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
一文揭开 NVIDIA CUDA 神秘面纱
如何在Julia编程中实现GPU加速
从头开始进行CUDA编程:原子指令和互斥锁
从头开始进行CUDA编程:线程间协作的常见技术
NVIDIA全系列GPU技术路线演进分析
热门
标签
更多标签
云服务器
ICP备案
对象存储
腾讯会议
云直播
活动推荐
运营活动
广告
关闭
领券