Automatic run-time extraction of communication graphs from multithreaded applications

Embedded system synthesis, multiprocessor synthesis, and thread assignment policy design all require detailed knowledge of the runtime communication patterns among different threads or processes. Researchers have commonly relied on manual estimation, compile- time analysis, or synthetic benchmarks when developing and evaluating synthesis algorithms and thread assignment policies. In a more ideal world, it would be possible to quickly and easily determine the run-time communication properties of large commercial and academic multithreaded applications. This article describes a fully-automated method of extracting run-time communication graphs from multithreaded applications. The resulting graphs may be used to better understand, design, and synthesize application-specific hardware-software systems. The proposed graph extraction method is implemented as a module within the Simics multiprocessor simulator. It presently supports the analysis of arbitrary multithreaded applications running on the Linux operating system. This software is called CETA. It is freely available for academic and non-profit use.

[1]  Shuvra S. Bhattacharyya,et al.  CHARMED: a multi-objective co-synthesis framework for multi-mode embedded systems , 2004, Proceedings. 15th IEEE International Conference on Application-Specific Systems, Architectures and Processors, 2004..

[2]  Petru Eles,et al.  Iterative schedule optimization for voltage scalable distributed embedded systems , 2004, TECS.

[3]  Viktor K. Prasanna,et al.  Energy-balanced task allocation for collaborative processing in networked embedded systems , 2003, LCTES.

[4]  Wayne H. Wolf,et al.  TGFF: task graphs for free , 1998, Proceedings of the Sixth International Workshop on Hardware/Software Codesign. (CODES/CASHE'98).

[5]  Yen-Kuang Chen,et al.  The energy efficiency of CMP vs. SMT for multimedia workloads , 2004, ICS '04.

[6]  J. Larus,et al.  Shared-memory performance profiling , 1997, PPOPP '97.

[7]  Donald E. Thomas,et al.  A simulation environment for hardware-software codesign , 1995, Proceedings of ICCD '95 International Conference on Computer Design. VLSI in Computers and Processors.

[8]  Emden R. Gansner,et al.  Drawing graphs with dot , 2006 .

[9]  Niraj K. Jha,et al.  Task graph transformation to aid system synthesis , 2002, 2002 IEEE International Symposium on Circuits and Systems. Proceedings (Cat. No.02CH37353).

[10]  Pen-Chung Yew,et al.  The impact of synchronization and granularity on parallel systems , 1990, ISCA '90.

[11]  Luca Benini,et al.  Cycle-accurate simulation of energy consumption in embedded systems , 1999, DAC '99.

[12]  Jürgen Becker,et al.  Run-time monitoring of communication activities in a rapid prototyping environment , 1998, Proceedings. Ninth International Workshop on Rapid System Prototyping (Cat. No.98TB100237).

[13]  Jeffrey S. Vetter,et al.  Dynamic statistical profiling of communication activity in distributed applications , 2002, SIGMETRICS '02.

[14]  Viktor K. Prasanna,et al.  Energy-balanced task allocation for collaborative processing in networked embedded systems , 2003 .

[15]  Rudy Lauwereins,et al.  Energy-Aware Runtime Scheduling for Embedded-Multiprocessor SOCs , 2001, IEEE Des. Test Comput..

[16]  Shuvra S. Bhattacharyya,et al.  CHARMED: a multi-objective co-synthesis framework for multi-mode embedded systems , 2004 .

[17]  Alice C. Parker,et al.  Synthesis of Application-Specific Heterogeneous Multiprocessor Systems , 1992, [1992] Proceedings the 19th Annual International Symposium on Computer Architecture.

[18]  Radu Marculescu,et al.  Energy-aware mapping for tile-based NoC architectures under performance constraints , 2003, ASP-DAC '03.

[19]  Alice C. Parker,et al.  SOS: Synthesis of application-specific heterogeneous multiprocessor systems , 2001, J. Parallel Distributed Comput..

[20]  Mahmut T. Kandemir,et al.  Using complete machine simulation for software power estimation: the SoftWatt approach , 2002, Proceedings Eighth International Symposium on High Performance Computer Architecture.

[21]  Håkan Grahn,et al.  SimICS/Sun4m: A Virtual Workstation , 1998, USENIX Annual Technical Conference.