专栏首页随心DevOps如何量化并行效率?阿姆达尔来帮你

如何量化并行效率?阿姆达尔来帮你

今天在《代码的未来》这本书中看到一个定律,叫:阿姆达尔定律,原来并行效率可以量化的这么漂亮,它叫 加速比,简单的讲就是提升效率的倍数,很简单就一个公式:

看到公式先别怕(我一开始也是很怕的),听我解释两点你就明白:

1. 式中W_{s},W_{p} 分别表示问题规模的串行分量(问题中不能并行化的那一部分)和并行分量,可以很简单看出来,当 p->\infty 的时候,上面那个公式的极限是:

2. p表示处理器数量

意思就是无论我们如何提高(处理器的数量),效率的提升都不会超过这个值


举两例子就清楚了:

1. 有一个 App,计算(假设可并行化) 与 I/O(不可并行化) 各占一半,套上面公式得:

2. 而如果计算占 95%,I/O 5%,再套公式得:

第一个例子,效率最多提升到之前的 2 倍 第二个例子,效率最多提升到之前的 20 倍(是不是突然之间明白了什么?)

最后放图加深记忆:

嗯,就这么简单,PPT 的逼格又能 +++ 啦,正文完

本文分享自微信公众号 - 随心DevOps(heart-devops),作者:临书

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-12-23

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • [实战篇] Python 运维中使用并发

    今天从大哥手里接了一个需求: 验证一下新的 Docker 镜像仓库(Docker Registry)是否迁移成功了 简单粗暴的方法就是拿到老仓库中的镜像列表(I...

    临书
  • 使用 React 和 Django REST Framework 构建你的网站

    在我们最近的工作中,构建网站使用的架构是带有 Django REST Framework(DRF)后端的 React 前端。它们是通过在前端使用 axios(前...

    临书
  • 三分钟使用 Python 处理 Nginx 日志

    有什么 有 14 台机器(意味着我们有14份日志) 一台可以连到这 14 太机器的机器(有 Python 2.6) 要做什么 获取 14 台机器上某时间段内...

    临书
  • AI识别之旅三

    前两篇说了AI识别的准备和录入到腾讯云里,接下来我们就来编写一个从人脸库进行识别的功能,老样子那第一篇摄像头那里拉图片。因为有第二篇拉依赖库,这里就不在叙述了。...

    谭广健
  • Android数据库高手秘籍(九),赶快使用LitePal 2.0版本吧

    算了一下,上个版本1.6.1已经是半年前推出的了,而整个开源项目自2014年推出以来,我已经维护了有四年之久。这四年以来,我不断地完善着LitePal的代码,修...

    用户1158055
  • 数据分析Excel技能之求和

    鼠标选中 B8单元格 -> 开始 -> 编辑 -> 自动求和,excel会自动感应要求和的行和列。

    有福
  • jQuery中的DOM操作

    Dom操作的分类:DOM Core,html-DOM,CSS-DOM 查找节点: 查找属性节点(通过jq选择器),操作属性节点(attr(‘属性名’,’属性值’...

    IMWeb前端团队
  • jQuery中的DOM操作

    查找属性节点(通过jq选择器),操作属性节点(attr(‘属性名’,’属性值’)), 操作文本节点(text())读/写

    IMWeb前端团队
  • kubernetes v1.11 二进制部署(二)之Openssl自签TLS证书

    节点kubelet的公钥与私钥:是通过boostrap响应的方式,在启动kubelet自动会产生, 然后在master通过csr请求,就会产生。 那么知道这些...

    Devops海洋的渔夫
  • Android Oreo 常见问题 2.0 | Android 开发者 FAQ Vol.9

    Android 开发者

扫码关注云+社区

领取腾讯云代金券