从事通常被称为“中等数据”项目的工作,我已经能够在 4 到 32 个内核的单个系统上并行化我的代码(主要用于 Python 中的建模和预测)。现在我正在考虑扩展到 EC2 上的集群(可能使用 StarCluster/IPython,但也对其他建议持开放态度),并且对如何协调在实例上的核心与集群上的实例之间分配工作感到困惑。
跨实例以及每个实例的内核并行化是否可行?如果是这样,任何人都可以快速概述运行多个具有少量内核的实例与运行具有多个内核的几个实例的优缺点吗?选择正确的实例与每个实例的核心比率是否有经验法则?
带宽和 RAM 在我的项目中是非常重要的问题,但很容易发现这些是瓶颈并重新调整。我想,在没有重复测试的情况下对实例的正确核心组合进行基准测试要困难得多,而且我的项目差异太大,以至于任何单一测试都无法适用于所有情况。在此先感谢,如果我只是未能正确地用谷歌搜索这个,请随时将我指向其他地方的正确答案!