gpt4 book ai didi

c - 测量程序的 C 执行时间、内存使用和 CPU 负载

转载 作者:太空宇宙 更新时间:2023-11-04 04:50:29 25 4
gpt4 key购买 nike

对于一个特定的c代码程序,我想测量:

execution time (most likely complete program execution time)
memory usage
CPU load

我怎样才能在 C 中获得上述所有信息?

最佳答案

您可以使用用于时间/日期操作的标准 C 库 (time.h) 编写简单代码来测量特定代码块的执行时间:http://en.wikipedia.org/wiki/C_date_and_time_functions

对于一个重要的程序,内存使用量几乎不可能准确测量。你的程序使用共享库吗?那么,您是否将共享库使用的内存计算为专属于您的程序?你的程序 fork()ed 的子进程呢?是单独算还是和主进程一起算?所有这些问题都可以回答,但这意味着您衡量的内容取决于您的具体选择。

在 C 语言中,您可以做的是环绕 malloc() 和 free() 使用您的包装器来跟踪您的内存分配。

对于 CPU 负载,您需要与操作系统交互。您无法从 C 那里获得该信息。

关于c - 测量程序的 C 执行时间、内存使用和 CPU 负载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15928598/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com