草庐IT

linux - sched_getcpu() 在 Linux 上可靠吗?

我正在尝试调试Linux上pthreads的一些性能问题,我认为sched_getcpu()可能是在骗我。它报告每个线程的CPU不变,而分析实验似乎表明线程实际上在其生命周期内从一个内核迁移到另一个内核。我想知道sched_cpu()是否只报告线程开始运行的第一个CPU,而忽略了线程迁移?有没有其他人注意到这一点,或者看到任何证据表明sched_getcpu()的返回值可能会改变?如果它不可靠,是否有任何其他方法可以跟踪当前CPU(可能使用CPUID?)? 最佳答案 http://man7.org/linux/man-pages/m

linux - sched_getcpu() 在 Linux 上可靠吗?

我正在尝试调试Linux上pthreads的一些性能问题,我认为sched_getcpu()可能是在骗我。它报告每个线程的CPU不变,而分析实验似乎表明线程实际上在其生命周期内从一个内核迁移到另一个内核。我想知道sched_cpu()是否只报告线程开始运行的第一个CPU,而忽略了线程迁移?有没有其他人注意到这一点,或者看到任何证据表明sched_getcpu()的返回值可能会改变?如果它不可靠,是否有任何其他方法可以跟踪当前CPU(可能使用CPUID?)? 最佳答案 http://man7.org/linux/man-pages/m