Tutorials:SynchroTrace Sigil IISWC 2016

From VLSILab
Revision as of 16:29, 22 September 2016 by Scott (talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

IEEE International Symposium on Workload Characterization (IISWC), 2016

September 25-27, Providence, Rhode Island, USA

Sigil2 and SynchroTrace: Flexible Workload Profiling and Fast Memory-NoC Simulation


Dr. Mark Hempstead, Tufts University

Dr. Baris Taskin, Drexel University

Karthik Sangaiah, Drexel University

Michael Lui, Drexel University

Topic Outline

In this tutorial, we discuss the SynchroTrace simulation framework -- a fast trace-driven simulation tool for large design space exploration. The tutorial discusses the two major components of the framework: the trace generation tool, Sigil2, and the architectural simulator, SynchroTraceGen.


Current architectures trend towards more cores, including ASIC IPs, general purpose CPUs, and GPUs. Understanding how these cores communicate and interact with each other will be critical to extracting the most performance and efficiency out of future architectures. The Drexel VLSI & Architecture Lab has developed a set of tools are required to enable this by extracting information on how cores communicate. Our proposed solutions are Sigil, a tool to capture platform-independent communication, and SynchroTrace, a framework which extends Sigil and adds mechanisms to enable simulation of future systems.

In this tutorial we discuss the implementation of our tools and also demonstrate the example use-cases.

The Sigil tool is written to capture and classify computation operations, communication edges between functions/threads, and intercept synchronization operations in threads; Sigil data give insight into the true costs that exist within a workload. This enables data-driven design decisions and analysis in designing future systems. We discuss how a Shadow memory implementation of Sigil can capture platform-independent data and also briefly discuss how the data can be applied to perform HW/SW partitioning.

The SynchroTrace simulation framework utilizes Sigil's platform-independent traces to quickly explore a design space. Synchronization aware traces and replay of those traces, instead of single-threaded deterministic traces, enables accurate simulation of communication bound architectures. With the addition of fast trace-driven simulation, SynchroTrace quickly iterates over a large design space and assists with design decisions such as NoC design and memory models. We discuss the intercept mechanism by which the Sigil tool is able to capture synchronization constructs. We will also discuss and demonstrate SynchroTrace's trace capture and simulation mechanisms in detail.


  1. Overview and welcome
  2. Sigil; a Communication-aware workload profiling tool (45 minutes)
    1. Trace capture
    2. Running Sigil
    3. HW/SW partitioning example
    4. Example on running post-processing
  3. SynchroTrace (45 minutes)
    1. SynchroTraceGen: a Sigil extension
    2. SynchroTraceGen trace format
    3. Generating traces
    4. SynchroTrace Replay
    5. Replaying traces
    6. Results from paper: Speedy, yet accurate simulation
  4. Hands-on Sigil
    1. Downloading and installing Sigil
    2. Running Sigil and interpreting output
    3. Running post-processing and parsing
  5. Hands-on SynchroTrace
    1. Downloading and installing SynchroTrace
    2. Running Sigil and interpreting trace generation
    3. Running Replay and understanding Replay output

Related Media and Links

SynchroTrace and Sigil Download