王凯-eecs分享 http://blog.sciencenet.cn/u/eecs

博文

在Simics里用event实现时钟的一些特点

已有 3781 次阅读 2010-4-23 17:31 |个人分类:Simics|系统分类:科研笔记|关键词:学者| 特点, event, 时钟

在Simics中,为了使模拟速度尽可能的快,在模拟精度允许的情况下,总是希望程序能够大块(bulk)地执行。如果一定要在Simics中为一个模块实现一个时钟,是否这个时钟的频率越低,Simics推进这个时钟就能越快呢?

在我的粗测中,答案是否定的!
我跑Simics的主机是Intel Xeon E5520,8核,主频2.27GHz。模拟的机器是两台机器搭建的机群,每台机器的处理器是pentium-4e,双路SMP,主频2GHz。那么用event实现的时钟从200MHz开始,每次降频一个量级(10倍),观察两台空载机器的时钟推进速度。

当event是200MHz时,虚拟机器每秒钟只能推进1ms左右,非常慢;当event是20MHz时,每秒钟推进5ms左右;当event是2MHz时,每秒钟推进40ms左右;当event是200KHz时,每秒钟推进70ms左右;当event是20KHz时,每秒钟推进10ms左右;当event是2KHz时,每秒钟推进50ms左右。

可以看到测试数据的规律变化很怪,不是渐近线型变化。具体的原因不太清楚,但是已经可以指导我们如何用event实现一个尽可能不影响模拟器推进的时钟了。

https://m.sciencenet.cn/blog-432545-315341.html

上一篇:硬件实现两个无符号数相加时,结果是否溢出的判断方法
下一篇:一些Simics Tips

1 唐常杰

发表评论 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-6-1 21:04

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部