一种Fortran到CUDA C的转换方法

作者:刘颖辉; 迟学斌; 姜金荣; 张峰
来源:计算机系统应用, 2022, 31(05): 351-357.
DOI:10.15888/j.cnki.csa.008449

摘要

基于GPU的异构计算逐渐成为主流计算方法,但限于科学计算编程的历史发展,大量的数值计算软件仍以Fortran语言实现.为了提高计算速度,大量的软件需要移植为CUDA C,但人工实现程序移植是一项浩繁的工程.若能实现从Fortran到CUDA C的自动转换,可以极大的提高程序开发效率.本文设计了将Fortran转换为CUDA C的算法,并基于正则表达式和shell脚本实现了该算法,编写测试用例进行了验证.实验表明,该算法可靠稳定兼容性好,在大型程序的移植过程中,能够自动筛选并建立变量信息表,生成CUDA相关操作函数,且结果代码可读性较好,转化正确率达80%以上,有效减少了移植的工作量.

全文