标题：Parallel computing of SNiPER based on Intel TBB
作者：Zou, J. H.; Lin, T.; Li, W. D.; Huang, X. T.; Li, T.; Deng, Z. Y.; Cao, G. F.; You, Z. Y.
作者机构：[Zou, J. H.; Lin, T.; Li, W. D.; Deng, Z. Y.; Cao, G. F.] Chinese Acad Sci, Inst High Energy Phys, Beijing, Peoples R China.; [Huang, X. T.; Li, T.] 更多
会议名称：18th International Workshop on Advanced Computing and Analysis Techniques in Physics Research (ACAT)
会议日期：AUG 21-25, 2017
来源：18TH INTERNATIONAL WORKSHOP ON ADVANCED COMPUTING AND ANALYSIS TECHNIQUES IN PHYSICS RESEARCH (ACAT2017)
摘要：SNiPER is a general purpose offline software framework for high energy physics experiments. During the development, we pay more attention to the requirements of neutrino and cosmic ray experiments. And now it has been adopted by many experiments. It is necessary for us to implement parallel computing to improve the data processing efficiency. Intel Threading Building Blocks ( TBB), as a powerful high level library, emancipates us from trivial and complex details of raw threads. In this proceeding, we implemented an event level parallel computing wrapper for the original serial SNiPER based on Intel TBB. We have taken parallel computing into account at the beginning of SNiPER's design, it is possible to achieve multithreading in a non-invasive way. The SNiPER kernel module and Intel TBB are absolutely de-coupled. Features of multithreading are transparent to most users, except a few conventions such as global variables. This approach will significantly reduce the costs of migration from serial to parallel computing. However, it is more complicated for critical resources handling, such as disk I/O and memory management. There are also some attempts for these challenges.