答案 0 :(得分:1)
使用8个内核,您可以同时在硬件上运行8个线程。可能是16 hyper threading。
超过该数字的任何内容都要求您的CPU使用任何类型的scheduling来使其看起来像并行运行。这将花费更多时间。
答案 1 :(得分:0)
如果我理解正确,你所做的工作是受CPU限制的。现在,如果您将作业拆分为较小的部分,则会增加每个拆分的开销。但是,如果这允许您并行执行这些部分,则总时间会减少。现在,如果你将它分成多个部分而不是你可以并行执行(这是CPU的数量),你只需要增加开销!更糟糕的是,您将上下文切换(包括缓存失效)添加到开销中,因此所需的时间可能会降低。