什么是一个函数调用的成本是多少? [英] What is the cost of a function call?
本文介绍了什么是一个函数调用的成本是多少?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
相比,
- 简单的内存访问
- 磁盘访问
- 在另一台计算机上的内存访问(在同一网络上)
- 另一台计算机上访问磁盘(在同一网络上)
在Windows的C ++。
in C++ on windows.
推荐答案
相对时间(不应该关闭超过100倍; - )
relative timings (shouldn't be off by more than a factor of 100 ;-)
- 内存访问= 1
- 在高速缓存功能调用/返回= 2
- 内存访问了缓存= 10 ... 300
- 磁盘访问= 1000 .. 1E8(摊销取决于传输的字节数)
- 主要依赖于寻道时间
- 传输本身可以是pretty快
- 涉及至少几千OPS,由于用户/系统的阈值必须至少两次交叉;一个I / O请求必须如期举行,结果必须被写回;可能缓冲区分配...
- 相同的参数与磁盘I / O
- 的原始传输速度可以说是相当高的,但其他计算机上的一些过程中必须做实际工作
这篇关于什么是一个函数调用的成本是多少?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
缓存
查看全文