NoCVision: A Network-on-Chip Dynamic Visualization Solution http://nocvision.eecs.umich.edu Vaibhav Gogte†, Doowon Lee†, Ritesh Parikh* and Valeria Bertacco† †University of Michigan *Intel
Why visualization? Architectures are moving toward heterogeneous computing Future NoCs need to support wide range of complex IPs We need a tool to help explore complex NoCs Snapdragon 810 - 2014 Intel i7 980X - 2010 Intel Xeon Phi – 2010-2013 6 core; point-to-point bus >50 cores; 2D mesh SoC; custom network on chip
Traditional NoC traffic analysis network-on-chip simulation log file 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 router 0: congested Analyzing millions of cycles… Debugging with large logs…
NoCVision overview Visualization with NoCVision traditional log input file Compact Dynamically tunable
Contributions Visualization of NoC dynamics Intuitive charts and plots Graphical user interface Fine-granularity support Time (up to single cycle), Component (up to virtual channel) Support various analysis cases Three modes of operation: interval, plot and event modes High-level traffic characteristics E.g.: Variation in average packet latency over time Fine-grained behavior E.g.: Congested components, specific packet flow
NoCVision analysis flow Topology configuration Design-space exploration NoC design NoCVision input file Functional validation Simulation parameters Analysis data Performance evaluation NoCVision GUI
Input file Specifies network configuration and data to be analyzed analysis data [clock = 100] avg_latency = 43.3 [clock = 200] avg_latency = 56.2 network configuration topology: ‘mesh’ k:8 n:2 num_vcs:4 metric value Network component Metric input syntax Network Single value Router 1-D array (# routers) Link 2-D array (# routers X # links) Virtual channel 3-D array (# routers X # links X # VCs)
How to create an input file Users should instrument NoC simulators (e.g., Booksim) to collect data to be analyzed Example 1: Link utilization increase counter simulation time interval 2 interval 3 interval 4 interval 5 interval 1 For every interval, record counter to file and reset counter Example 2: Packet traversal packet A arrives at router X A arrives at Y A arrives at Z simulation time packet A departs from router X A departs from Y every event (red, pink) is recorded in file * Full description can be found at: nocvision.eecs.umich.edu
Modes of operation 1. interval mode 2. plot mode 3. event mode congested
(accumulate, average, maximum, mininum) Interval mode Interval mode visualizes… network metrics associated routers, links, virtual channels snapshots of network traffic per interval E.g.: injection rate, traffic congestion Setting up for interval mode Specify interval (where to start, size of interval) Choose metric Choose property (accumulate, average, maximum, mininum)
Layout of interval mode color bar data representation on the network navigation controls
Plot mode Plot mode draws… multiple metrics together on the same chart difference of a metric between two simulations (diff mode) plots that can be zoomed along both axes (time and value) E.g.: Variation of average packet latency during simulation Setting up for plot mode Select router, link and network metrics to display Plotting in diff mode
Layout of plot mode Selected components Select components
Example of plotted metric (router parameter – router0 link1)
Event mode Event mode visualizes… discrete events occurring during simulation multiple events in different components of network E.g.: Packet traversal, hotspot routers Two event types (1) “on”: start of the event (2) “off”: end of the event Event 1 “on” event Event 2 “off” event Event 3
Evaluation Evaluation goal: to showcase analysis applications with NoCVision NoC simulation parameters Network: 8x8 mesh Router: 3-stage pipeline, 4 virtual channels/port Routing: XY routing Traffic workloads SPEC CPU 2006 applications Three applications Characterizing application workloads Comparing latency of two network configurations Investigating power-efficient NoC solution
1. Analysis of application workloads 35 SPEC applications are classified in two groups based on network traffic : High-traffic vs. Low-traffic applications Then generated three workloads High-traffic workload: all nodes running high-traffic applications Low-traffic workload: all nodes running low-traffic applications Medium-traffic workload: a mix of high-traffic and low-traffic applications high-traffic workload low-traffic workload
Injection rate analysis Application-to-core mapping table (medium-traffic workload) Node type Node numbers Memory High-traffic Edge-center (3, 4, 24 and 32), Center (27, 28, 35 and 36) Low-traffic Rest of the nodes interval mode plot mode Router 0 Router 27 Router 18 Router 26
2. Analysis of application-aware routing Regular mesh Fixed link-port binding High diameter High latency HiROIC application-aware NoC reconfiguration* * A. Jain, R. Parikh and V. Bertacco, “High-radix on-chip networks with low-radix routers,” ICCAD 2014 Link-port decoupling Lower diameter for frequently communicating nodes Low average latency
Plot mode for comparing latencies Regular mesh 2 4 6 8 10 time (millions of clock cycles) Average packet latency (cycle) HiROIC 2 4 6 8 10 time (millions of clock cycles) Average packet latency (cycle) Difference of average packet latency between regular mesh and HiROIC
3. Analysis of power-efficient solution Panthre (Power-aware NoCs through Reconfiguration)* Fine-grained power-gating of NoC components Topology reconfiguration and routing-update to bypass sleeping components sleeping src sleeping src 1 2 1 2 routers routers 3 4 5 3 4 5 6 7 8 6 7 8 dest dest Conventional power-gating Panthre * R. Parikh, R. Das and V. Bertacco, “Power-aware NoCs through routing and topology reconfiguration,” DAC 2014
Visualization of Panthre’s execution flow reconfiguration reconfiguration collect traffic statistics interval interval interval boundary power-gating decisions power-gating decisions underutilized Link utilization (interval mode) underutilized Disabled link (event mode) disabled
Thank you! Questions? Conclusions NoCVision is a network visualization tool that enables intuitive analyses of various NoC aspects Three modes of operation support various analysis cases Publicly available at: http://nocvision.eecs.umich.edu/ Thank you! Questions?