关于cuda和MATLAB之间编写mexfunction的问题

最近在学习使用cuda加速MATLAB计算,在参考https://blog.csdn.net/seamanj/article/details/53068479?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522161818994016780262553145%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=161818994016780262553145&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~baidu_landing_v2~default-1-53068479.pc_search_result_no_baidu_js&utm_term=mxGPUGetNumberOfDimensions时,对里面的

这几句没有看懂,有好兄弟可以解释一下为什么要这样写吗?里面的N和-1是什么?为什么要/threadsPerBlock?感激不尽

N是数组中的元素个数,threadsPerBlock表示每个block有多少个threads(线程),blocksPerGrid表示每一个grid有多少个blocks,它们之间的关系大致是这样的。

cuda 结构

这个公式计算出来的就是需要的block数量,如果除不尽,取整就行。减1表示当N=0时,需要的block就是0。

您好,我是有问必答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632