You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C语言函数声明中的__global__说明符是什么含义?

global 说明符含义说明

__global__并非标准C语言的关键字,是NVIDIA CUDA并行计算平台扩展的执行空间说明符,作用是标记函数的调用端、执行端属性,具体含义如下:

  • 被__global__标记的函数叫做核函数(Kernel Function),是GPU并行计算的入口函数
  • 调用规则:只能从主机端(CPU侧代码)发起调用,实际运行在设备端(GPU侧)
  • 调用时必须搭配CUDA特有的执行配置语法,格式为函数名<<<网格大小, 线程块大小>>>(参数列表),三尖括号内的参数用来指定GPU上启动多少线程并行执行该核函数
  • 语法要求:被__global__标记的函数返回值必须为void,你给出的示例声明完全符合该要求
  • 和另外两个CUDA常用执行空间说明符的区别:
    • __host__:默认缺省的属性,标记的函数在CPU侧编译、CPU侧调用执行,和普通C函数无区别
    • __device__:标记的函数只能从GPU侧的其他__global__或__device__函数中调用,运行在GPU侧

你给出的示例中的square是典型的向量平方运算核函数,参数d_in、d_out均为GPU显存空间的指针,分别对应输入数组和输出数组的显存地址。

内容的提问来源于stack exchange,提问作者marti

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 19:54:02