Workload Characterization Of Multithreaded Applications On Multicore Architectures

Multicore architectures are now available for a wide range of high performance applications, ranging from embedded systems to large scale servers deployed in cloud environments. Multicore architectures are usually subject to two conflicting goals: obtaining a full utilization of the cores while achieving given performance objectives, such as throughput, response time or reduced energy consumption. Moreover, there is a strong interdependence between the software characteristics of the applications, and the underlying CPU architecture. In this scenario, simulation and analytical techniques can provide solid tools to properly design the considered class of systems: however, properly characterize the workload on multithreaded application in multicore environment is not an easy task, and thus is an hot research topic. In this paper we present several models, of increasing complexity, that can characterize multithreaded applications running on multicore architectures.

[1]  Mauro Iacono,et al.  Performance evaluation of NoSQL big-data applications using multi-formalism models , 2014, Future Gener. Comput. Syst..

[2]  Ludmila Cherkasova,et al.  Measuring CPU Overhead for I/O Processing in the Xen Virtual Machine Monitor , 2005, USENIX ATC, General Track.

[3]  Mor Harchol-Balter,et al.  ATLAS: A scalable and high-performance scheduling algorithm for multiple memory controllers , 2010, HPCA - 16 2010 The Sixteenth International Symposium on High-Performance Computer Architecture.

[4]  M. Thomas Queueing Systems. Volume 1: Theory (Leonard Kleinrock) , 1976 .

[5]  Daniel A. Menascé,et al.  Virtualization: Concepts, Applications, and Performance Modeling , 2005, Int. CMG Conference.

[6]  Mauro Iacono,et al.  Exploiting mean field analysis to model performances of big data architectures , 2014, Future Gener. Comput. Syst..

[7]  Mauro Iacono,et al.  Modeling performances of concurrent big data applications , 2015, Softw. Pract. Exp..

[8]  Fang Liu,et al.  Understanding how off-chip memory bandwidth partitioning in Chip Multiprocessors affects system performance , 2010, HPCA - 16 2010 The Sixteenth International Symposium on High-Performance Computer Architecture.

[9]  Pietro Piazzolla,et al.  End-to-End Performance of Multi-core Systems in Cloud Environments , 2013, EPEW.

[10]  Samuel Kounev,et al.  Analysis of the Performance-Influencing Factors of Virtualization Platforms , 2010, OTM Conferences.

[11]  Virgílio A. F. Almeida,et al.  Performance Models for Virtualized Applications , 2006, ISPA Workshops.

[12]  Amer Diwan,et al.  The DaCapo benchmarks: java benchmarking development and analysis , 2006, OOPSLA '06.

[13]  Dimitrios S. Nikolopoulos,et al.  Programming Multiprocessors with Explicitly Managed Memory Hierarchies , 2009, Computer.

[14]  Pietro Piazzolla,et al.  Consolidation and Replication of VMs Matching Performance Objectives , 2012, ASMTA.

[15]  Dimitrios S. Nikolopoulos,et al.  On-chip communication and synchronization mechanisms with cache-integrated network interfaces , 2010, Conf. Computing Frontiers.

[16]  Pietro Piazzolla,et al.  Flexible CPU Provisioning in Clouds: A New Source of Performance Unpredictability , 2012, 2012 Ninth International Conference on Quantitative Evaluation of Systems.

[17]  Giuseppe Serazzi,et al.  The JMT Simulator for Performance Evaluation of Non-Product-Form Queueing Networks , 2007, 40th Annual Simulation Symposium (ANSS'07).

[18]  Yale N. Patt,et al.  Utility-Based Cache Partitioning: A Low-Overhead, High-Performance, Runtime Mechanism to Partition Shared Caches , 2006, 2006 39th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO'06).

[19]  G. Amdhal,et al.  Validity of the single processor approach to achieving large scale computing capabilities , 1967, AFIPS '67 (Spring).