ISCAS OpenIR
syncchecker: detecting synchronization errors between mpi applications and libraries
Chen Zhezhe; Li Xinyu; Chen Jau-Yuan; Zhong Hua; Qin Feng
2012
会议名称2012 IEEE 26th International Parallel and Distributed Processing Symposium, IPDPS 2012
会议录名称Proceedings of the 2012 IEEE 26th International Parallel and Distributed Processing Symposium, IPDPS 2012
页码342-353
会议日期May 21, 2012 - May 25, 2012
会议地点Shanghai, China
收录类别EI
ISBN9780769546759
部门归属(1) Dept. of Computer Science and Engineering Ohio State University United States; (2) Technology Center of Software Engineering Institute of Software Chinese Academy of Sciences China
摘要While improving the performance, nonblocking communication is prone to synchronization errors between MPI applications and the underlying MPI libraries. Such synchronization error occurs in the following way. After initiating nonblocking communication and performing overlapped computation, the MPI application reuses the message buffer before the MPI library completes the use of the same buffer, which may lead to sending out corrupted message data or reading undefined message data. This paper presents a new method called Sync Checker to detect synchronization errors in MPI nonblocking communication. To examine whether the use of message buffers is well synchronized between the MPI application and the MPI library, Sync Checker first tracks relevant memory accesses in the MPI application and corresponding message send/receive operations in the MPI library. Then it checks whether the correct execution order between the MPI application and the MPI library is enforced by the MPI completion check routines. If not, Sync Checker reports the error with diagnostic information. To reduce runtime overhead, we propose three dynamic optimizations. We have implemented a prototype of Sync Checker on Linux and evaluated it with seven bug cases, i.e., five introduced by the original developers and two injected, in four different MPI applications. Our experiments show that Sync Checker detects all the evaluated synchronization errors and provides helpful diagnostic information. Moreover, our experiments with seven NAS Parallel Benchmarks demonstrate that Sync Checker incurs moderate runtime overhead, 1.3-9.5 times with an average of 5.2 times, making it suitable for software testing. © 2012 IEEE.; While improving the performance, nonblocking communication is prone to synchronization errors between MPI applications and the underlying MPI libraries. Such synchronization error occurs in the following way. After initiating nonblocking communication and performing overlapped computation, the MPI application reuses the message buffer before the MPI library completes the use of the same buffer, which may lead to sending out corrupted message data or reading undefined message data. This paper presents a new method called Sync Checker to detect synchronization errors in MPI nonblocking communication. To examine whether the use of message buffers is well synchronized between the MPI application and the MPI library, Sync Checker first tracks relevant memory accesses in the MPI application and corresponding message send/receive operations in the MPI library. Then it checks whether the correct execution order between the MPI application and the MPI library is enforced by the MPI completion check routines. If not, Sync Checker reports the error with diagnostic information. To reduce runtime overhead, we propose three dynamic optimizations. We have implemented a prototype of Sync Checker on Linux and evaluated it with seven bug cases, i.e., five introduced by the original developers and two injected, in four different MPI applications. Our experiments show that Sync Checker detects all the evaluated synchronization errors and provides helpful diagnostic information. Moreover, our experiments with seven NAS Parallel Benchmarks demonstrate that Sync Checker incurs moderate runtime overhead, 1.3-9.5 times with an average of 5.2 times, making it suitable for software testing. © 2012 IEEE.
关键词Communication Computer Operating Systems Distributed Parameter Networks Experiments Libraries Software Testing
语种英语
内容类型会议论文
URI标识http://ir.iscas.ac.cn/handle/311060/15748
专题中国科学院软件研究所
推荐引用方式
GB/T 7714
Chen Zhezhe,Li Xinyu,Chen Jau-Yuan,et al. syncchecker: detecting synchronization errors between mpi applications and libraries[C],2012:342-353.
条目包含的文件
条目无相关文件。
个性服务
推荐该条目
保存到收藏夹
查看访问统计
导出为Endnote文件
谷歌学术
谷歌学术中相似的文章
[Chen Zhezhe]的文章
[Li Xinyu]的文章
[Chen Jau-Yuan]的文章
百度学术
百度学术中相似的文章
[Chen Zhezhe]的文章
[Li Xinyu]的文章
[Chen Jau-Yuan]的文章
必应学术
必应学术中相似的文章
[Chen Zhezhe]的文章
[Li Xinyu]的文章
[Chen Jau-Yuan]的文章
相关权益政策
暂无数据
收藏/分享
所有评论 (0)
暂无评论
 

除非特别说明,本系统中所有内容都受版权保护,并保留所有权利。