随笔分类 -  多核编程

摘要:目前,许多可用的MPI实现只关注HPC(高性能计算)的部分方面或是专注于解决某个具体问题,这导致了这些MPI实现不兼容、如果独立安装组合来获取它们的特有功能。Open MPI是在LAM/MPI,LA-MPI, and FT-MPI的基础上的一种全新的基于构件概念的MPI实现,提供了以前MPI实现无法实现的独特的组合方法。Open MPI的基于构件的体系结构不仅为第三方研究提供了稳定的平台,也使得独立软件附件能够在运行时组合。本文从总体上介绍了Open MPI的目标、概念、设计及实现。一、Open MPI的目标 Open MPI并不是LAM/MPI, LA-MPI和FT-MPI的简单组合,... 阅读全文
posted @ 2012-03-04 16:08 程序员姜小白 阅读(16906) 评论(2) 推荐(2)
摘要:一、同步编程语言 同步编程语言将代码的同步执行作为设计过程中的核心概念,它们是反应式的,即当信号到来,状态开始执行。其中抽象符号instant定义了每个状态的执行边界,instant与电路中的硬件时钟或是处理器时钟都没有关系,它更像是表示状态集完成或决定下批状态集执行的标记器。同步语言的核心是同步假设,这意味着在同步语言设计系统过程中,可以假设计算和通信的时间,即在instant时间内,操作假设就会完成。 所有的同步都有四种共同的属性:同步、反应式的响应、并发和执行的确定性。同步即所有操作都基于相同软件时钟,而模块之间的通信通过假设收发信息的时间为0来满足此属性。反应式的响应即事件驱动响... 阅读全文
posted @ 2012-02-21 21:30 程序员姜小白 阅读(2348) 评论(0) 推荐(1)
摘要:随着多核时代的到来与流行,传统的单线程串行程序的编程模式必将改变,取而代之的将是并行编程。目前已经有五种主要并行编程模型,下面将对此五种模型进行概括性的分析与比较:1. MPI MPI(Message Passing Interface)消息传递接口是MPI论坛发布的一个库,而不是一门实现语言,支持C/C++/Fortran。是一种消息传递编程模型,为进程间通信服务。MPI提供了一种与平台无关,可以被广泛使用的编写消息传递程序的标准。用它来编写消息传递程序,不仅实用、可移植、高效和灵活,而且和当前已有的实现没有太大的变化。目前MPI的主要实现有以下三种: 优点:可以在集群上使用,也可以... 阅读全文
posted @ 2012-02-18 18:23 程序员姜小白 阅读(18908) 评论(3) 推荐(2)