【发布时间】:2010-12-15 15:56:19
【问题描述】:
假设我有一个 4 核 CPU,我想在最短的时间内运行一些进程。理想情况下,该过程是可并行化的,因此我可以在无限数量的线程上运行它的一部分,并且每个线程花费相同的时间。
由于我有 4 个内核,我不希望通过运行比内核更多的线程来提高任何速度,因为单个内核只能在给定时刻运行单个线程。我对硬件了解不多,所以这只是一个猜测。
在多于内核的线程上运行可并行化进程是否有好处?换句话说,如果我使用 4000 个线程而不是 4 个线程运行我的进程,它会更快、更慢还是在大约相同的时间内完成?
【问题讨论】:
-
我非常感谢你的问题,但我不明白你的第一个假设与你的问题有什么关系?即这句话:“每个线程花费相同的时间。”