英伟达在高性能计算领域的主导地位很大程度上依赖基于CUDA的解决方案,为此AMD通过一个名为GPUFORT的项目提供了代码。据itsfoss介绍,该项目属于Radeon Open eCosystem(ROCm),以帮助大型CUDA代码库可以在英伟达生态系统之外工作。
英伟达的解决方案极大地限制了开发人员寻找替代方案,影响迁移工作,AMD很长时间内一直在努力,帮助开发人员将尽可能多的CUDA特定代码迁移到Radeon开源计算堆栈支持的接口。AMD在此前的项目里同时使用了C和C++代码,GPUFORT不同之处在于将基于基于OpenACC的CUDA Fortran和Fortan代码转换为OpenMP 4.5+,以便在GPU或Fortran + HIP C++ 代码上执行。
据介绍,GPUFORT不是编译器本身,而是执行源到源转换的Python代码库。同时GPUFORT不是一个完整的自动化解决方案,需要审查和手动更正基于CUDA的编码生成的内容。在当前状态下,仅用于将高性能计算(HPC)应用程序转换为AMD ROCm生态系统支持的兼容代码格式。AMD的工程师承认,目前还在分析代码的构成,以提高编译的准确性,暂时没有实现完整的OpenACC标准。
【来源:超能网】