如何检查gather schema statsR

博客访问: 1266495
博文数量: 287
博客积分: 10141
博客等级: 上将
技术积分: 2951
注册时间:
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
MARMOT简介――一个MPI程序检测分析工具
(C) icymoon@NKU
$Date: <st2:chsdate w:st="on" IsROCDate="False" IsLunarDate="False" Day="30" Month="4" Year="-4-30
0.并行程序编程与分析调试的困难
除了串行程序的所有问题之外,MPI并行程序还会有一些其它的问题存在:
(1)MPI程序的复杂性
显然,并行程序要比串行程序难写,比如,一些不当的消息传递方式可能导致死锁;多进程之间的协同工作(任务的映射与分发等)导致并行程序比串行程序更难于驾驭。而且,不同版本的MPI实现中一些细节上的差异也会使问题变得更加复杂,比如,程序的可移植性。
(2)调试并行程序的困难
  在一个gdb受到广泛赞誉的时代,调试并行程序仍然是一个有难度的问题。当不同的进程运行于不同的物理节点上的时候,单一节点上的一个debuger是无法知道进程要等待的消息何时才会到达的,也难于知道其它相关进程的运行情况(在某些程序中这是不必要的,但是在大多数程序中,这是需要的)。
1.并行程序调试工具简介
目前为止,有几种不同的思路来做并行程序的调试器:
(1)扩展传统的调试工具,对每个进程都起动一个调试器。像Totalview, DDT,p2d2(这几个都不是free的),还有mpigdb,是以gdb做为后台的。
(2)提供一个MPI库的调试版。像mpich那样,检测内部错误,也检查用户的误用(比如类型不匹配等问题)。
(3)开发单独的工具来检查MPI应用程序的问题。MPI-CHECK, Umpire,还有MARMOT。MPI_CHECK目前支持fortran,而Umpire只限于共享内存的平台。
2.MARMOT简介
2.1 作者&支持
支持:欧洲项目支持。
2.2 设计目标&主要功能
Portability: 检查程序是否遵循MPI标准,以确认程序能运行于任何平台。
Scalability: 不需要用户干涉而使调试器在多个进程中运行。
Reproducibility: 检测可能的竞态条件与死锁。
2.3 设计结构图(出自[3])
500)this.width=500;" border=0>
3.对MPI程序的检查内容
  MARMOT使用一个额外的进程做调试进程,不需要更改任何应用程序的源码,而是通过MPI的“profiling”接口(MPI_PCONTROL)来截获MPI调用然后进行分析。
(1)MPI环境(MPI_Init, MPI_Get_processor_name, MPI_Finalize):
检查在MPI_Init前和MPI_Finalize之后是否有不恰当的MPI调用,以及MPI_Init是否被多次调用。目前为止,对MPI_Get_processor_name没有任何检查。
(2)通信环境(MPI_Comm_size, MPI_Comm_rank, MPI_Barrier):
&&& 检查一个MPI通信域是否合法,比如不能用MPI_COMM_NULL,如果是用户自定义的通信域,要看创建得是否合适并且在使用时没被释放掉。
(3)数据类型的构造(MPI_Type_extent, MPI_Type_struct, MPI_Type_hvector, MPI_Type_commit):
  检测调用参数的类型是否合法,对于MPI_Type_struct, MPI_Type_hvector,还要检查数据长度与个数是否大于0。还要防止MPI_Type_commit重复递交已经递交过的数据类型。
(4)点对点通信(MPI_Sent, MPI_Recv, MPI_Sendrecv):
  检查调用参数是否合法,包括通信域、标识、数据类型、数量,源/目标进程等。数据类型不能是MPI_DATATYPE_NULL,数据的数量与长度也不能小于或等于0,标识与进程号也不可以超出范围。
&&& 还有一个要考虑的问题是不同的MPI实现中,发送与接收消息(标准模式)给的缓冲区大小不同,这就给程序的可移植性带来问题。所以,最好不要过分依赖于MPI实现中给出的缓冲区。
(5)其它一些操作(MPI_Bcast, MPI_Reduce, MPI_Gather, MPI_Gatherv, MPI_Scatterv):
  除了检查(4)中提到的参数外,还要检查root进程是否合法,对一MPI_Reduce,还得检查operator是否合法,而对于MPI_Gatherv和MPI_Scatterv,要检查偏移量。
