gpt4 book ai didi

c++ - 增量时间始终为零

转载 作者:行者123 更新时间:2023-11-28 02:54:36 25 4
gpt4 key购买 nike

long long delta;
auto oldTime = std::chrono::high_resolution_clock::now();
std::vector<int> list;
for (int i = 0; i < 100; i++)
{

auto x = i * i / std::pow((double)i / 50, 2) ;
list.push_back(x);
auto now = std::chrono::high_resolution_clock::now();
delta = std::chrono::duration_cast<std::chrono::nanoseconds>(now - oldTime).count();
oldTime = now;
std::cout << delta << std::endl;
}

delta 假设显示计算、插入和显示简单方程的结果需要多少 ns,但是一些结果等于 0.. 整个迭代如何花费 0ns?

最佳答案

这里有一些错误。

  1. 您无法在 NS 时间尺度中进行测量。大多数计算机不支持。而是使用 ms 进行测试,因为所有现代计算机都支持它。

  2. 将数据打印到控制台屏幕是一个缓慢的过程。由于您是在循环中打印数据,因此它会减慢整个迭代的速度,每个循环减慢 6-20 毫秒,而不是几乎是瞬时的。将打印调用移到循环之外以获得最准确的结果只需将总时间除以迭代次数即可查看每个循环所需的时间。

关于c++ - 增量时间始终为零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22286967/

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