c++ - 来自 std::chrono 的时钟在不同的内核上可以不同吗

标签 c++ multicore c++-chrono

我喜欢比较来自 std::chrono::high_resolution_clocktime_point,它们是在处理器不同内核上运行的线程中测量的。是否会有显着差异,例如滞后或更快/更慢的时钟?标准规定了什么?

最佳答案

std 时钟与处理器无关,事实上,大多数线程也没有。来自同一线程的两个时钟测量很可能在不同的内核上进行。

关于与测量相关的超前和滞后——这与任何其他指令的执行没有什么不同;通常的管道等可能会产生影响,但我认为这不是有害的。如果它可能有害,您可能需要考虑其他工具来完成这项工作,例如一些专门的平台计时工具或某种特定于 CPU 的指令。

关于c++ - 来自 std::chrono 的时钟在不同的内核上可以不同吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44370150/

相关文章:

c++ - 将 setw 与用户定义的 ostream 运算符一起使用

java - 如何让 Java 将我的多核处理器与 GZIPInputStream 一起使用?

java - 如何保证Java线程运行在不同的内核上

windows - 如何改变 explorer.exe 和 service.exe 的启动方式来编辑进程关联?

c++ - 如何在 Mac OSX 中获取真实的日历微秒时间(自 1970 年以来的纪元)?

c++ - std::chrono::duration_cast 1 秒和 2 秒的奇怪结果

c++ - 什么时候将 std::common_type 与单个参数一起使用?

c++ - 我没有正确编程我的 while 循环

c++ - 如何限制应用程序的上传速度?

c++ - §14/2 中的 "last component"一词的含义是什么?