&&& 除了上述调用外,MARMOT支持了所有MPI-1.2标准中的调用,但是并没有实现所有情况的检测(这太困难了)。
目前,关于死锁的检测采用的是超时机制,由调试服务进程等待并给出警告。
对于竞态条件,则列出所有的源进程调用,比如要从MPI_ANY_SOURCE接收消息的时候。MARMOT不会记录并追踪这些问题。
从测试结果来看,这样的分析调试工具效率还是很不错的。
4.参考文献
[1] MPI Application Development Using The Analysis Tool MARMOT
[3] MARMOT- MPI Analysis and Checking Tool
5.下载地址:
阅读(2402) | 评论(0) | 转发(0) |
相关热门文章
给主人留下些什么吧!~~
请登录后评论。collect 和gather 在语法上怎么区分啊?
collect 和gather的英语语法:  collect 和gather都有“收集”的意思.但是,gather 指把分散的东西集中在一个地方,比方收集庄稼、树叶、花草等等;collect 则常用来指按计划或者为了某个特定的目的把东西经过仔细挑...
为您推荐:
其他类似问题
扫描下载二维码检字的解释---在线新华字典
jiǎn :&&&&&&&&&&&&&&&&
& &| &| &| &|
基本解释:
检 (z) jiǎn 查:检查。检测。检讨。检举。检校(jiào )。检修。检索。检察。 注意约束(言行):检点(a.注意约束言行,如“参加宴会时连吃带拿,太不检检了”;b.查看是否符合,如“把行李检检一遍”)。失检。 古代官名,掌修国史,位次编修。 姓。
笔画数:11; 部首:木; 笔顺编号:
详细解释:
jiǎn 【名】 (形声。从木,佥(qiān)声。本义:书匣上的标签) 同本义〖bookmark〗 检,书署也。――《说文》。按,今字作签。 辄皂囊施检。――《后汉书?公孙瓒传》 又如:检封(缄封,封藏);检素(封好的信,书信) 法式,法度〖statutes〗 检,法度也。――《苍颉篇》 然物有恒姿,而思无定检。――《文心雕龙?物色》 又如:检式(法式;制度);检押(也作“检柙”,“检狎”。规矩,法度;或匡正) 品行;节操〖conduct〗 初,朗少时虽涉猎文学,然不治素检,以吏能见称。――《三国志》
检 z jiǎn 【动】 约束,限制〖restrainoneself〗 德亡首褒不检。――《汉书?王莽传》。注:“局之。” 自此致身绳检外,肯教世路日兢兢。――司徒空《退栖》 又如:检束(整顿好行装);检(检点,整饬);检邪(制止邪气);检勒(检点约束);检局(约束,节制) 考查,察验〖inspect〗 骠骑执法以检下。――《后汉书?周黄徐姜申屠传》。注:“犹察也。” 又如:检还(查点清楚后归还);抄检(搜查,查抄);检尸(验尸);检视(检查,料理);检详(审查考核) 拣选,挑出〖select〗。如:检举(选拔;举荐) 翻阅,查阅〖check〗。如:检卷(检阅文书案卷);检书(翻阅书籍);检量(查阅斟酌) 收拾,整理〖putinorder〗。如:检场(收拾场地;收拾场地的人);检幅(修整边幅);检饬(整治);检晒(整理翻晒) 通“敛”。收敛,约束言行;收聚〖gather〗 检身若不及。――《书?伊训》。《正义》云:检,谓自摄敛也。 狗彘食人食而不知检。――《孟子?梁惠王上》 此数检百里之地也。――《管子?山权数》 检 z jiǎn 【形】 端正的〖upright〗。如:检正(端正的操行);检著(正大精辟);检才(坏蛋;滑头) 有法度的〖lawful〗。如:检检(有法度的样子)
检波 jiǎnbō 〖detection〗把被调制波或电流转换成原来的调制波或电流 检测 jiǎncè 〖checkandmeasure〗检查并进行测试 检测手段完备 检查 jiǎnchá 〖review〗∶查看;查考 首先检查你自己的良心 〖self-criticism〗∶检讨 自我检查 检察 jiǎnchá 〖procuratorialwork〗∶检审被检举的犯罪的事实 〖examine〗∶检查;稽查 检察官 jiǎncháguān 〖juged'publicprocurator〗负责刑事案件的法官,他负责接受控告、讯问当事人及证人,进行调查并提起公诉 检察院 jiǎncháyuàn 〖procuratorate〗国家机关,有审查批准逮捕、决定起诉并出席法庭支持公诉的职能 检点 jiǎndiǎn 〖examine〗∶查看;查点 检点物品 〖keepwatchover〗∶言行谨慎 言行有失检点 检校 jiǎnjiào 〖check〗审查核对;核实 检举 jiǎnjǔ 〖report(anoffence)totheauthorities〗∶向有关部门或组织揭发违法、犯罪行为 检举逃犯 〖recommend〗∶荐拔 检漏 jiǎnlòu 〖repairtheleakypartofaroof〗∶检修房顶漏雨部分 〖leak〗∶检查泄漏 管道检漏 检录 jiǎnlù 〖check〗比赛时负责点名并带领运动员入场比赛 检录员 检束 jiǎnshù 〖regulate〗检点约束 检索 jiǎnsuǒ 〖recall〗检查索取所需要的文字或资料 检讨 jiǎntǎo 〖self-examineone'sownmistakes〗∶找出缺点错误,做自我批评 〖check〗∶查看;搜检 检修 jiǎnxiū 〖examineandrepair〗对机器进行检验与修理 检验 jiǎnyàn 〖inspect〗检查并验证 检验产品 检疫 jiǎnyì 〖quarantine〗为防止传染病蔓延,对可能成为传染源的人员、交通工具、物资等采取的隔离观察、检查、消毒等措施 检阅 jiǎnyuè 〖lookover〗∶翻检阅读 空空道人…将这《石头记》再检阅一遍。――《红楼梦》 〖muster〗∶高级首长在军队或群众队伍面前举行检验仪式 检阅陆、海、空三军仪仗队 检字法 jiǎnzìfǎ 〖indexingsystemforChinesecharacters〗按照字词排列次序在词典、字典或其他工具书里查找所需字词的方法
相关词语:
版权所有 在线汉语字典 &&浙ICP备号&CopyRight &copy
, All rights reserved.
数据恢复·紧急救援·联系我们:手机: 邮件:|MSN联系:

我要回帖

更多关于 scatter gather 的文章

 

随机推荐