from:https://developer.nvidia.com/mvapich

MVAPICH2 is an open source implementation of Message Passing Interface (MPI) that delivers the best performance, scalability and fault tolerance for high-end computing systems and servers using InfiniBand, 10GigE/iWARP and RoCE networking technologies. MVAPICH2 simplifies the task of porting MPI applications to run on clusters with NVIDIA GPUs by supporting standard MPI calls from GPU device memory. It optimizes the data movement between host and GPU, and between GPUs in the best way possible while requiring minimal or no effort from the application developer.

MVAPICH2是一个开源的MPI系统,其对使用InfiniBand(无线带宽技术)的高端计算系统和服务器提供高性能、可适应性、容错性,是一种具有10GigE/iWARP速度,RoCE网络的技术。

MVAPICH2简化MPI应用程序移植到与NVIDIA GPU集群上运行,并支持标准的MPI调用GPU设备内存的任务。它以最佳方式优化了主机和GPU之间、GPU和GPU之间的数据移动,而应用程序开发人员角度只需付出很少的努力,甚至不需要。 MVAPICH2以为使用Infiniband,10GigE/iWARP,ROCE网络的高性能集群提供优秀的可扩展性和容错著称。

Key Features:

  • High performance RDMA-based inter-node MPI point-to-point communication from/to GPU device memory (GPU-GPU, GPU-Host and Host-GPU)

  • High performance intra-node MPI point-to-point communication for multi-GPU adapters/node (GPU-GPU, GPU-Host and Host-GPU)
  • Optimized and tuned MPI collective communication from/to GPU device memory
  • MPI Datatype support in point-to-point and collective communication from/to GPU device memory
  • Taking advantage of CUDA IPC (available in CUDA 4.1) in intra-node communication for multiple GPU adapters/node
  • Efficient synchronization mechanism using CUDA Events for pipelined data transfers from/to GPU device memory

主要特点:

    • 高性能的基于RDMA的节点间的MPI点至点通信(GPU-GPU,GPU-Host,Host-GPU)
    • 高性能节点内的MPI点至点的多GPU通信(GPU-GPU,GPU-Host,Host-GPU)
    • 优化和调整 GPU设备内存的MPI集体通信
    • MPI的数据类型的支持GPU设备内存的点至点和集体通信
    • 节点多GPU卡内通信使用了CUDA IPC(CUDA4.1 支持 IPC)
    • 使用CUDA事件为流水线数据的内存数据GPU传输的高效同步机制

Performance:

The latest performance results using MVAPICH2 for MPI communication from/to/between GPU devices can be found on the OSU Microbenchmark Page for GPUs

Availability:

The latest version of MVAPICH2 can be downloaded from: http://mvapich.cse.ohio-state.edu/download/mvapich2/  NVIDIA GPU related features are available in MVAPICH2 releases starting from 1.8.

MVAPICH Project Page:

http://mvapich.cse.ohio-state.edu/overview/mvapich2/features.shtml

MVAPICH的更多相关文章

  1. Mellanox OFED2.1-X安装记录

    ---恢复内容开始--- 1,tcl,tk,gcc-gfortran,libnl-devel依赖包

  2. 分布式计算课程补充笔记 part 2

    ▶ 并行计算八字原则:负载均衡,通信极小 ▶ 并行计算基本形式:主从并行.流水线并行.工作池并行.功能分解.区域分解.递归分治 ▶ MPI 主要理念:进程 (process):无共享存储:显式消息传递 ...

  3. [转帖] InfiniBand主流厂商和产品分析

    https://blog.csdn.net/swingwang/article/details/72935461 InfiniBand主流厂商和产品分析 2017年06月08日 22:03:46 Ha ...

  4. [转帖]InfiniBand 主流厂商 和 产品分析

    InfiniBand 主流厂商 和 产品分析   Mellanox成立于1999年,总部设在美国加州和以色列,Mellanox公司是服务器和存储端到端连接InfiniBand解决方案的领先供应商.20 ...

  5. software collection

    software software Table of Contents 1. Privacy 2. GFW 2.1. google search 2.2. 修改 DNS 服务器 2.2.1. 修改ip ...

  6. 基于CentOS的IB网卡驱动安装

    一.准备步骤 1.查看centos版本 cat /etc/issue或者cat /etc/redhat-release  2.查看linux版本 cat /proc/version或uname -a或 ...

  7. 基于infiniband(IB)网的MVAPICH2安装

    一.下载安装包 下载链接:http://mvapich.cse.ohio-state.edu/downloads/  二.解压编译安装 mkdir /home/xujb/mvapich2 tar -x ...

随机推荐

  1. Zookeeper的集群配置和Java测试程序 (一)

    概述 Zookeeper是Apache下的项目之一,倾向于对大型应用的协同维护管理工作.IBM则给出了IBM对ZooKeeper的认知: Zookeeper 分布式服务框架是 Apache Hadoo ...

  2. MATLAB顺序结构程序和switch实现选择结构

    数据操作 (1)数据输入: A=input(提示信息,选项) (2)数据输出: disp(输出项) (3)程序暂停 pause(延迟秒数)若无内容,则需用户按任意键继续 3.2if语句 整非零为真 矩 ...

  3. git如何使用

    Git是分布式的,但多数时候仍然要使用中央仓库作为所有开发者的交互中心,和svn一样,开发人员仍要在本地写代码并提交到中央服务器.Git相较于svn最大的优势就在于其强大的分支系统,而git的工作流程 ...

  4. 快速学习 Python 数据分析包 之 pandas

    最近在看时间序列分析的一些东西,中间普遍用到一个叫pandas的包,因此单独拿出时间来进行学习. 参见 pandas 官方文档 http://pandas.pydata.org/pandas-docs ...

  5. Linux kernel rbtree

    Linux kernel rbtree 因编写内核模块时需要用到rbtree来记录异步request,研究分析了一下kernel rbtree的使用方法,记录于此.本文主要参考了内核文档rbtree. ...

  6. JavaFX--第3天窗口布局

    1.windows之间的交互 2.关闭程序 3.布局镶嵌 1.windows之间的交互 我们要实现“确定”.“取消”之类的功能:就像我们平时使用Word的时候要关闭会提示要不要保存的信息. 步骤如下: ...

  7. c#-day04学习笔记

    面向对象 类与对象: C#的类和对象是用于在程序中模拟现实生活中的事务的 C#中的类是一种数据类型,用来定义对象的类型的 C#的对象是类的实例,是基于[给定数据类型]的具体的一个实例 小结: 类是对象 ...

  8. 实现多ComboBox复杂查询 使用ComboBoxDisplay Value属性

    首先创建一个类 class ComboBoxItem { public string Text { get; set; } public object Value { get; set; } //这个 ...

  9. Mysql显示行号

    SELECT `Name`,(@rowNum:=@rowNum+1) AS rowNo FROM bas_student,(SELECT (@rowNum :=0)) a LIMIT 10;

  10. jQuery综述

    jQuery是一个轻量级JavaScript库 它可以进行如下操作: 选取HTML元素 对HTML元素进行操作 对CSS进行操作 编写HTML事件函数 JavaScript特效 HTML DOM AJ ...