24小时热门版块排行榜    

查看: 2026  |  回复: 12

lisajelly

新虫 (初入文坛)


[交流] 想问一下影响fortran计算速度的因素都有哪些?

按理说fortran要比matlab快很多的,但是我将一个matlab项目翻译成fortran之后,发现fortran代码的计算速度居然是matlab的20倍。matlab中的数组大小是可变的,为了和matlab对应,我将fortran中的所有数组都设成了allocatable的,不知道是不是这个影响了计算速度?
另外,有没有办法统计整个fortran项目各个部分的计算时间,好找出影响计算速度的原因?
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

» 抢金币啦!回帖就可以得到:

查看全部散金贴

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖置顶 ( 共有2个 )

gwjx

木虫 (著名写手)


★ ★ ★
lisajelly(金币+1): 谢谢参与
xiegangmai: 金币+2, 谢谢参与! 2012-09-17 20:25:57
数组大小可变会有一定的影响, 可变了之后很多东西就没法优化了, 所以会慢.
有时候编译器的影响也挺大的, 在windows下我感觉visual fortran就比gfortran快. 同理, 操作系统也是有影响的. 一样的代码, 一样的gfortran, linux就比windows快很多.

[ 发自手机版 http://muchong.com/3g ]
2楼2012-08-29 00:19:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhoubaibin

金虫 (正式写手)



lisajelly(金币+1): 谢谢参与
请查阅相关文献即可
4楼2012-08-29 06:32:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

zhang86

木虫 (小有名气)



lisajelly(金币+1): 谢谢参与
楼主你说“fortran代码的计算速度居然是matlab的20倍”,难道你是觉得fortran还不够快吗?
不太明白明白楼主要表达的意思
9楼2012-09-15 21:15:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

phychemlxd

金虫 (小有名气)


★ ★ ★
lisajelly(金币+1): 谢谢参与
xiegangmai: 金币+2, 鼓励讨论交流! 2012-09-17 20:26:52
动态分配确实会有较大的效率影响,一般来说,可以考虑根据size来判断需不需要重新分配,如果是在很深层次的函数或过程,将这些数组作为参数传入,或是放进module里。但是总体来讲,优化算法更关键,看看迭代次数什么的,还有一些小的操作优化。
10楼2012-09-16 22:54:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

abcd702848

金虫 (正式写手)


★ ★ ★
lisajelly(金币+1): 谢谢参与
xiegangmai: 金币+2, 鼓励讨论交流! 2013-05-29 00:07:33
哥们,自己确实不太明白,你说的这个问题,fortran中影响速度的很多,比如你子程序太多,比如你中间有一些不必要的赋值语句,至于matlab,我的建议是,你修改一下,fortran以计算见长,不可能速度太慢的
11楼2013-05-28 21:00:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

abcd702848

金虫 (正式写手)


★ ★
xiegangmai: 金币+2, 鼓励讨论交流! 2013-06-03 21:12:49
我自己觉得,fortran确实比matlab要快,同时,子程序的过多,还有common变量应该对最终的结果都是有影响的,至于allocate,这个肯定有影响,而且大影响
12楼2013-06-03 08:24:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

weiwei43

至尊木虫 (正式写手)



lisajelly(金币+1): 谢谢参与
fortran和matlab速度正好反过来差不多.
很多因素影响计算速度,数组分配,我感觉不会影响.
你是否在程序的不同位置设置打印系统时间,可以根据系统时间看什么地方费时间.
13楼2013-08-29 11:34:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
简单回复
2012-08-29 02:40   回复  
lisajelly(金币+1): 谢谢参与
xiegangmai: 金币-2, 专业版交流贴,请勿灌水! 2012-09-17 20:26:12
userhung5楼
2012-08-29 06:50   回复  
lisajelly(金币+1): 谢谢参与
xiegangmai: 金币-2, 专业版交流贴,请勿灌水! 2012-09-17 20:26:16
2012-08-29 07:39   回复  
lisajelly(金币+1): 谢谢参与
xiegangmai: 金币-2, 专业版交流贴,请勿灌水! 2012-09-17 20:26:23
2012-08-29 08:16   回复  
lisajelly(金币+1): 谢谢参与
xiegangmai: 金币-2, 专业版交流贴,请勿灌水! 2012-09-17 20:26:29
2012-08-29 08:59   回复  
lisajelly(金币+1): 谢谢参与
xiegangmai: 金币-2, 专业版交流贴,请勿灌水! 2012-09-17 20:26:36
相关版块跳转 我要订阅楼主 lisajelly 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 2026年的国家社科基金项目通讯评审的新规则与新动向、新挑战 +3 process2012 2026-08-23 4/200 2026-08-23 12:54 by huixian257
[教师之家] 跳槽后在研项目怎么办? +5 简单化xn 2026-08-22 10/500 2026-08-23 12:38 by 简单化xn
[考博] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +3 h4CP7TrQR8Lg 2026-08-22 5/250 2026-08-23 12:09 by LR9qGULyN2ew
[基金申请] 什么时候开奖? +9 CrisMessi 2026-08-18 10/500 2026-08-23 12:03 by 丶昵称占用
[基金申请] 让我中一个面上吧! +12 大萍1987 2026-08-20 14/700 2026-08-23 10:30 by wrm
[考博] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 2JOx3r2CYEgw 2026-08-21 10/500 2026-08-23 07:17 by OEbVnUOu01ol
[论文投稿] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 2JOx3r2CYEgw 2026-08-22 4/200 2026-08-23 04:04 by OEbVnUOu01ol
[硕博家园] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 2JOx3r2CYEgw 2026-08-22 7/350 2026-08-23 03:43 by OEbVnUOu01ol
[论文投稿] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 QTy3jDtz1uLt 2026-08-21 9/450 2026-08-23 03:04 by OEbVnUOu01ol
[考博] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 DpSrDtM079iu 2026-08-22 3/150 2026-08-23 00:55 by OEbVnUOu01ol
[基金申请] 只有每年这种时候来逛逛小木虫 +24 yaoyewhu2008 2026-08-20 26/1300 2026-08-22 17:43 by kammury
[教师之家] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +4 2JOx3r2CYEgw 2026-08-21 4/200 2026-08-22 16:52 by sunzitan
[基金申请] 今天基金会出结果吗?20260819 +16 kkkl_v 2026-08-19 17/850 2026-08-22 16:12 by 阿布Abu
[基金申请] 放榜前的不淡定 40+4 snowwithsea 2026-08-19 14/700 2026-08-21 23:51 by cratir
[基金申请] 我面上完蛋了 +7 且听虎啸 2026-08-20 8/400 2026-08-21 12:31 by 酷酷墨镜
[基金申请] 应该是下周三26日公布了吧? +4 哈哈蛤? 2026-08-21 4/200 2026-08-21 10:58 by Vivilian
[基金申请] 基金啊基金 +4 longfie172 2026-08-20 4/200 2026-08-21 08:58 by mark mao
[基金申请] 时间戳变了,能看出什么问题? +18 基诺咪客 2026-08-17 23/1150 2026-08-20 17:19 by Godzela
[基金申请] 朋友圈看到的 +6 wangzilk 2026-08-18 8/400 2026-08-19 10:55 by Haru815
[基金申请] 今天维护系统维护 祝所有人 高中 +8 gjjjzhong 2026-08-18 9/450 2026-08-18 13:01 by 家与远方
信息提示
请填处理意见