《中国人工智能学会通讯》——8.31 并行与分布式进化计算实现方式-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

《中国人工智能学会通讯》——8.31 并行与分布式进化计算实现方式

简介: 本节书摘来自CCAI《中国人工智能学会通讯》一书中的第8章,第8.31节, 更多章节内容可以访问云栖社区“CCAI”公众号查看。

8.31 并行与分布式进化计算实现方式

近年来,随着计算机技术的发展,各种分布式平台以及高性能平台逐渐兴起。如何将并行与分布式进化算法嵌入到这些平台,从而提升并行与分布式进化算法进性能,加快算法运行速度也成为学术界和工业界关心的热点。目前流行的并 行 与 分 布 式 算 法 实 现 方 式 有 MPI(MessagePassing Interface)、Hadoop 和 GPU(GraphicsProcessing Unit)。

MPI
MPI 1 开始于 1991 年,是一种跨语言的通讯协议,主要用于并行程序的设计。自诞生之日起,其就成为设计高性能计算的主要模型。该协议是一种共享内存式协议,主要支持点对点和广播服务,为高性能计算提供各种接口,几乎可以支持目前主流的编程语言,比如 C、C++、Java、Python 等。文献 [53,93] 使用该协议设计并行与分布式进化计算算法。

Hadoop
Hadoop 是由 Apache 软件基金会开发的开源项目,主要用于实现谷歌(Google)公司开发的软件架构协议—— Mapreduce [94] 。该协议用于大规模数据集的并行计算,主要包含 Map 操作和 Reduce操作。Map 操作用来把一组键值对映射为一组新的键值对;Reduce 操作主要是对 Map 映射后的新键值进行适当的合并。自从 Google 公布该协议后,它已经成为当前设计分布式程序的主流模型,特别是针对大规模数据集的分布式算法。文献[48,95-97]利用该协议实现并行与分布式进化计算算法。

GPU
GPU 是一种强大的图形处理单元,特别适合处理矩阵运算。目前英伟达(NVIDIA)公司领衔开发高性能 GPU,并提供编程语言 CUDA。一般而言,一个 GPU 可以执行上百甚至上千个线程,十分适合处理数据密集型处理任务。文献 [98-101] 利用该模型实现并行与分布式进化计算算法。由于 GPU适合处理矩阵运算,在 GPU 上设计并行与分布式进化算法时,需要对传统的进化算法进行特殊编程,使得进化算法在进化过程中包含大量的矩阵运算,而非传统的向量运算。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章
最新文章
相关文章