我读到了关于并行计算的效率,但从未对它有过清晰的认识,我也读到了关于实现效率 >1
的结论,并得出结论,当它是超线性时它是可能的。 / p>
这是正确的吗?
如果是,那么任何人都可以告诉我如何并为此提供一个例子吗?
或者,如果不是,那么为什么?
答案 0 :(得分:0)
可以根据几种不同的策略安排一组流程执行 -
[SERIAL]
- 即一个接一个地完成,直到完成所有操作,或[PARALLEL]
- 即一次全部启动,全部立即执行,立即全部终止或
[CONCURRENT]
方式 - 即一些人在资源许可的情况下立即启动,其他人则会在免费时执行[CONCURRENT]
或新资源许可。处理逐步完成,但没有任何协调,就像资源映射和优先级允许一样。鉴于效率可能与耗电量或处理时间有关,让我们关注处理时间,好吗?
Gene Amdahl详细阐述了通用处理加速的领域,我们将在此借鉴。 HPC /计算机科学教育中的常见问题是讲师不强调组织并行处理的实际成本。出于这个原因,Amdahl定律中的天花板(原始)配方应该始终用于开销 - 严格重新制定,因为否则任何天真形式的数字都在{ {3}} 只是将苹果与橙子进行比较。
另一方面,一旦将流程添加设置开销成本和流程终止 - 附加开销成本记录到方案中,开销 - 严格加速比较开始感觉来谈论处理时效率。
话虽如此,有些情况下,处理时效率可能变得 > 1
,而可以说,必须采取专业应有的谨慎措施,而不是所有处理类型都允许在任何大规模的代码执行资源池中获得任何显着的加速,这是由于有义务支付并支付NUMA /分布式处理开销的附加成本。