gpt4 book ai didi

CLOCK_REALTIME、CLOCK_MONOTONIC、CLOCK_MONOTONIC_RAW 值。

转载 作者:行者123 更新时间:2023-11-30 16:38:11 25 4
gpt4 key购买 nike

我运行了基本的代码片段。

void emptyFunction(){
};

int main(){

const int conversion = 1000000000;
unsigned long long func_sum = 0;
clock_gettime(CLOCK_REALTIME, &funcTimeStart);
emptyFunction();
clock_gettime(CLOCK_REALTIME, &funcTimeEnd);

func_sum=((funcTimeEnd.tv_sec*nanoConversion)+funcTimeEnd.tv_nsec)-((funcTimeStart.tv_sec*nanoConversion)+funcTimeStart.tv_nsec);

这是为了测试运行空函数所需的时间。

我分别运行了 10 次,我的值如下:

如果我使用:

CLOCK_REALTIME - 我的值为 57-108 纳秒

CLOCK_MONOTONIC - 我的值为 39-98 纳秒

CLOCK_MONOTONIC_RAW - 我的值为 282-487 纳秒

CLOCK_PROCESS_CPUTIME_ID - 我的值为 662-1049 纳秒

根据我的理解,CLOCK_REALTIME 使用挂钟时间来测量,而 CLOCK_PROCESS_CPUTIME_ID 使用 CPU 运行代码的时间。那么 CLOCK_PROCESS_CPUTIME_ID 不是总是有一个较小的数字吗?为什么这里不是这样?

最佳答案

您没有测量空函数的执行时间,而是测量了clock_gettime() 函数实现中的开销量。当然,这取决于你传递的clockid_t。 – 汉斯·帕桑特

关于CLOCK_REALTIME、CLOCK_MONOTONIC、CLOCK_MONOTONIC_RAW 值。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47590231/

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