程序固有的并行性
inherent parallelism for a program
您好,我有一个关于 固有并行性 .
的问题
假设我们有一个需要 20 秒才能完成执行的顺序程序。假设执行时间由开始时的 2 秒设置时间和执行结束时的 2 秒结束时间组成,其余工作可以并行化。我们如何计算这个程序的固有并行度?
你如何定义"inherent parallelism"?我没听说过这个词。我们可以谈谈 "possible speedup".
OP 说“剩余工作可以并行化”...并行化到什么程度?
它可以 运行 具有 无限 并行性吗?如果这是可能的(这是不切实际的),那么总 运行 时间将是 4 秒,加速为 20/4 --> 5.
如果剩余的工作可以运行在N个处理器上完美并行,
则总 运行 时间为 4+16/N。那与 20 秒的比率是 20/(4+16/N),根据 N 的值,它可以有几乎任何程度的加速从 1(无加速)到 5(他是极限情况)
您好,我有一个关于 固有并行性 .
的问题假设我们有一个需要 20 秒才能完成执行的顺序程序。假设执行时间由开始时的 2 秒设置时间和执行结束时的 2 秒结束时间组成,其余工作可以并行化。我们如何计算这个程序的固有并行度?
你如何定义"inherent parallelism"?我没听说过这个词。我们可以谈谈 "possible speedup".
OP 说“剩余工作可以并行化”...并行化到什么程度?
它可以 运行 具有 无限 并行性吗?如果这是可能的(这是不切实际的),那么总 运行 时间将是 4 秒,加速为 20/4 --> 5.
如果剩余的工作可以运行在N个处理器上完美并行, 则总 运行 时间为 4+16/N。那与 20 秒的比率是 20/(4+16/N),根据 N 的值,它可以有几乎任何程度的加速从 1(无加速)到 5(他是极限情况)