主题:求教!
liuqc
[专家分:0] 发布于 2011-01-21 16:23:00
学FORTRAN一年有余,,从WINDOWS入门,到LINUX上熟练GFORTRAN,,,程序编了一些,(文章没有,一直在验证人家的模拟,呵呵),,,现在发现程序编来编去都很基础,东西越加越多,运算时间也越来越长,,,现在想 把FORTRAN从基础再提升一下,多优化程序结构,语法,之类,,,并想研究下并行运算的问题(GFORTRAN+MPI,实验室的8核服务器闲也是闲着),但不知道从哪开始,,,所以想求教
1、fortran 有没有高级点的教程,讲解提高程序效率之类的教程或习惯
2、关于并行的学习教程,趁现在有时间,想把程序这块学的更精通一点,为以后节省时间
3、谢谢!
回复列表 (共2个回复)
沙发
helo_aBiNg [专家分:480] 发布于 2011-01-21 18:16:00
ifort 有 -parallel 参数,需要加 -O3 额外优化。8 核 cpu 计算时应该是满负载的。据我的实验,实际计算时间减少 1/3 左右,当然这与程序规模和程序写法有关。
板凳
yeg001 [专家分:14390] 发布于 2011-01-22 13:31:00
如果不是夸计算机的话建议学习openmp, 效率和内存节省优于mpi.
不考虑并行而提高效率还是在算法上下手比较有意思.
最近我在优化算法, 我主要是做矩阵那块, 可以看看这本书 <矩阵计算> 这本书. 前面讲到内存利用部分其实做其他计算也是值得看看的.
http://www.amazon.cn/gp/product/B002DW9ZTA/ref=s9_qpp_gw_p14_ir02?pf_rd_m=A1AJ19PSB66TGU&pf_rd_s=center-2&pf_rd_r=1ZF15V0CYZN44ED2RNCJ&pf_rd_t=101&pf_rd_p=58223152&pf_rd_i=899254051
我来回复