Fortran で書かれたプロジェクトがあります。
これは PGI コンパイラを使用して実行できることはわかっていますが、ライセンスに行き詰まりたくありません。
プロジェクトで OpenACC を使用できるかどうかを確認しようとしています。こちらの手順を使用して gcc5.2 をインストールしました。
https://github.com/olcf/OLCFHack15
今、私はここに述べられていることと同様のことをしたいと思っています。
https://gcc.gnu.org/onlinedocs/libgomp/OpenACC-Library-Interoperability.html
より具体的には、セクション 8.3 に記載されています。gfortranを使用して正確に再現しようとしています。残念ながら、fortran でそれを行う方法がわかりません。例では、
d_X = acc_copyin(&h_X[0], N * sizeof (float));
これにより、d_X を直接使用できます。
s = cublasSaxpy(h, N, &alpha, d_X, 1, d_Y, 1);
しかし、fortran では、acc_copyin
は何も返しません。
では、Fortran でこのケースを再現するにはどうすればよいでしょうか。