Fortran Coder

查看: 34866|回复: 11
打印 上一主题 下一主题

[求助] 为什么Fortran里的时间函数CPU_TIME不准确?

[复制链接]

6

帖子

2

主题

0

精华

新人

F 币
27 元
贡献
16 点
跳转到指定楼层
楼主
发表于 2014-6-12 06:27:09 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
我的做法
[Fortran] 纯文本查看 复制代码
call cpu_time(tic)
!! my code
call cpu_time(toc)
print * , toc - tic

人工计时大约是15分钟,但CPU_TIME给的结果是5900多秒。

分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

35

帖子

2

主题

1

精华

专家

超子

F 币
565 元
贡献
196 点

规矩勋章

QQ
12#
发表于 2014-6-13 22:55:24 | 只看该作者
那个好像一般是用秒做计量的,有时候这个差别看不出来的

66

帖子

5

主题

2

精华

版主

院士级水师

F 币
481 元
贡献
273 点

管理勋章帅哥勋章爱心勋章规矩勋章

QQ
11#
发表于 2014-6-12 22:35:15 | 只看该作者
chuxf 发表于 2014-6-12 22:30
也可能不一样。仔细看上面的帖子及回复

额,又看了一遍,发现我就没理解cpu——time是个啥,引用你的一句话“CPU时间,更适合描述代码工作量。”
现在理解为:,cpu——time和计算机执行的时间不是一回事,而是由你的代码的工作量决定的。不知道是不是理解的到位。
科研穷三代,读博毁一生

712

帖子

4

主题

0

精华

大师

农村外出务工人员

F 币
607 元
贡献
311 点

新人勋章爱心勋章水王勋章元老勋章热心勋章

10#
发表于 2014-6-12 22:30:02 | 只看该作者
岸边的鱼 发表于 2014-6-12 22:24
再弱弱的追问一句,“同样的程序在同样的电脑上运行,得到的cpu_time就永远是一样的吗? ...

也可能不一样。仔细看上面的帖子及回复

66

帖子

5

主题

2

精华

版主

院士级水师

F 币
481 元
贡献
273 点

管理勋章帅哥勋章爱心勋章规矩勋章

QQ
9#
发表于 2014-6-12 22:24:58 | 只看该作者
本帖最后由 岸边的鱼 于 2014-6-12 22:27 编辑
chuxf 发表于 2014-6-12 22:17
有关系,不一样。
再弱弱的追问一句,“同样的程序在同样的电脑上运行,得到的cpu_time就永远是一样的吗?
科研穷三代,读博毁一生

712

帖子

4

主题

0

精华

大师

农村外出务工人员

F 币
607 元
贡献
311 点

新人勋章爱心勋章水王勋章元老勋章热心勋章

8#
发表于 2014-6-12 22:17:46 | 只看该作者
岸边的鱼 发表于 2014-6-12 22:02
从来就没使用过这个函数,弱弱的问一句:这个cpu——time和你的计算机性能之间有没有关系?同样的程序在不 ...

有关系,不一样。

66

帖子

5

主题

2

精华

版主

院士级水师

F 币
481 元
贡献
273 点

管理勋章帅哥勋章爱心勋章规矩勋章

QQ
7#
发表于 2014-6-12 22:02:50 | 只看该作者
本帖最后由 岸边的鱼 于 2014-6-12 22:27 编辑

弱弱的问一句:这个cpu——time和你的计算机性能之间有没有关系?同样的程序在不同的计算机执行的话,计算出来的cpu_time是一样的吗?感觉应该是不一样的吧?
科研穷三代,读博毁一生

100

帖子

0

主题

0

精华

专家

F 币
550 元
贡献
291 点

规矩勋章元老勋章

QQ
6#
发表于 2014-6-12 09:38:27 来自移动端 | 只看该作者
你的是多线程或者是并行程序?

100

帖子

0

主题

0

精华

专家

F 币
550 元
贡献
291 点

规矩勋章元老勋章

QQ
5#
发表于 2014-6-12 09:35:33 来自移动端 | 只看该作者
实际时间大于cpu时间。因为还包括其他进程。例子可以看帮助文档。

123

帖子

32

主题

0

精华

宗师

F 币
1562 元
贡献
795 点
地板
发表于 2014-6-12 09:00:44 | 只看该作者
本帖最后由 andy8496 于 2014-6-12 09:13 编辑
chuxf 发表于 2014-6-12 06:48
因为这是 CPU 时间,而不是真实的消耗时间。

这两者有一定的差别,主要原因是:

我能不能这么理解:
程序实际的运行时间<=CPU_TIME统计的时间?

个人感觉CPU_TIME更华丽,因为统计可以精确到小数点后若干位,
另外,能否给个 SYSTEM_CLOCK的例子啊?看了下子程序的解释,啰里巴嗦的。
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-5-6 13:56

Powered by Tencent X3.4

© 2013-2024 Tencent

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