...
首页> 外文期刊>Automated software engineering >Automatic performance prediction of multithreaded programs: a simulation approach
【24h】

Automatic performance prediction of multithreaded programs: a simulation approach

机译:多线程程序的自动性能预测:一种仿真方法

获取原文
           

摘要

AbstractThe performance of multithreaded programs is often difficult to understand and predict. Multiple threads engage in synchronization operations and use hardware simultaneously. This results in a complex non-linear dependency between the configuration of a program and its performance. To better understand this dependency a performance prediction model is used. Such a model predicts the performance of a system for different configurations. Configurations reflect variations in the workload, different program options such as the number of threads, and characteristics of the hardware. Performance models are complex and require a solid understanding of the program’s behavior. As a result, building models of large applications manually is extremely time-consuming and error-prone. In this paper we present an approach for building performance models of multithreaded programs automatically. We employ hierarchical discrete-event models. Different tiers of the model simulate different factors that affect performance of the program, while interaction between the model tiers simulates mutual influence of these factors on performance. Our framework uses a combination of static and dynamic analyses of a single representative run of a system to collect information required for building the performance model. This includes information about the structure of the program, the semantics of interaction between the program’s threads, and resource demands of individual program’s components. In our experiments we demonstrate that models accurately predict the performance of various multithreaded programs, including complex industrial applications.
机译: Abstract 多线程程序的性能通常很难理解和预测。多个线程参与同步操作并同时使用硬件。这导致程序的配置与其性能之间存在复杂的非线性依赖性。为了更好地理解这种依赖性,使用了性能预测模型。这样的模型预测了针对不同配置的系统性能。配置反映了工作量的变化,不同的程序选项(例如线程数)和硬件特性。性能模型非常复杂,需要对程序的行为有深入的了解。结果,手动构建大型应用程序的模型非常耗时且容易出错。在本文中,我们提出了一种自动构建多线程程序性能模型的方法。我们采用分层的离散事件模型。模型的不同层模拟影响程序性能的不同因素,而模型层之间的交互模拟这些因素对性能的相互影响。我们的框架使用对系统的单个代表运行的静态和动态分析的组合来收集构建性能模型所需的信息。其中包括有关程序结构,程序线程之间交互的语义以及各个程序组件的资源需求的信息。在我们的实验中,我们证明了模型可以准确预测各种多线程程序的性能,包括复杂的工业应用。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号