编辑: 飞鸟 2019-07-05

1 9

7 3 -) , 男, 云南楚雄人, 硕士, 主要 研 究领域为分布式计算;

陆桑璐(

1 9

7 0 -) , 女, 云南昆明人, 博士, 副教授, 主要研究领域为分布式计算;

陈贵海(

1 9

6 3 -) , 男, 江苏 盐城人, 博士, 教授, 主要研究领域为并行处理;

谢立(

1 9

4 2 -) , 男, 江苏常熟人, 教授, 博士生导师, 主要研究领域为分布式计算. (

2 )I / O实现技术. 即如何提高磁盘存取的效率, 特别是减少大量小的 I / O请求带来的存取延 迟. C o l l e c t i v eI / O技术将大量小的 I / O请求合并成较少的大请求, 可以有效地提高读写效率, 同时 减少并行 I / O的通信负载. 关键是充分利用 NOW 的特点设计一种有效的 C o l l e c t i v e I / O的体系结 构. 我们将在第 3节对比详细地加以讨论.

2 C I O N的设计与实现

2 .

1 基于多处理机的 C o l l e c t i v eI / O体系结构 C o l l e c t i v eI / O是一种 I / O的组织方式, 是指系统中的实体共享数据存取的信息和数据分布的 信息, 并且以一种一致的方式执行协作式的 I / O请求. 其中, 数据存取信息包括数组维数、 数据分 布信息、 全局数据访问信息等. 数据分布信息包括文件存储的顺序和文件分片的策略;

一致的方式 是指不同结点的多个存取操作涉及向同一文件的连续位置读或写, 也就是说, 数据存取的顺序与数 据存储在磁盘上的方式相匹配. 常见的多处理机下的 C o l l e c t i v eI / O的体系结构如图

1 ( a ) 所示. 图中的粗线表示系统中的物 理实体, 粗线方框表示结点, 上面 3个是计算结点, 下面 3个是 I / O结点. 而中部的粗线椭圆表示通 信平台. 图中的虚线框表示系统中的逻辑实体, 包括 3部分. A表示 S P MD模型的应用程序, 运行 于系统中的计算结点;

B代表实现 C o l l e c t i v e I / O的I/O子系统, 运行于计算结点和 I / O结点, 实现 了CollectiveI / O技术;

C是由 I / O结点的磁盘组成的磁盘阵列, 存储并行文件. 图 1中的 B是整个系统的核心, 位于应用程序与磁盘阵列之间, 由本地 I / O代理、 通信平台和 磁盘 I / O代理 3部分组成. 其中本地 I / O代理负责接收应用程序的磁盘访问请求, 经过必要的处 理, 通过通信平台发送给各个磁盘 I / O代理;

运行于 I / O结点的磁盘 I / O代理获得全局的磁盘访

5 5

6 1 李冀 等: 一个基于 NOW 的并行 I / O系统 问信息, 然后实施优化的磁盘存取操作;

存取结束后再将结果返回给相应的本地 I / O代理;

本地 I / O代理等本次读写的所有结果返回之后, 再将最终结果返回给上层的应用程序. 在上述过程中有一 个关键过程没有说明, 即各个应用程序的 I / O请求是在计算结点还是在 I / O结点进行全局的分析 和合并. 根据这一功能的归属, C o l l e c t i v eI / O可以分成 3种: T wo - P h a s eI / O [

3 ] 、 D i s k - D i r e c t e dI / O ( D D I O) [

4 ] 和Server-DirectedI / O [

5 ] .

2 .

2 C I O N的体系结构 C I ON 的体系结构设计为图

1 ( b ) . 其中图

1 ( a ) 的本地 I / O代理与磁盘 I / O代理合成一个模 块: I / O代理. I / O代理充分利用了 NOW 的特性, 将Two - P h a s eI / O与DDIO的特点有机地结合 在一起. I / O代理由应用代理和服务代理两部分组成. 详述如下:

2 .

2 .

1 应用代理 应用代理是为上层应用提供 I / O服务的进程, 负责接收本地应用程序的 I / O请求并与此请求 所涉及的服务代理进行通信, 以完成 I / O操作. 具体功能包括: ① 本地应用程序的 I / O请求的分析 和分解. 在接收到上层应用程序的 I / O请求之后, 根据全局文件分布的信息, 确定该请求的数据所 在的结点. 如果请求涉及的数据分布在多个结点上, 可能需要将本地的 I / O请求分解成更小的、 符 合数据在磁盘上的物理分布( 在磁盘上连续存储的) 的请求. ② 与服务代理的交互. 将上述分解后 的请求发送给相应的服务代理, 同时等待接收返回的结果. 由于受到服务代理的缓冲区的限制, 读 写过程可能要分多次进行. 如果是多次进行的读操作, 要负责读出的数据在本地的组合;

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题