一种减少资源竞争的Trace文件转储方法

文档序号:7820989阅读:266来源:国知局
一种减少资源竞争的Trace文件转储方法
【专利摘要】本发明公开了一种减少资源竞争的Trace文件转储方法,在基于Infiniband网络和Lustre系统中,该转储方法执行三个服务步骤,即存储信息收集服务S1、Infiniband网络拥塞探测服务S2和文件转储服务S3。该方法通过被动探测Lustre系统的IO使用情况与主动探测Infiniband网络的使用情况相结合,计算网络和IO资源的拥塞情况,在无拥塞时进行踪迹文件转储的技术手段,从而实现减少踪迹文件转储与被监控程序资源竞争的情况出现,获得程序插桩后运行速度更快,踪迹数据更加准确的技术效果。
【专利说明】一种减少资源竞争的Trace文件转储方法

【技术领域】
[0001] 本发明涉及一种在机群中踪迹文件(即Trace文件)转储的方法,更特别地说, 是指一种减少资源竞争的踪迹文件转储方法。尤其涉及在使用Infiniband(译文,无限带 宽)网络和Lustre (译文,光泽文件系统)系统的机群环境下,TAU (Tuning and Analysis Utilities,译文,调试分析工具)软件的转储过程。

【背景技术】
[0002] 机群是互相连接的多个独立计算机的集合,这些计算机可以是单机或多处理器系 统,如PC或工作站等,每个结点都有自己的存储器、I0(Input/0utput,译文,输入输出)设 备和操作系统。机群对用户和应用来说是一个单一的系统,它可以提供低价高效的高性能 环境和快速可靠的服务等。
[0003] Infiniband网络是新一代服务器I/O和机群内部通信工业标准网络结构。由链 接、交换机、CA (Channel Adaptor,译文,通道适配器)和终端节点组成。其拥塞控制使用 ECN(Explicit Congestion Notification,译文,明确拥塞通知)方法,即在报文头中有一位 专门用来表示网络拥塞与否。参见图1所示,Infiniband网络与终端节点相连的CA又被称 为HCA (Host Channel Adapter,译文,宿主通道适配器),所述HCA提供了使用Infiniband 网络的软件接口。
[0004] Lustre系统是专为机群设计的并彳丁文件存储系统。参见图1所不,Lustre系统由 一个 MDS (Metadata Server,译文,兀数据服务器)、数个 OSS (0b ject Storage Servers,译 文,对象存储服务器)组成,其中,MDS负责文件名、文件路径管理,并响应存储请求,为请求 分配OSS ;0SS负责文件内容存储,存储的单位是条带。
[0005] TAU是可移植的并行程序性能概要和踪迹分析工具。在被监控程序运行时,TAU工 具将产生踪迹数据,并记录到文件系统中。当今机群系统中,大部分数据被写入以Lustre 系统为代表的并行文件中。
[0006] 近年来,随着机群规模的增长,高效的并行程序越来越依靠性能分析软件。性能分 析软件为了获得运行事件信息,此信息被称为踪迹,踪迹被存储到文件系统供事后分析。目 前,数据的存储,数据采集工具多使用并行文件系统,最重要是Lustre系统,程序运行和文 件转储多共享高性能网络,主要是Infiniband网络。由于程序和数据采集竞争系统的网络 和10资源,这些竞争将会影响踪迹文件转储的传输速度。


【发明内容】

