Cuda Fortran设备变量初始化范围

时间:2017-05-04 19:09:06

标签: cuda fortran

如果我在子程序中创建一个要在设备上运行的变量,默认情况下它是本地范围吗?因此只能由每个单独的线程访问?

例如,在以下情况下,y是本地范围吗?

module exampleMod
contains
  attributes(global) subroutine exampleSub(x)
    implicit none
    real :: x
    real :: y
  end subroutine exampleSub 
end module exampleMod

我是否需要另外将其指定为" device"?

1 个答案:

答案 0 :(得分:1)

如果没有有效属性(例如shared),则在global子例程中声明的任何变量都将具有线程局部范围。