cpu并行算法和gpu并行

In parallel programming, an embarrassingly parallel algorithm is one that requires no communication or dependency between the processes. Unlike distributed computing problems that need communication between tasks—especially on intermediate results, embarrassingly parallel algorithms are easy to perform on server farms that lack the special infrastructure used in a true supercomputer cluster.

在并行编程中,一种令人尴尬的并行算法是一种不需要进程之间通信或依赖性的算法。 与需要任务之间进行通信的分布式计算问题不同(特别是在中间结果上),令人尴尬的并行算法易于在缺少真正的超级计算机集群中使用的特殊基础结构的服务器场上执行。

Due to the nature of embarrassingly parallel algorithms, they are well suited to large, internet-based distributed platforms, and do not suffer from parallel slowdown. The opposite of embarrassingly parallel problems are inherently serial problems, which cannot be parallelized at all.

由于令人尴尬的并行算法的性质,它们非常适合大型的,基于Internet的分布式平台,并且不会受到并行速度的影响。 令人尴尬的并行问题的本质是固有的串行问题,它们根本无法并行化。

The ideal case of embarrassingly parallel algorithms can be summarized as following:

令人尴尬的并行算法的理想情况可以总结如下:

  • All the sub-problems or tasks are defined before the computations begin.在计算开始之前,所有子问题或任务都已定义。
  • All the sub-solutions are stored in independent memory locations (variables, array elements).所有子解决方案都存储在独立的存储位置(变量,数组元素)中。
  • Thus, the computation of the sub-solutions is completely independent.因此,子解的计算是完全独立的。
  • If the computations require some initial or final communication, then we call it nearly embarrassingly parallel.如果计算需要一些初始或最终通信,那么我们几乎尴尬地称其为并行。

Many may wonder the etymology of the term “embarrassingly”. In this case, embarrassingly has nothing to do with embarrassment; in fact, it means an overabundance—here referring to parallelization problems which are “embarrassingly easy”.

许多人可能想知道“尴尬”一词的词源。 在这种情况下,尴尬与尴尬无关。 实际上,这意味着过多,这里指的是“非常容易”的并行化问题。

A common example of an embarrassingly parallel problem is 3d video rendering handled by a graphics processing unit, where each frame or pixel can be handled with no interdependency. Some other examples would be protein folding software that can run on any computer with each machine doing a small piece of the work, generation of all subsets, random numbers, and Monte Carlo simulations.

令人尴尬的并行问题的一个常见示例是由图形处理单元处理的3d视频渲染,其中每个帧或像素都可以互不依赖地进行处理。 其他一些示例是蛋白质折叠软件,该软件可以在任何计算机上运行,​​每台计算机只需完成一小部分工作,生成所有子集,随机数以及进行蒙特卡洛模拟。

翻译自: https://www.freecodecamp.org/news/embarrassingly-parallel-algorithms-explained-with-examples/

cpu并行算法和gpu并行