[0007] 本发明的目的是针对现有数据采集程序与被TAU监控的程序相互竞争系统资源, 导致插桩后程序运行时间过长,测量得到的数据受到资源竞争的影响,不能完整还原实际 程序运行过程的问题。本发明采用一种对Infiniband网络和Lustre系统拥塞信息进行主 动、被动探测相结合,在无拥塞时进行转储的竞争避免方法。
[0008] 为实现上述目的,本发明提供如下技术方案:在基于Infiniband网络和Lustre系 统中,所述Lustre系统包括有I/O信息统计节点(4)、第一个I/O信息被动收集节点(I)、 第二个I/O信息被动收集节点(2)和第N个I/O信息被动收集节点(3)。所述Lustre系统 中的OSS节点上运行存储信息收集服务S1,产生有IO拥塞信息; MDS 节点运行存储信息收集服务S1,收集所述的/0〗,、,/0,',···,/0,)?构成收集-拥塞信息IO总;
[0009] 当程序执行节点中(5、6、7)的TAU产生的踪迹数据file需要写入时,文件转储服 务S3发出主动探测包request给Lustre系统的MDS节点;然后,MDS节点将收集-拥塞信 息IO总以数据包MDt形式反馈给Infiniband网络拥塞探测服务S2 ;Infiniband网络拥塞探 测服务S2 -方面提取出收集-拥塞信息10,&传输给文件转储服务S3,另一方面采用拥塞判 断条件R -F获取当前的Infiniband网络的拥塞情况Cinf = {a, b},并将所述的Cinf = {a, b} 传输给文件转储服务S3 ;a表示网络拥塞,b表示网络不拥塞;
[0010] 文件转储服务S3对接收到的Cinf = {a,b}和10自,采用资源判断条件L-I来判断 基于Infiniband网络和Lustre系统的资源的使用情况U = {au, bu},au表示资源拥塞,bu 表示资源不拥塞,决定是否在缓存未填满时,提前通知TAU转存踪迹数据file到Lustre系 统中,以避免可能的资源竞争。
[0011] 本发明减少资源竞争的踪迹文件转储方法的优点在于:
[0012] ①本发明方法能够缓解由于资源竞争带来的扩展性问题,提高网络和IO系统所 带来的规模限制。
[0013] ②本发明适用于基于Infiniband网络和Lustre系统搭建的机群系统上,用于减少 由于网络和IO资源竞争产生的误差,更加准确的得到踪迹信息。
[0014] ③本发明方法能够加速转储过程,减少转储对被监控程序带来的入侵,提高整体 运行速度。

【专利附图】

【附图说明】
[0015] 图1是基于Infiniband网络和Lustre系统搭建的机群系统示意图。
[0016] 图IA是MDS节点、OSS节点的IO信息传输示意图。
[0017] 图2是本发明踪迹文件转储的流程图。
[0018] 图2A是本发明拥塞判断条件R-F的流程图。

