答案 0 :(得分:5)
使用CLOCK_THREAD_CPUTIME_ID
实施rdtsc
时,它可能会遇到与此相同的问题。 clock_gettime
的手册页说:
CLOCK_PROCESS_CPUTIME_ID 和 CLOCK_THREAD_CPUTIME_ID 时钟 在许多平台上实现使用来自CPU的定时器(TSC on 安腾上的i386,AR.ITC)。这些寄存器可能在CPU和CPU之间有所不同 因此,如果a,这些时钟可能会返回伪造结果 进程迁移到另一个CPU。
听起来这可能解释你的问题?也许您应该将进程锁定到一个CPU以获得稳定的结果?
答案 1 :(得分:0)
当你有一个不能消极的高度倾斜的分布时,你会发现均值,中位数和模式之间存在很大的差异。 对于这样的分布,标准差是没有意义的。
对它进行对数转换通常是一个好主意。 这将使它“更正常”。