HPP_UIUC_MP2: basic matrix multiplication-----BlockDIM!

本文介绍了一个在CUDA编程中遇到的问题:当DimBlock尺寸设置过大时,会导致输出的C矩阵全为零。通过调整DimBlock的大小到合适的范围(例如8x8),可以有效解决该问题并获得正确的计算结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这次作业有个地方搞的我输出的C矩阵一直都是全000000.


然后发现原来是DimBlock设置的太大了。

//@@ Initialize the grid and block dimensions here
    dim3 DimBlock(8, 8, 1); // if the threads each block is too large, say
			    // 32, then the C output will be all 000000000
	                    // so fail!!!!
    dim3 DimGrid((numCColumns - 1) / DimBlock.x + 1,
                 (numCRows - 1) / DimBlock.y + 1, 1);

这样就可以得到正确结果了。

"level":"Trace",
"message":"The dimensions of B are 64 x 64",
"file":"F:/1MOOC_SourceCode/HPP/libwb/skel/mp2.cu",
"function":"main",
"line":65,
"time":25975425239252
}]
}
,
"solution_exists": true,
"solution":{
"correctq": true,
"message": "Solution is correct."
}
}

F:\1MOOC_SourceCode\HPP\libwb\build\Debug>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值