cuda-streams

    0热度

    1回答

    我试图在一个内核函数中设置一个标志,并在另一个内核函数中读取它。基本上,我试图做到以下几点。 #include <iostream> #include <cuda.h> #include <cuda_runtime.h> #define FLAGCLEAR 0 #def

    0热度

    1回答

    我从头创建了CUDA的扫描算法,并尝试将其用于小于80,000字节的较小数据量。 创建了两个单独的实例,其中一个在可能的情况下使用流运行内核,另一个只在默认流中运行。 我观察到的是,对于这个数据大小范围,与其他方法相比,运行流需要更长的时间来完成任务。 当使用nvprofiler分析,什么观察到的是,对数据大小较小的量,在数据流上运行将不会单独kernals 提供并行没有流 随着流 但是当数据大小

    0热度

    1回答

    我目前正在通过计算两个向量之间的点积来学习CUDA流。这些成分是一个核函数,它接受向量x和y,并返回一个大小等于块数的向量,结果,其中每个块贡献自己的减少的总和。 我也有一台主机功能dot_gpu调用内核,并降低了矢量结果到最终点积值。 同步版本不只是这一点: // copy to device copy_to_device<double>(x_h, x_d, n); copy_to_devi

    3热度

    1回答

    我想使用流来并行执行在单独的设备数据阵列上工作的内核。数据在设备上分配并从以前的内核中填充。 我写了下面的程序,显示我目前无法达到目标。事实上,两个非默认流上的内核在它们各自的流中顺序执行。 在最新的Debian linux版本的2台英特尔机器上观察到相同的行为。其中一款采用CUDA 4.2的特斯拉C2075,另一款采用CUDA 5.0的Geforce 460GT。 Visual Profiler

    0热度

    2回答

    在CUDA文档中提到,如果我们使用2个流(stream0和stream1),就像这样:我们在stream0中复制数据,然后在stream0中启动第一个内核,然后我们从stream0中的设备恢复数据,然后那么在stream1中执行相同的操作,就像在“CUDA by example 2010”一书中提到的那样,该方法不提供并发执行,但是在“并发内核示例”中使用了此方法并提供并发执行。那么你能帮我理解这

    0热度

    1回答

    考虑以下情况: //thread 0 on device 0: cudaMemcpyAsync(Dst0, Src0, ..., stream0);//stream0 is on Device 0; ... //thread 1 on device 1: cudaMemcpyAsync(Dst1, Src1, ..., stream1);//stream1 is on Device 1;

    1热度

    1回答

    在CUDA中,流0如何与其他流关联?流0(默认流)是否与上下文中的其他流同时执行? 考虑下面的例子: cudaMemcpy(Dst, Src, sizeof(float)*datasize, cudaMemcpyHostToDevice);//stream 0; cudaStream_t stream1; /...creating stream1.../ somekernel<<<bl

    0热度

    3回答

    在我的系统中,使用蒸汽重叠数据传输与内核执行不起作用。 你好 我想在CUDA中使用重叠计算和数据传输,但我不能。 NVIDIA帮助文档说如果使用流,重叠计算和数据传输是可能的。 但我的系统没有工作 请帮帮我。 我的系统是低于 OS:微软Windows 7 64位 CUDA:版本5.0.7 Develp套件:视觉studion 2008 GPU:GTX 680 我得到一个配置文件查看是这样的 我没有

    0热度

    1回答

    我试图在CUDA上调用同一个内核(使用一个不同的输入参数)多次,但它只执行第一个内核并且不跟随其他内核调用。 假设输入阵列是 new_value0=[123.814935276; 234; 100; 166; 203.0866414; 383; 186; 338; 173.0984233]和输出的 new_value1=[186.221113; 391; 64; 235; 195.7454998;

    0热度

    1回答

    我正在研究CUDA,并对全局内存和CUDA流有疑问。 令: __device__ float Aux[32]; __global__ void kernel1(...) { [...] Aux[threadIdx.y] = 0; [...] } 所以,如果我上运行不同的流GPU这个内核。 Aux对所有流都一样吗?或者是所有流为Aux全局变量的Aux变量? 我无