cpu并行算法和gpu并行_令人尴尬的并行算法介绍相关推荐

  1. 容纳10万人服务器多少钱_令人尴尬的故事:为什么我的服务器只能容纳10名玩家...

    容纳10万人服务器多少钱 by Jason Chitla 杰森·奇特拉(Jason Chitla) 令人尴尬的故事:为什么我的服务器只能容纳10名玩家 (An Embarrassing Tale: W ...

  2. bp算法和nlp算法_西瓜书5.5 编程实现BP神经网络——标准BP算法、累积BP算法

    这里照着书上的公式,实现了一下标准BP算法,和累积BP算法,BP是error Back Propagation的意思,误差逆传播.BP网络通常是指用BP算法训练的多层前馈神经网络.代码是照着书本公式自 ...

  3. 《OpenCv视觉之眼》Python图像处理十四 :Opencv图像轮廓提取之Scharr算法和Canny算法

    本专栏主要介绍如果通过OpenCv-Python进行图像处理,通过原理理解OpenCv-Python的函数处理原型,在具体情况中,针对不同的图像进行不同等级的.不同方法的处理,以达到对图像进行去噪.锐 ...

  4. 【Java数据结构与算法】第二十章 Dijkstra算法和Floyd算法

    第二十章 Dijkstra算法和Floyd算法 文章目录 第二十章 Dijkstra算法和Floyd算法 一.Dijkstra算法 1.介绍 2.代码实现 二.Floyd算法 1.介绍 2.代码实现 ...

  5. 【Java数据结构与算法】第十九章 贪心算法、Prim算法和Kruskal算法

    第十九章 贪心算法.Prim算法和Kruskal算法 文章目录 第十九章 贪心算法.Prim算法和Kruskal算法 一.贪心算法 1.介绍 2.支付问题 二.Prim算法 1.最小生成树 2.介绍 ...

  6. 『TensorFlow』分布式训练_其二_单机多GPU并行GPU模式设定

    建议比对『MXNet』第七弹_多GPU并行程序设计 一.tensorflow GPU设置 GPU指定占用 gpu_options = tf.GPUOptions(per_process_gpu_mem ...

  7. CPU并行与GPU并行联系及区别

    主要参考博文:https://blog.csdn.net/ustcbob/article/details/38677603 应用特点:GPU并行吞吐量大,适合大数据并行处理:CPU适合逻辑处理和串行计 ...

  8. cpu并行和gpu并行_GPU并行架构及渲染优化

    最近在看关于GPU架构和渲染优化方面的内容,记录一下,不正确的地方请大神们斧正!本文将主要分为以下四个部分: CPU与GPU GPU并行结构 GPU渲染管线 GPU渲染优化 一.CPU与GPU 1.C ...

  9. 并行sgd算法和min-batch gd算法

    sgd算法全称随机梯度下降法,有着比批梯度下降法更快收敛的优势,该算法名称中的"随机"二字是改算法的中心精神所在. sgd算法是一种天生的串行的算法,当数据量大的时候们希望通过使用 ...

最新文章

  1. 1094 The Largest Generation
  2. Agan的IT博客开张啦
  3. 同步IO、异步IO的区别
  4. 【CV秋季划】模型优化很重要,如何循序渐进地学习好?
  5. 队列与环形队列使用数组模拟
  6. 使用create-react-app创建应用并执行npm start时出现events.js:183 throw er的解决方法
  7. 一文讲解安卓应用软件开发有什么优势?
  8. (转)OPEC神秘的“朋友圈”:全球最大原油对冲基金掌门人安杜兰
  9. 关于vim复制剪贴粘贴命令的总结-转
  10. 一次 Kafka 导致的 Sentry 无法处理 MiniDump 问题分析
  11. java中将json字符串转换成map_Java中Json转Map方法
  12. 书城项目 软件可行性分析报告
  13. smplayer_Windows上的SMPlayer入门(更好地播放电影)
  14. wps怎么恢复成单页_WPS怎么调回单页显示
  15. 屏保:毛雷尔玫瑰屏保
  16. Linux学习:第一天_笔记
  17. 数学建模:9 多元线性回归分析
  18. Android OTG-HID的连接与通讯
  19. ArcGIS基础实验操作100例--实验76按格网统计点要素
  20. ros发布节点信息python_ROS Twist和Odometry消息类型使用(Python)

热门文章

  1. 智取天狼星计划(一)
  2. 奥特曼视频软件测试,抖音奥特曼知识问答测试,奥特曼知识大挑战问答竞赛答案...
  3. 2016,庆幸遇见了你
  4. linux界面花屏,解决Virtual Pc下Linux花屏(屏幕显示不正常)
  5. Paint和Canvas
  6. layer弹窗的iframe层怎么关闭。为什么设置的layer.iframeAuto(index)高度不能自适应
  7. python里str什么意思_str在python中是什么意思
  8. 阿柏西普药物行业头部企业市场占有率及排名调研报告
  9. jQuery选择器总结(选择器+元素筛选)
  10. 安装驱动提示文件的哈希值不在指定的目录文件中;需强制禁止驱动签名;在高级启动中强制禁止驱动签名;