我想编写分析排序算法的 C++ 代码,并且我需要知道对数组进行排序需要多少个处理器周期。
关于如何做到这一点的任何建议?
我在这里找到了这段代码:
uint64_t rdtsc(){
unsigned int lo,hi;
__asm__ __volatile__ ("rdtsc" : "=a" (lo), "=d" (hi));
return ((uint64_t)hi << 32) | lo;
}
我知道它是内联汇编,有人可以解释它是如何工作的以及如何使用它吗?
我运行 Linux。我的电脑是双核的,有区别吗?