Machine Learning and Data Statistics Based Scalability Bottleneck Detection
摘要
The continuously expanding problem scale of scientific computing applications has demanded massive parallel computing resources. However, the scalability bottlenecks of parallel programs severely constrain computational efficiency and performance gain. Current MPI parallel program scalability bottleneck detection faces three main issues: inaccurate prediction of the parallel performance inflection at the program level; difficulty in locating the specific bottleneck segments at the segment level; and low efficiency in identifying key performance events from massive data at the performance event level. To address the above issues, we propose the machine learning and data statistics-based scalability bottleneck detection framework (POPP-SOPP-KER). POPP builds a decision tree model with aggregation of segment features to improve prediction accuracy of performance inflection. SOPP uses type-aware feature selection to reduce deviations in segment-level optimal parallelism prediction, precisely locating bottleneck segments. KER recognizes the key events through KL divergence and mutual information correlation-based statistical method, improving the recognizing efficiency. Experimental verifications are conducted on two compute clusters (x86 and ARM, each with 2048 cores). POPP achieves an average accuracy of 70% (x86) and 60% (ARM) in performance inflection prediction, exceeding that of non-segmented methods. SOPP decreases prediction deviation of theoretical segment optimal parallelism by 13.2% (x86) and 11.88% (ARM) compared to using all features. KER effectively recognizes key features within 65 PMCs. By comparing key features based on performance inflection grouping, KER is proven beneficial. The proposed framework employs data-driven approaches for scalability bottleneck detection, providing insights for optimizing the scalability of large-scale applications.