你现在的位置: 首页 > DEEPC引擎

DEEPC并行计算数据物流引擎

发布时间:2015-02-02

 

DEEPC的全称是Data Exchange Engine for Parallel Computing,即并行计算数据物流引擎。DEEPC是一套易于学习的快速并行化工具:DEEPC提供数据物流支撑的订单式数据交换引擎,可以对现有程序模块进行高效的并行化;DEEPC可以调用各种客户端组件,使得用户通过少量修改可以使用现有组件构建并行应用;DEEPC设计了一套简易的语法,使得构建和维护并行应用变得简单。
DEEPC构建的并行应用具有下图所示的系统结构:
 

1-1 DEEPC系统结构
  
 DEEPC Script
DEEPC ScriptDEEPC的脚本语言,同时DEEPC提供了解释器,可以方便地处理DEEPC脚本。
DEEPC Script提供了以下功能:
·         DEEPC Script简易的SPMD语法,使得用户可以高效地描述并行计算中计算节点间的关系和共享数据,并进行计算节点间的同步;
·         DEEPC Script中对数据物流支撑的订单式数据语法的支持,更使得用户可以高效地描述计算节点间的数据交换。
 
 DEEPC Clinet
DEEPC ClientDEEPC客户端组件提供的函数库。
DEEPC Client提供了以下功能:
·         使得现有的 C/C++ Fortran 语言编写的代码经过少量修改就可以与DEEPC 进行数据交互;
·         主流的胶水语言,如 LuaPython Ruby,可以方便地用这个库实现与DEEPC 数据交互的功能。
 
 LuaM
LuaM DEEPC 用来与 Matlab 交互的客户端。
LuaM提供了以下功能:
·         支持 Lua 脚本语言,并在该语言基础上增加了若干控制 DEEPC 客户端和 Matlab 的功能;
·         通过 LuaM,用户可以使用简单的语法实现 DEEPC Script Matlab 脚本间的数据交互,从而使 Matlab 脚本能借助 DEEPC Script 进行快速并行化。