分布存储并行系统中的共享存储编程环境
唐志敏
******@ict.
中国科学院计算技术研究所
提纲
什么是分布式共享存储
JIAJIA分布式共享存储系统
JIAJIA系统的性能
JIAJIA系统的应用
JIAJIA的编程界面和性能优化
lssc机群上的JIAJIA
几种常见的并行计算系统
对称多处理(SMP)工作站和服务器
集中式共享内存,处理机数一般不多
大规模并行机(MPP)与机群系统(Cluster)
分布式存储,处理机数可以较多
一般采用PVM,MPI等消息传递编程环境
也可以实现分布式共享存储(或虚拟共享存储)
每个结点可以是一个SMP系统
由工作站、服务器构成的网络并行计算环境
分布式存储,可能是异构的
可以用消息传递,可以用虚拟共享存储
体系结构:分布存储与集中存储
多地址空间
消息传递通信
编程、移植困难
可伸缩性好
单地址空间
共享存储通信
编程容易、程序易移植
可伸缩性一般
编程模型:共享存储与消息传递
并行计算机程序设计的两种主要方式
并行意味着计算过程的划分:子任务、子问题
同一问题的各子任务间有联系:同步、数据交换
共享存储与消息传递提供了不同的数据交换方式
共享存储
数据不必划分,每个子任务都能看到完整的数据
需要同步,不同子任务都按确定的次序访问数据
消息传递
数据也要划分,每个子任务只能看到一部分数据
任务通过发送或接收消息来交换数据、保持同步
分布式共享存储系统
在分布存储系统上提供共享存储抽象
分布式共享存储(DSM)系统
结合共享存储的易编程和分布式存储的易扩展
在分布式系统的基础上通过软件或软硬结合的方法提供共享存储的编程环境
硬件DSM系统:DASH, FLASH, Alewife, DDM
商品化系统:KSR-1,Origin 2000,NUMA-Q
软件DSM系统:IVY, Midway, Munin, Quarks, TreadMarks, CVM, JIAJIA, …
又称为虚拟共享存储系统、共享虚拟存储系统
硬软件结合的DSM系统:Shrimp, Typhoon, A, ...
软件DSM系统与消息传递系统
硬件平台相同,都是分布式存储的并行系统
最低层的数据交换手段只能是消息传递
数据在物理上仍然分布在各个结点的存储器内
软件分布式共享存储
提供一个逻辑上统一的虚拟地址空间
自动识别非本地存储访问,并转换为消息传递
性能:与消息传递相当
与精雕细刻的消息传递相比,可能会多送消息
自动地缓存远程数据,有效地利用访存局部性
软件DSM系统JIAJIA
建立在分布存储并行系统上的共享存储环境
把用户从繁琐的数据划分和通信组织中解放出来
使多台工作站的存储器真正联接成了一个大容量的共享空间
在国外的同类系统(如CVM, TreadMarks等)系统中,共享内存容量受限于单机内存的容量
简单精巧、开销小、效率高
新颖的cache一致性协议能有效地缓存远程数据
以运行库的方式支持共享存储和并行计算
JIAJIA的主要特点
基于主流的操作系统平台,系统移植方便
是一个纯用户级软件系统,不修改操作系统
Solaris, AIX, Linux, SUNOS, IRIX, WinNT/9x
已运行于:SPARC机群、Alpha机群、IBM SP2、曙光系列、Pentium 微机机群等平台
支持C 和 FORTRAN 编程接口
可方便地移植已有的共享存储应用程序
SPLASH2, NAS Parallel Benchmark
一批实际应用程序
可以根据用户的需要,增加新的功能
提供适当的消息传递函数jia_send,jia_recv
分布存储并行系统中的 来自淘豆网www.taodocs.com转载请标明出处.