双socket处理器之间的Java线程迁移

双socket处理器之间的Java线程迁移,java,multithreading,numa,Java,Multithreading,Numa,我正在执行一项与NUMA(非统一内存访问)相关的研究,该研究使用在双处理器上运行的Java线程(Java 8)执行多线程代码:Intel(R)Xeon(R)CPU E5-2650 v2@2.60GHz: 所以在计算机架构方面,我有两个处理器配置为两个NUMA节点。 很难理解程序线程映射到物理内核的位置。为了得出一些结论,我需要一种方法来理解我的程序的线程在执行过程中是否存在内核之间或套接字之间的迁移现象 有什么建议吗?感谢您的帮助。Java线程对象委托给操作系统的线程管理系统,因此具体行为取决

我正在执行一项与NUMA(非统一内存访问)相关的研究,该研究使用在双处理器上运行的Java线程(Java 8)执行多线程代码:Intel(R)Xeon(R)CPU E5-2650 v2@2.60GHz:

所以在计算机架构方面,我有两个处理器配置为两个NUMA节点。 很难理解程序线程映射到物理内核的位置。为了得出一些结论,我需要一种方法来理解我的程序的线程在执行过程中是否存在内核之间或套接字之间的迁移现象


有什么建议吗?感谢您的帮助。

Java线程对象委托给操作系统的线程管理系统,因此具体行为取决于操作系统。此外,操作系统通常不会将线程“映射”到内核,这将导致处理器的使用效率低下。我不能说在您的情况下发生了什么,但我认为这很复杂。

将线程映射到CPU核心的过程取决于操作系统。(未标记的)