函数执行空间限定符
函数执行空间限定符(Function Execution Space Qualifier)指示函数是在Host侧执行还是在Device侧执行,以及能被调用的空间范围。
函数执行空间限定符 |
执行空间 |
说明 |
|---|---|---|
__host__ |
host |
只能被Host侧函数调用,无函数执行空间限定符定义的函数,默认是host函数。 |
__global__ |
device |
修饰的函数是核函数入口,只能被Host侧函数调用,函数返回类型必须为void,不能是class、struct或者union的成员函数,不支持递归调用且对__global__函数的调用是异步的。 |
__aicore__ |
device |
修饰的函数只能在Device侧执行,只能被__global__函数,或者其他__aicore__函数调用。 |
constexpr __aicore__ |
device |
修饰的函数只能被Device侧函数调用。 |
函数调用关系如下图所示:

父主题: 扩展语法