The update of BEPCII and BESIII has been completed and massive data is being analyzed. BESIII offline software is the foundation of the data analysis, and its performance determines the progress and results. With the development of computing technology, multi-core computing platform has become an inevitable trend. However, the desgin and development of the the current BESIII offline software environment is based on the traditional single-core processor. In the system, the unit of task scheduling and execution is "job". The granularity is too big, which leads to the waste of multicore computing resources, such as CPU, memory, hard disk and network bandwidth. To solve these problems, this project will have a deep research on the fine-grained parallel execution of computing tasks and job scheduling policy. By exploiting the advanced technoligies of modern operating system, such as memory accounting, Copy-On-Write, Kernel Shared Memeory and so on, the project proposes the solution of "node scheduling policy" and "pilot job execution" compared with the traditional job scheduling methods to improve the efficiency of job scheduling and execution. The research on physical software and task scheduling system will substantially increase the efficiency of massive data analysis, which helps BESIII experiment to achieve high level physics results faster and earlier.
BEPCII和BESIII的重大升级改造工程已经完成,数据分析工作正在全面展开。BESIII离线物理软件是数据分析的基础和关键,其性能决定着数据分析的进度和结果。随着计算技术的发展,多核计算机平台已经成为必然的趋势。然而,目前的BESIII离线物理软件的开发和运行基于传统的单核处理器环境,系统中基本的调度和运行单元是"作业",粒度过粗,导致计算任务不能很好的利用多核计算资源,造成CPU、内存、硬盘与网络带宽等资源的浪费。针对这些问题,本项目基对计算任务的细粒度进程级运行与调度进行研究,利用内存记账、现代操作系统的CoW、KSM等技术,提出"节点调度策略"与"先导作业执行",改变传统的"作业调度"方法,以提高作业调度与运行效率。通过对物理软件和任务调度系统的研究,本项目将大幅提高物理数据的分析效率,为BESIII实验早出快出高质量的物理成果奠定坚实的基础。
BEPCII 和BESIII 的重大升级改造工程完成后,数据分析工作全面展开。BESIII 离线物理软件是数据分析的基础和关键,其性能决定着数据分析的进度和结果。随着计算技术的发展,CPU核越来越多。然而,早期的BESIII 离线物理软件的开发和运行基于传统的单核处理器环境,一个作业只能在一个CPU核上运行,导致计算任务不能很好的利用多核计算资源,造成CPU、内存、硬盘与网络带宽等资源的浪费。针对这些问题,本项目开展了计算任务并行执行与调度、存储优化等技术研究,实现了进程级的BESIII离线数据处理模型。经过三年多的研究,项目完成了预期目标。. 本项目的主要研究内容包括:BESIII 离线物理软件的框架与运行机制、多核平台上的编程技术、作业调度策略研究、分布式文件系统与网络优化研究。项目首先分析BESIII离线物理软件,找到其中可以并行的代码部分。BESIII离线物理本质上是通过算法管理器、应用管理器和服务管理器的组件管理机制来实现的。本项目通过应用管理器实现多进程任务并行执行。多核平台上编程技术包括多进程或多线程、OpenMP、MPI 等技术。结合BESIII离线数据处理软件的架构,本项目采用了多进程模式。高能物理计算的传统模式多采用单作业单进程,即一个进程仅能使用一个CPU核。本项目引入了单作业多进程模式,因此在作业调度上也做了诸多优化。多进程的引入,计算效率更高,对数据IO和网络文件系统提出了更多的需求,因此本项目对网络文件系统特别是数据分布及性能优化进行了研究。. 项目开展了大量真实数据的性能和功能测试。测试数据表明,在多核机器上运行一个多进程作业比多个独立的单进程作业,节约内存消耗10%以上。在机器正常性能范围内,作业运行效率随着进程数的增加呈线性增长。项目还进行了物理结果确认,实验使用串行程序和并行程序对同一批原始数据进行分析。测试表明两套分析结果完全相同,证明了使用多进程并行程序可以得到正确的物理结果。. 综上所述,本项目在执行期间对多核平台上并行数据处理相关技术进行了研究,实现了多进程的BESIII离线数据处理模型,有效降低了内存的消耗,提升了计算效率。项目在多核计算方法、节点调度策略等方面具有创新性,同时还有很高的实际应用价值。
{{i.achievement_title}}
数据更新时间:2023-05-31
玉米叶向值的全基因组关联分析
论大数据环境对情报学发展的影响
正交异性钢桥面板纵肋-面板疲劳开裂的CFRP加固研究
硬件木马:关键问题研究进展及新动向
环境类邻避设施对北京市住宅价格影响研究--以大型垃圾处理设施为例
桌面网格平台上的BESIII离线物理软件和调度策略研究
64位系统上BESIII离线物理软件的研究
基于细粒度的BESIII离线物理软件事例服务以及其调度算法研究
BESIII实验离线软件发展与研究