OpenMP 与 MPICH2 进行集群计算时数据分发与共享

WBOY
發布: 2016-06-07 15:20:48
原創
1388 人瀏覽過

对集群计算而言,使用MPICH2连接并控制各个节点,使用 OpenMP 在节点内充分对CPU及各个CPU核心进行并行化,是比较低成本且万精油的解决方案。(异构计算估计要OpenCL 或者 CUDA 参与,没搞过)。MPI(CH2)是应用于分布式计算设施的并行化技术,OpenMP与之对应

    对集群计算而言,使用MPICH2连接并控制各个节点,使用 OpenMP 在节点内充分对CPU及各个CPU核心进行并行化,是比较低成本且万精油的解决方案。(异构计算估计要OpenCL 或者 CUDA 参与,没搞过)。MPI(CH2)是应用于分布式计算设施的并行化技术,OpenMP与之对应,用于共享存储设施。MPI与OpenMP合作时,一般把任务首先划分为一级粒度(粗),而后,MPI分发送到计算节点上,节点内采用OpenMP来进行算法级并行化。

    如果是计算密集型但存储不多的任务,直接使用MPI分发处理数据,而后归并即可。

    如果是计算密集型同时输入非常大,输出很少,则把输入数据准备在集群内某一台机器上,并用光纤链接的局域网文件系统共享发布。MPI派发数据的索引而不是数据本身,而后归并处理结果。

   如果是计算密集型,输入很大,输出也很大,则考虑全部在分布式文件系统中实施。

   在考虑是否把数据复制到各个节点时,主要考虑是复制的代价大,还是共享访问的流量大。对需要反复随机访问的数据,还是复制到各个节点。对顺序读取一次即可完成处理的数据,直接共享访问。

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板