首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >并行计算加速

并行计算加速
EN

Stack Overflow用户
提问于 2016-01-05 02:23:17
回答 2查看 302关注 0票数 0

我使用google运行了基于控制台的Java程序,并获得了以下加速:

  • 2个vCPUs花了3分钟
  • 8个vCPU花了1.5分钟

我原以为使用8个vCPU将比使用2个vCPU快4倍(不过,我还没有尝试使用4个vCPU)。这是正常的还是我应该再检查一下我的程序?

如果这是正常的,那么需要多少个vCPUs才能达到1.5分钟/2= 0.75分钟的加速比? 16或32或.?

我对这种平行的东西很陌生。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-01-05 23:28:16

根据您的数字,您的程序看起来是80%的可并行性。这意味着,固定运行成本应该在1分钟左右。所以你不能再减少一半了。

  • 10个vCPUs: 1.4分钟
  • 40 vCPUS: 1.1分钟
  • 80 vCPU: 1.05分钟

等。

票数 1
EN

Stack Overflow用户

发布于 2016-01-05 02:39:41

这取决于您的程序是否完全可并行(这是实现理论上最大加速比的地方),或者它有一些部分是并行的,有些部分不是并行的(这在现实程序中更有可能)。

参见Amdahl定律,它说:

在计算机体系结构中,Amdahl定律(或Amdahl的论点)给出了资源得到改进的系统在固定工作负载下执行任务的延迟的理论加速。

下面是加速的可视化,这取决于程序的可并行性:

图片通过"AmdahlsLaw“由Daniels220在英语维基百科-自己的工作基础上: File:AmdahlsLaw.png。在CC下通过-SA3.0通过共用- https://commons.wikimedia.org/wiki/File:AmdahlsLaw.svg#/media/File:AmdahlsLaw.svg_获得许可

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34603230

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档