C_and_CPP 板


LINE

开发平台(Platform): (Ex: Win10, Linux, ...) Linux上安装CUDA环境 (CUDA版本为8.0 运算能力为3.7)(Tesla K80) 编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出) NVCC 额外使用到的函数库(Library Used): (Ex: OpenGL, ...) 问题(Question): 硬体方面: 1.我执行deviceQuery侦测到2个device(device0:Tesla K80, device1:K80),估狗发现K80 是由两个GK210核心所组成,那我侦测到的device是指有两个K80(4个GK210)的意思吗? 还是侦测到的两个device其实就是GK210? 2.13个SMX,总共有2496个cores,所以我一次可以同时做运算的数量是否为2496个threads? 软体方面: 我写了一个64 * 64的矩阵乘法,我想测试不同的block & thread数量去做运算,哪个执 行时间会比较短,我试了两种block的配置(thread数量刚好为4096,一个thread执行一 个输出矩阵的一个element)。 (1)dim3 dimBlock(32, 32); dim3 dimGrid(2, 2); 这个配置是以下附的程式码配置,执行结果是正常的。 (2)dim3 dimBlock(4, 128); dim3 dimGrid(1, 8); 换成这样配置编译之後,结果却只有大约三分之一是正常的值,其余却都是0 ,我的threadIdx.x & threadIdx.y都是由0-1023,请问这是发生了什麽错误吗? 另外,我想知道执行运算时thread做了什麽事情,每个thread里面装的是什麽东西呢,是 我输入的资料吗?还是加跟乘这两个指令呢? 喂入的资料(Input): 预期的正确结果(Expected Output): 错误结果(Wrong Output): 程式码(Code):(请善用置底文网页, 记得排版) #include <stdio.h> #include <stdlib.h> #include <time.h> #include <cuda_runtime.h> #include "cuda_error.h" #define N 64 __global__ void MatrixMulKernel(float* C, float* A, float* B, int n) { float Pvalue = 0; int tx = threadIdx.x + blockIdx.x * blockDim.x; int ty = threadIdx.y + blockIdx.y * blockDim.y; for(int k = 0; k < n; k++) { float Aelement = A[ty * n + k]; float Belement = B[k * n + tx]; Pvalue += Aelement * Belement; } C[ty * n + tx] = Pvalue; __syncthreads(); } int main() { float A[N][N]; float B[N][N]; float C[N][N]; size_t size = N * N * sizeof(float); int i, j; float *gA, *gB, *gC; for(i = 0; i < N; i++) { for(j = 0; j < N; j++) { A[i][j] = (float) (1 + ( rand() % 9 )); B[i][j] = (float) (1 + ( rand() % 9 )); } } /*allocate memory*/ cudaMalloc(&gA, size); cudaMalloc(&gB, size); cudaMalloc(&gC, size); puts(cudaGetErrorString(cudaGetLastError())); cudaMemcpy(gA, A, size, cudaMemcpyHostToDevice); cudaMemcpy(gB, B, size, cudaMemcpyHostToDevice); puts(cudaGetErrorString(cudaGetLastError())); float etime; cudaEvent_t start, stop; cudaEventCreate(&start, cudaEventDefault); cudaEventCreate(&stop, cudaEventDefault); dim3 dimBlock( 32, 32 ); dim3 dimGrid( 2, 2 ); cudaEventRecord(start); /*call GPU kernel*/ MatrixMulKernel<<<dimGrid,dimBlock>>>(gC, gA, gB, N); cudaEventRecord(stop); cudaEventSynchronize(stop); cudaEventElapsedTime(&etime, start, stop); printf("%f ms\n", etime); puts(cudaGetErrorString(cudaGetLastError())); cudaMemcpy(C, gC, size, cudaMemcpyDeviceToHost); puts(cudaGetErrorString(cudaGetLastError())); cudaFree(gA); cudaFree(gB); cudaFree(gC); return 0; } 补充说明(Supplement): 请版上的各位先进指导一下我,谢谢。另外,手机排版请见谅。 --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 59.115.193.128
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1480241075.A.D3D.html
1F:→ opl164: 第二个状况的tx,ty 你可以印出来看看跟的一个会不一样吧 11/28 12:03
2F:推 a1u1usul3: 硬体1应该是两个GK210的意思 11/28 14:31
3F:→ a1u1usul3: 硬体2可以说是对的,精确来说是78个wrap吧 11/28 14:32
4F:→ a1u1usul3: 软体问题可以用cuda-memcheck跑看看,是不是access到奇 11/28 14:34
5F:→ a1u1usul3: 怪的地方去了 11/28 14:34
6F:→ arXiv: 第二点错了程式跟着错,请先读文件cuda-c-programming-guide 11/29 00:09







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:BabyMother站内搜寻

TOP