首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Fortran/Arrayfire标注问题

Fortran/Arrayfire标注问题
EN

Stack Overflow用户
提问于 2014-02-13 03:59:36
回答 1查看 144关注 0票数 0

我目前正在使用Arrayfire来加速一个Fortran CFD解算器。我们实现Fortran数组的方式意味着二维Fortran数组由(N,M,1)表示,而不仅仅是(N,M),允许可分配的数组处理二维或三维参数。但是,当其中一个被复制到设备上成为Arrayfire数组时,它似乎会自动获得维度(N,M),而不是(N,M,1)。当数组被复制回主机时,这会导致维度不匹配。

有什么方法可以改变这种行为吗?这将是相当棘手的重写大部分求解器,以不同的方式处理二维数组。

下面是一个显示此行为的测试用例:

代码语言:javascript
复制
program testcase
  use arrayfire
  implicit none
  real,dimension(4,4,1) :: a = 5.0
  real,dimension(:,:,:),allocatable :: b
  type(array) ARR1

  ARR1 = a
  b=ARR1

end program testcase

我也在Arrayfire论坛上问过这个问题,但我只是想知道是否有人遇到过这个问题。

编辑:这不再是问题,因为只有测试用例是使用2D数组执行的。

谢谢,哈里

EN

回答 1

Stack Overflow用户

发布于 2015-01-26 02:00:02

(在评论和编辑中回答。参见Question with no answers, but issue solved in the comments (or extended in chat) )

操作员写道:

这不再是问题,因为只有测试用例是使用2D数组执行的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21738339

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档