我对在 Azure Batch 中并行运行任务有几个疑问。根据官方文档,“Azure Batch 允许您将每个节点的最大任务设置为节点核心数的四倍 (4x)。”
除了在创建池时指定每个节点的最大任务之外,是否还有其他设置,需要(对代码)完成才能批量运行并行任务?
因此,如果我正确理解这一点,如果我有一台具有 1 个核心的 Standard_D1_v2 机器,我可以在其中并行运行多达 4 个并发任务。那正确吗?如果是,我进行了一些测试,但我不太确定我得到的行为。在设置为每个节点运行 1 个任务的 D1_v2 机器池中,我的作业执行时间大约为 16 分钟。然后,使用相同的应用程序和相同的参数,唯一的变化是具有相同设置的新池,也是 D1_v2,除了每个节点运行 4 个任务外,我仍然得到大约 15 分钟的作业执行时间。并行运行任务的作业执行时间没有任何改善。会发生什么?我在这里想念什么?
我使用具有 4 个核心的 D3_v2 机器池进行了测试,设置为每个核心运行 2 个任务,每个节点总共执行 8 个任务,并使用 D2_v2 机器池(与之前的机器数量相同)进行了另一个测试2 个核心,设置为每个核心运行 2 个任务,每个节点总共运行 4 个并行任务。这两个测试的运行时间/作业执行时间是相同的。考虑到第一次测试中每个节点运行 8 个任务,而第二次测试中每个节点运行 4 个任务,难道不应该有所改进吗?如果是,我没有得到这种改进的原因可能是什么?