0

我是一名工程专业的学生,​​在遗传算法方面实习。最近,我一直在对差异进化进行大量研究。在我实习期间,我们决定直接使用scipy.optimize.differential_evolution()来测试差分进化。

在文档中,提到并行是可能的,但我们不确定它是否真的会产生很大的不同。这就是为什么我们决定寻找是否有一种方法可以预测性能的改进。我发现使用阿姆达尔定律可以实现这样的事情。我的问题是,为了使用阿姆达尔定律,我必须知道“程序的一部分可以并行化”。有没有人可以帮我找到这部分?或者可能以另一种方式预测改进?

先感谢您!

4

1 回答 1

0

“......这样的事情可以通过使用阿姆达尔定律来实现。(SER v/s PAR 部分)或其他方式?”

首先,了解更多关于修订后的细节,至少是开销严格的阿姆达尔定律
更好的开销严格资源感知重新制定,
因为工作原子性时期的开销和资源(不)可用性(在进化时期)将在您的用例中决定更多,而不是开销天真的 SER/PAR 部分。

如果需要以交互方式动态查看这些效果,请阅读内容,其中第一个图表链接到交互式演示,演示用户可选择的操作[SERIAL]以及[PARALLEL]选择设置和终止 + 所有与 SER/DES 相关的附加组件的部分开销,如果您选择进入workers = -1或 RAM-thrashing 开始使事情变得严重破坏,这可能会变得非常疯狂。

在此处输入图像描述

于 2020-04-21T08:54:57.353 回答