当前位置: X-MOL 学术Future Gener. Comput. Syst. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
An approach for realistically simulating the performance of scientific applications on high performance computing systems
Future Generation Computer Systems ( IF 6.2 ) Pub Date : 2019-10-25 , DOI: 10.1016/j.future.2019.10.007
Ali Mohammed , Ahmed Eleliemy , Florina M. Ciorba , Franziska Kasielke , Ioana Banicescu

Scientific applications often contain large, computationally-intensive, and irregular parallel loops or tasks that exhibit stochastic behavior leading to load imbalance. Load imbalance often manifests during the execution of parallel scientific applications on large and complex high performance computing (HPC) systems. The extreme scale of HPC systems on the road to Exascale computing only exacerbates the loss in performance due to load imbalance. Dynamic loop self-scheduling (DLS) techniques are instrumental in improving the performance of scientific applications on HPC systems via load balancing. Selecting a DLS technique that results in the best performance for different problem and system sizes requires a large number of exploratory experiments. Currently, a theoretical model that can be used to predict the scheduling technique that yields the best performance for a given problem and system has not yet been identified. Therefore, simulation is the most appropriate approach for conducting such exploratory experiments in a reasonable amount of time. However, conducting realistic and trustworthy simulations of application performance under different configurations is challenging. This work devises an approach to realistically simulate computationally-intensive scientific applications that employ DLS and execute on HPC systems. The proposed approach minimizes the sources of uncertainty in the simulative experiments results by bridging the native and simulative experimental approaches. A new method is proposed to capture the variation of application performance between different native executions. Several approaches to represent the application tasks (or loop iterations) are compared to establish their influence on the simulative application performance. A novel simulation strategy is introduced that applies the proposed approach, which transforms a native application code into simulative code. The native and simulative performance of two computationally-intensive scientific applications that employ eight task scheduling techniques (static, nonadaptive dynamic, and adaptive dynamic) are compared to evaluate the realism of the proposed simulation approach. The comparison of the performance characteristics extracted from the native and simulative performance shows that the proposed simulation approach fully captured most of the performance characteristics of interest. This work shows and establishes the importance of simulations that realistically predict the performance of DLS techniques for different applications and system configurations.



中文翻译:

在高性能计算系统上实际模拟科学应用程序性能的方法

科学应用程序通常包含大型,计算量大且不规则的并行循环或任务,这些循环或任务表现出随机行为,从而导致负载不平衡。在大型复杂的高性能计算(HPC)系统上执行并行科学应用程序期间,经常会出现负载不平衡的情况。在Exascale计算之路上,HPC系统的极端规模只会加剧由于负载不平衡而导致的性能损失。动态环路自调度(DLS)技术有助于通过负载平衡提高HPC系统上科学应用程序的性能。选择DLS技术以针对不同的问题和系统大小实现最佳性能需要大量的探索性实验。目前,尚未确定可用于预测对给定问题和系统产生最佳性能的调度技术的理论模型。因此,模拟是在合理的时间内进行此类探索性实验的最合适方法。但是,在不同配置下进行逼真的,可信赖的应用程序性能仿真是一项挑战。这项工作设计了一种方法逼真的模拟使用DLS并在HPC系统上执行的计算密集型科学应用程序。所提出的方法通过将本机和模拟实验方法相结合,将模拟实验结果中的不确定性源降至最低。提出了一种新方法来捕获不同本机执行之间应用程序性能的变化。比较了几种表示应用程序任务(或循环迭代)的方法,以确定它们对模拟应用程序性能的影响。引入了一种新颖的仿真策略,该策略应用了所提出的方法,该策略将本地应用程序代码转换为仿真代码。两个采用八种任务调度技术(静态,非自适应动态,和自适应动态)进行比较,以评估该仿真方法的真实性。从原始性能和仿真性能中提取的性能特征的比较表明,所提出的仿真方法完全捕获了大多数感兴趣的性能特征。这项工作表明并确立了仿真的重要性,该仿真可以现实地预测DLS技术针对不同应用程序和系统配置的性能。

更新日期:2019-10-25
down
wechat
bug