我如何让操作系统在另一个内核上运行每个线程?-Linux操作系统

我如何让操作系统在另一个内核上运行每个线程?-Linux操作系统,linux,multithreading,Linux,Multithreading,我试图在4核处理器上运行多线程程序,我希望每个线程在不同的核上运行 我该怎么做?因为现在我看到它们都在同一个核心上运行 (我使用的是Linux操作系统,我的代码是在c上编写的。)进程调度器使进程对特定的CPU有一个特定的优先级。你已经将一堆东西加载到缓存中,你还可以继续使用这个“热”缓存 您可能会在同一个内核上获得所有线程,因为您已经在这里加载了程序 我确实找到了这个:。它看起来很笨拙,但我希望它有一些用处。进程调度器使进程对特定的CPU有一个新的定义。你已经将一堆东西加载到缓存中,你还可以继续

我试图在4核处理器上运行多线程程序,我希望每个线程在不同的核上运行

我该怎么做?因为现在我看到它们都在同一个核心上运行


(我使用的是Linux操作系统,我的代码是在c上编写的。)

进程调度器使进程对特定的CPU有一个特定的优先级。你已经将一堆东西加载到缓存中,你还可以继续使用这个“热”缓存

您可能会在同一个内核上获得所有线程,因为您已经在这里加载了程序


我确实找到了这个:。它看起来很笨拙,但我希望它有一些用处。

进程调度器使进程对特定的CPU有一个新的定义。你已经将一堆东西加载到缓存中,你还可以继续使用这个“热”缓存

您可能会在同一个内核上获得所有线程,因为您已经在这里加载了程序


我确实找到了这个:。这看起来很笨拙,但我希望它有一些用处。

操作系统应该自动分配线程以获得最佳性能。如果有多个线程正在执行重要的工作,则应跨所有可用的内核调度线程,除非另有说明。你能确定线程在每个核心上占用多少CPU吗?你确定你的程序实际上有多个线程吗?正如Spectre所说,线程应该自动分配给不同的内核。操作系统应该自动分配线程以获得最佳性能。如果有多个线程正在执行重要的工作,则应跨所有可用的内核调度线程,除非另有说明。你能确定线程在每个核心上占用多少CPU吗?你确定你的程序实际上有多个线程吗?正如Spectre所说,线程应该自动分配给不同的核心。