原谅可能是一个简单的问题,我的C ++生锈了。我正在使用CUD中的机器学习应用程序,它使用CUDA进行一些计算,我发现了以下代码行。
好奇如何解析这个问题。它看起来像一个模板化的方法,但我不理解三角括号'<<<<<这是怎么回事?
backward_scale_kernel<<<n, BLOCK>>>(x_norm, delta, batch, n, size, scale_updates);
对于上下文,“n”作为函数参数传入,我找不到BLOCK的定义或分配位置。
答案 0 :(得分:8)
我确信这已经有了很好的重复,但是你看到的base64
装饰器是一个CUDA运行时API nexus repository manager,它允许指定CUDA内核调用的执行参数
完整语法是
{{1}}
CUDA运行时API前端将此语法扩展为对编译器发出的样板文件的一对内联函数调用,以允许在运行时启动基础GPU内核。