CETA : Communication Extraction from Multithreaded Applications

Northwestern University
Electrical Engineering and Computer Science
Ms. Ai-Hsin Liu
Prof. Robert Dick

Summary

Download

Publication

Contact

Summary

simics console CETA is 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. CETA is composed of a Simics module for extracting dataflow information during the simulation of multithreaded Linux applications and a number of scripts that implement graph transformations. It presently supports the analysis of arbitrary multithreaded applications running on the Linux operating system. It is freely available for academic and non-profit use.
CETA tracing result The communication patterns among tasks represented in the form of graphs are are a useful form of input for embedded system synthesis, multiprocessor synthesis, and hardware-software co-synthesis algorithms. CETA is capable of extracting and graphically representing the communication patterns of complex multithreaded applications
dataflow graph CETA provides three types of graphs and several graph transformations. The three types of graphs are aggregate graphs, phase partitioned graphs, and directed acyclic graphs. These graphs represent thread communication patterns. It is also possible to set threshold values to filter out insignificant data flow. It is also possible to filter by process ID.

top


Downloads

The version below contains source code in C++ and Python scripts for graph generation and transformation.

How to build CETA module, please see README.

top


Publications

top


Page maintained by Ai-Hsin Liu.