研究文章

使用Coarrays遗留Fortran程序并行化:策略和案例研究

表1

现代化步骤:水平线显示部分排序。

一步 细节

1 通过CMake建立自动化的构建1并通过Git版本控制2

2 固定转换为免费通过“转换格式。麦特卡尔夫法郎”3
3 取代转到做而主循环终止。
4 执行类型/类/排名一致性参数和返回值的包装中所有程序模块
5 消除隐式类型。
6 取代数据语句与参数语句。
7 取代写访问常见的模块与模块变量。

8 用默认值初始化代替键盘输入。
9 建立自动化的、可扩展的测试精度和性能通过OOP和ct1

10 让所有程序主程序之外纯的。
11 消除实际或虚拟阵列形状不一致通过数组部分assumed-shape数组。
12 取代静态与动态分配内存分配。

13 用数组代替循环作业。
14 让大的并行性,展开的嵌套循环粒子设置。
15 平衡工作期间由扩散粒子分布在图像设置。
16 利用Fortran 2015集体过程来收集统计信息。
17 研究和优化性能与τ4

http://www.cmake.org/
2http://git-scm.com/。
ftp://ftp.numerical.rl.ac.uk/pub/MandR/convert.f90
4http://tau.uoregon.edu/