爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 12999|回复: 12

[求助] fortran计算所用时间的小问题

[复制链接]

新浪微博达人勋

发表于 2011-11-11 10:55:59 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x


  今天写了个程序,没事的时候,顺便加入了统计运算过程时间的一个函数,中间为了监测过程,写了个print语句,随时显示计算的内容,整个结果算完以后,耗时399秒,然后我又在同样的环境下,去掉了print语句,运算时候,什么都不显示,结果161秒就完成了计算任务,为啥能差这么多啊,显示的内容也是计算的一部分,只不过显示到屏幕上,难道就能差这么多时间么?
  本来不是个问题,只是想过来跟大家讨论一下里面的具体过程,到底有什么说法呢

点评

计算代码请参考:http://bbs.06climate.com/forum.php?mod=viewthread&tid=4580  发表于 2011-11-12 11:11
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2011-11-11 11:11:47 | 显示全部楼层
本帖最后由 天目神眉 于 2011-11-11 11:12 编辑

@言深深这个真心可以问深深
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 成长值: 19710
发表于 2011-11-11 12:08:32 | 显示全部楼层
@天目神眉这个蛋蛋的笨笨是谁?跟笨笨的蛋蛋啥关系?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2011-11-11 12:11:29 | 显示全部楼层
本帖最后由 天目神眉 于 2011-11-11 12:14 编辑

我怎么知道,请直接回答楼主的问题
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2011-11-11 12:16:14 | 显示全部楼层
密码修改失败请联系微信:mofangbao

新浪微博达人勋

0
早起挑战累计收入
发表于 2011-11-11 12:58:56 | 显示全部楼层
原因就是你输出到屏幕了啊,因为输出是需要时间的,尤其是循环输出大量文本到屏幕的时候,很耗费时间的,所以大量运算尽量少用屏幕输出,能节省很多时间
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 成长值: 0
发表于 2011-11-11 15:19:43 | 显示全部楼层
这个也和你运行期间电脑有没有进行其他程序有关系吧,(毕竟你计算的时候只是调用了一个cpu time)
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2011-11-11 20:20:31 | 显示全部楼层
cpu_time 计算的结果不能是任意的 是离散的一些数 为什么啊
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2011-11-11 20:44:42 | 显示全部楼层
mofangbao 发表于 2011-11-11 12:58
原因就是你输出到屏幕了啊,因为输出是需要时间的,尤其是循环输出大量文本到屏幕的时候,很耗费时间的,所 ...

哦,我的循环大概有2576*32个文件,每个里面有50000多个循环,难怪这么耗费时间

附加一下,难道是这样的过程? 计算出来,然后显示到屏幕,然后在写入文件,是顺序执行的?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

0
早起挑战累计收入
发表于 2011-11-11 21:00:56 | 显示全部楼层
蛋蛋的笨笨 发表于 2011-11-11 20:44
哦,我的循环大概有2576*32个文件,每个里面有50000多个循环,难怪这么耗费时间

附加一下,难道是这样 ...

一般的fortran程序都是单线程的,也就是说执行完一个命令才会继续下一个,因此执行完一个print才会执行下面的语句,print多了就很慢了
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表