【具体实施方式】
[0019] 下面将结合附图和实施例对本发明做进一步的详细说明。
[0020] 参见图1所示,基于Infiniband网络和Lustre系统搭建的机群系统,其中,所述 Lustre系统包括有I/O信息统计节点4、第一个I/O信息被动收集节点1、第二个I/O信息 被动收集节点2和第N个I/O信息被动收集节点3。所述的机群系统中包括有第一个程序 执行节点5、第二个程序执行节点6和第N个程序执行节点7。程序执行节点通过运行经 TAU插桩后的程序,用于获得程序运行Trace文件(踪迹文件)。
[0021] 在基于Infiniband网络和Lustre系统中,采用了执行存储信息收集服务步骤 SI、Infiniband网络拥塞探测服务步骤S2和文件转储服务步骤S3来实现减少资源竞争的 Trace文件转储处理。
[0022] 参见图1A、图2所示,所述Lustre系统中的OSS节点上运行存储信息收集服务SI, 产生有IO拥塞信息; MDS节点运行存储信息收集服务S1,收集所述的 …,构成收集-拥塞?目息IO总;
[0023] 参见图1Α、图2、图2Α所示,当TAU产生的踪迹数据file需要写入时,文件转储服 务S3发出主动探测包request给Lustre系统的MDS节点;然后,MDS节点将收集-拥塞信 息IO总以数据包MD t形式反馈给Infiniband网络拥塞探测服务S2 ;Infiniband网络拥塞探 测服务S2 -方面提取出收集-拥塞信息10,&传输给文件转储服务S3,另一方面采用拥塞判 断条件R -F获取当前的Infiniband网络的拥塞情况Cinf = {a, b},并将所述的Cinf = {a, b} 传输给文件转储服务S3 ;a表示网络拥塞,b表示网络不拥塞;
[0024] 参见图1A、图2所示,文件转储服务S3对接收到的Cinf = {a,M和10,,采用资源 判断条件L-I来判断基于Infiniband网络和Lustre系统的资源的使用情况U = {au, bu}, au表示资源拥塞,bu表示资源不拥塞,决定是否在缓存未填满时,提前通知TAU转存踪迹数 据file到Lustre系统中,以避免可能的资源竞争。
[0025] 在本发明中,收集-拥塞信息10,&中的具体内容为OSS节点上运行存储 信息收集服务S1,产生有IO拥塞信息···,/0&,采用集合形式表达为 /Oe = 。所述 IO 拥塞信息 中的 表示第一个 I/O信息被动收集节点1的拥塞信息,/(),k表示第二个I/O信息被动收集节点2的拥塞信 息,/0,.)、、表示第N个I/O信息被动收集节点3的拥塞信息。
[0026] 在本发明中,数据包MDt中包括有收集-拥塞信息IO总、数据包往返时延RTT、数据 包拥塞参数flag,采用集合形式表达为MD t = {10总,RTT,flag}。
[0027] 在本发明中,参见图2A所示,拥塞判断条件R-F是指:首先判断数据包拥塞参数 flag是否为拥塞,当flag为拥塞时,则当前的Infiniband网络记为网络拥塞a ;
[0028] 当flag不为拥塞时,则判断数据包往返时延是否大于等于数据包往返时延阈值, 若RTT彡RTT_,则当前的Infiniband网络记为网络拥塞a ;若RTT < RTT_,则当前的 Infiniband网络记为网络不拥塞b。
[0029] 在本发明中,资源判断条件L-I是指:首先对Cinf = {a,b}进行拥塞情况判断,若 Cinf = {a, b}为网络拥塞a,则基于Infiniband网络和Lustre系统的资源的使用情况为au ;
[0030] 若Cinf= {a,b}为网络不拥塞b,则根据求和的收集-拥塞信息10,& (记为CI/Q)来 判断Lustre系统的拥塞情况;若CI/Q彡C_,则基于Infiniband网络和Lustre系统的资源 的使用情况为资源拥塞au ;若CI/() < Ciwt,则基于Infiniband网络和Lustre系统的资源的 使用情况为资源不拥塞bu。求和的收集-拥塞信息C I/()是指/OiU + …+ /0丄、。
[0031] 本发明的一种减少资源竞争的Trace文件转储方法包括有下列具体的服务步骤:
[0032] 存储信息收集服务步骤Sl
[0033] 在本发明中,使用被动探测技术,通过本地信息的收集和统计,获得IO使用情况。
[0034] Sll :在IO节点上的操作系统中启动IO监控的服务,在IO节点上进行被动监控。
[0035] S12 :在OSS节点进行被动测试,每次有IO申请产生时,记录其磁盘带宽使用率,当 前并行写入的数量以及CPU使用率、内存占用率。
[0036] S13 :统计各节点信息。
[0037] Lustre系统的MDS节点以一定间隔回收OSS节点的监控信息,形成整体使用率的 信息。该整体使用率的信息将作为收集-拥塞信息10, &运行于Infiniband网络拥塞探测服 务S2中。
[0038] Infiniband网络拥塞探测服务步骤S2
[0039] 在本发明中,使用主动探测技术,通过Infiniband探测包,获得网络拥塞情况。
[0040] S21 :收集本地HCA信息,Infiniband的软件接口提供了 HCA的队列长度、发送量、 带宽等本地信息,使用直接读取的方法获得数据;
[0041] S22 :主动探测网络拥塞,需要转储的节点,通过Infiniband向MDS节点发送IO数 据请求包,并记录发送时刻TS。MDS节点收到请求后,立刻回复IO拥塞信息,发起节点记录 接收到信息同时记录接收时刻TR。数据包往返时延RTT = TR-TS与预设阀值RTTw值比较 可以反映网络拥塞情况Cinf= {a,b}。若网络拥塞a,Infiniband会在回复包中把拥塞控制 位flag置为flag = 1 ;若网络不拥塞b,Infiniband会在回复包中把拥塞控制位flag置为 flag = 0。拥塞控制位是网络拥塞情况的另一个特征。
[0042] 文件转储服务步骤S3
[0043] 在本发明中,保持全局缓存,综合网络、IO拥塞情况和缓存情况,进行提前转储。
[0044] S31 :转储服务。在需要转储的节点,运行转储服务。该服务会管理缓存,发送主动 探测包,汇集信息决定转储时机。
[0045] S32 :开始探测时机。探测拥塞需要发送请求包,并调用相关函数以得到系统信息 数据,耗费时间和资源。所以只有在缓存数据达到一定量时,才可以开始探测。Lustre默 认的存储带大小为I. 5M,小于I. 5M会产生一次连接而无法写入足够数据填满一个存储带。 故缓存大小设定为6M,当数据达到I. 5M时,开始第一次探测。反复以某间隔探测,直到缓存 满,随后以1.5M为单位写入文件。
[0046] S33 :转储的时机。当所有资源都未达到拥塞的程度,即IO资源使用率在80%以 下、TR-TS小于阀值并且拥塞控制位为0,可以进行转储而不影响其他使用时,即进行转储。
[0047] S34 :拥塞避免等待时间。等待需要与尝试次数相关的随机时间。该时间借鉴指数 回退算法,最小时间片为〇. 1秒,总时间为时间片与倍数相乘,倍数为尝试次数与10中较小 的数。等待时间为[0,1]的随机数与总时间的乘积。当等待时间为〇时,立刻写入。
[0048] 本发明是一项运行于Infiniband网络和Lustre系统环境下,避免数据采集转储与 被监控程序竞争资源的方法。通过被动收集Lustre系统IO拥塞信息、Infiniband网络设 备拥塞信息,主动探测Infiniband网络整体拥塞信息,使用这些信息决定是否提前转储缓 存文件,以避免资源竞争。最终能够更准确的获取程序运行信息,增强程序的可扩展性。
[0049] 本发明由两部分组成,分别运行在Lustre存储节点和需要文件转储的节点上。
[0050] Lustre存储节点上运行IO数据采集服务,该服务负责监听和记录Lustre节点上 磁盘带宽使用率、并行写入的数量以及CPU使用率、内存占用率。采集服务周期性获取数 据,并返回至MDS节点供后续查询。
[0051] 转储需求的节点上运行文件转储服务,该服务负责缓存管理、转储时机确定和转 储文件。缓存管理包括维护节点级写文件缓存,为每个文件建立一个缓存,并为需要写文件 的程序提供写文件服务。同时为了确定转储时机,转储服务请求IO节点信息,计算系统资 源竞争情况。在系统无竞争情况下,把缓存数据写入Lustre文件系统中。
[0052] 本发明的执行过程为:系统启动后,即在Lustre系统所有存储节点上运行IO数据 采集服务,等待MDS节点周期性的数据请求,采集存储节点磁盘带宽使用率、并行写入的数 量以及CPU使用率、内存占用率,并将资源情况回传 MDS节点。MDS节点则请求并收集所有 信息,并汇总为Lustre系统所有节点硬件使用情况。MDS节点的采集服务则等待转储服务 的IO信息请求,当有请求时MDS节点使用Lustre系统提供的ChangeLog读取近期Lustre 使用情况,作为动态信息,与硬件使用情况一起返回至请求者。
[0053] 所有需要数据转储的节点,在进行数据收集之前,启动数据转储服务。数据转储服 务为每个文件建立3M缓存区。当有数据需要写入文件时,程序调用转储服务的write函 数,其作用是将数据写入转储服务管理的缓存中。当缓存中数据超过I. 5M时,转储服务向 MDS节点发起IO信息查询对话,并记录对话的发起时间。MDS节点返回Lustre软硬件资源 占用情况,转储服务在收到返回的信息后计算RTT。软硬件信息以及RTT与预设的阀值进 行比较,可以得到各种资源是否处于可能出现竞争的状态。如果存在竞争,则计算随机等待 时间,计算方法如下:最小时间片为〇. 1秒,总时间为时间片与倍数相乘,倍数为尝试次数 与10中较小的数。等待时间为[0,1]的随机数与总时间的乘机。随机等待一定时间后再 试。无竞争或缓存满时立刻进行文件转储。转储最小单位为I. 5M,即每次固定写入I. 5M或 3M,不论提前转储时缓存中数据大小,目标是每次建立链接都会写入一存储条,不浪费建立 链接的额外开销。
[0054] 本发明是一种踪迹文件转储策略,所要解决的是如何减少文件转储与被监控程 序产生资源竞争技术问题,该方法通过被动探测Lustre系统的IO使用情况与主动探测 Infiniband网络的使用情况相结合,计算网络和IO资源的拥塞情况,在无拥塞时进行踪迹 文件转储的技术手段,从而实现减少踪迹文件转储与被监控程序资源竞争的情况出现,获 得程序插桩后运行速度更快,踪迹数据更加准确的技术效果。
【权利要求】
1. 一种减少资源竞争的Trace文件转储方法,该方法在基于Infiniband网络和Lustre 系统中运行,所述Lustre系统包括有I/O信息统计节点(4)、第一个I/O信息被动收集节 点(1)、第二个I/O信息被动收集节点(2)和第N个I/O信息被动收集节点(3);其特征在 于:该转储方法执行存储信息收集服务Sl步骤、Infiniband网络拥塞探测服务S2步骤和文 件转储服务S3步骤。 所述Lustre系统中的OSS节点上运行存储信息收集服务S1,产生有IO拥塞信息 ; MDS节点运行存储信息收集服务S1,收集所述的 构成收集-拥塞/[目息IO总; 当TAU产生的踪迹数据file需要写入时,文件转储服务S3发出主动探测包requestT 给Lustre系统的MDS节点;然后,MDS节点将收集-拥塞信息10,&以数据包MDt形式反 馈给Infiniband网络拥塞探测服务S2 ;Infiniband网络拥塞探测服务S2 -方面提取出收 集-拥塞信息10,&传输给文件转储服务S3,另一方面采用拥塞判断条件R-F获取当前的 Infiniband网络的拥塞情况Cinf = {a, b},并将所述的Cinf = {a, b}传输给文件转储服务S3 ; a表不网络拥塞,b表不网络不拥塞; 文件转储服务S3对接收到的Cinf = {a,b}和I0&采用资源判断条件L-I来判断基于 Infiniband网络和Lustre系统的资源的使用情况U = {au, bu},au表示资源拥塞,bu表示 资源不拥塞,决定是否在缓存未填满时,提前通知TAU转存踪迹数据file到Lustre系统中, 以避免可能的资源竞争。
2. 根据权利要求1所述的减少资源竞争的Trace文件转储方法,其特征在于:拥塞判 断条件R-F是指:首先判断数据包拥塞参数flag是否为拥塞,当flag为拥塞时,则当前的 Infiniband网络记为网络拥塞a ; 当flag不为拥塞时,则判断数据包往返时延是否大于等于数据包往返时延阈值, 若RTT彡RTT_,则当前的Infiniband网络记为网络拥塞a ;若RTT < RTT_,则当前的 Infiniband网络记为网络拥塞b。
3. 根据权利要求1所述的减少资源竞争的Trace文件转储方法,其特征在于:资源判 断条件L-I是指:首先对Cinf = {a, b}进行拥塞情况判断,若Cinf = {a, b}为网络拥塞a,则 基于Infiniband网络和Lustre系统的资源的使用情况为au ; 若Cinf = {a, b}为网络不拥塞b,则根据求和的收集-拥塞信息CIA)来判断Lustre系 统的拥塞情况;若CI/()彡Ciwt,则基于Infiniband网络和Lustre系统的资源的使用情况为 au ;若CI/Q < C_,则基于Infiniband网络和Lustre系统的资源的使用情况为bu。
4. 根据权利要求1所述的减少资源竞争的Trace文件转储方法,其特征在于:运行在 Lustre系统的MDS节点和OSS节点上。
【文档编号】H04L29/08GK104378442SQ201410697278
【公开日】2015年2月25日 申请日期:2014年11月26日 优先权日:2014年11月26日
【发明者】李云春, 张天宇, 李巍 申请人:北京航空航天大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1