什么是一个函数调用的成本是多少? [英] What is the cost of a function call?

查看:202
本文介绍了什么是一个函数调用的成本是多少?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

相比,


  • 简单的内存访问

  • 磁盘访问

  • 在另一台计算机上的内存访问(在同一网络上)

  • 另一台计算机上访问磁盘(在同一网络上)

在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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