Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
9/13/2014
1
BeiHang Short Course, Part 5: Pandora “Smart” IP Generators
James C. Hoe
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s1
Department of ECE
Carnegie Mellon University
Collaborator: Michael Papamichael
CONNECT NoC IP Generator
• Highly‐parameterized “push‐button” framework
http://users.ece.cmu.edu/~mpapamic/connect/
• Multiple interfaces for configuring the desired NoC
• Bundled output
– synthesizable Verilog RTL
– documentations
– testbenches and scriptsUser Breakdown
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s2
p
• Public web‐based release in March 2012
– actively used by researchers
– 4500+ unique visitors, 1200+ NoCs generated
40% Academia
25% Industry
35% Other
9/13/2014
2
http://users.ece.cmu.edu/~mpapamic/connect/
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s3
http://users.ece.cmu.edu/~mpapamic/connect/
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s4
9/13/2014
3
Generator as IP
• Powerful? Very!
• Easy to use? Not Really . . . . .y y
– low‐level cryptic domain‐specific parameters
– complexity of integrating, using, tuning and validating an instantiated IP within an enclosing context
• If you went to CONNECT for an NoC right now
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s5
y g
– which configuration would you ask for first?
– if not good enough, how to get a better one . . . . .
– do you know what good enough is . . . . .
Rethink the IP Paradigm
• Generator is the “21st‐centry” IP
• Why limit to structural view of designy g
• Why not offer also . . . .
– pre‐knowledge about outcome & tradeoff of parameter combinations
– IP‐specific “meaningful” parameterizations,
that is, ask how fast? instead of how many?
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s6
that is, ask how fast? instead of how many?
– any X where IP authors can do better than IP users
Shift burdens from IP users to IP authors
make knowledge and expertise reusable
9/13/2014
4
Outline
• CONNECT Demo and Motivation
• Pandora Smart‐IP Paradigm
• Applying Pandora to
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s7
• Conclude
IP Ecosystem and Roles
Application Developers
Assemble, configure and Users
Domain Experts
Know the underlying algorithms
integrate multiple IPs to build larger chips
ors
IP U
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s8
Know the underlying algorithms and theory specific to the domain
Hardware Experts
Can build HW based on a set of specs or SW implementation
IP Autho
9/13/2014
5
Pandora Smart‐IPs
• IP enriched with domain/HW expert knowledge to simplify IP use (integration, tuning, validation)
High‐Level IP View (use within application)
simplify IP use (integration, tuning, validation)
• Bridge the gap between
– high‐level app goals+req’s
– low‐level IP‐specific
knowledge: algo+HW
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s9
Low‐Level IP View(HW implementation)
knowledge: algo+HW
• May save work for the IP
author in the long term
Pandora Key Principles
Embodying Domain‐Expert Knowledge1 Embodying Domain‐Expert Knowledge1 Embodying Domain Expert Knowledge1 Embodying Domain Expert Knowledge1
Raising the Level of Abstraction2 Raising the Level of Abstraction2
Instrumentation and Introspection3 Instrumentation and Introspection3
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s10
Instrumentation and Introspection3 Instrumentation and Introspection3
Providing Supporting Collaterals4 Providing Supporting Collaterals4
9/13/2014
6
IP know thyself
• Carry quantitative and qualitative meta‐data
facilitates faster informed design space navigation
4321 ‐ Embody Knowledge
facilitates faster, informed design space navigation
• Generic HW implementation characteristics
– how IP parameters affect impl. characteristics
e.g., area, frequency, power/energy, memory size)
• Domain‐specific metrics and properties
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s11
Domain specific metrics and properties
– how IP parameters affect higher‐level domain metrics
e.g., for NoC IP: saturation bandwidth, idle latency
– can also include high‐level properties
e.g., for NoC IP: ordering guarantees
Varying Form and Precision
HW Characterization Libs Design Space Mapping
4321 ‐ Embody Knowledge
Designer Knowledge Analytical formulas
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s12
Designer Knowledge Analytical formulas
9/13/2014
7
Don’t ask what I don’t know
• Today’s IP generators are richly parameterized
needed for efficiency and design space coverage
432 ‐ Raise Level of Abstraction1
– needed for efficiency and design space coverage
– BUT too many low‐level parameters complexity
• Pandora goal‐oriented parameterization
– in terms of application‐level design goals
– meaningful and intuitive to the non‐expert end‐user
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s13
• Coordinated changes of multiple low‐level param’s to achieve user high‐level design goals
– well‐known points, heuristic driven, feedback‐search
– leverage embedded characterization data
Speaking the Right Language
• What is “high‐level”?
depending on user objectives and levels of expertise
432 ‐ Raise Level of Abstraction1
– depending on user objectives and levels of expertise
– varying forms and levels of abstraction
Tuning InterfacesMove within the design space, e.g.,
Configuration interfacesPick points in the design space, e.g.,
T i k bSet of good configurations
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s14
Tuning knobs
-+
Fuzzy trade‐off selectors
Objective & Constraint‐Driven Queries
or personalities
9/13/2014
8
Do you know what your IP is doing?
• Instrumentations
d f
43 ‐ Instrumentation & Introspection21
– tap into design for monitoring validation purposes
– monitor, collect and analyze info about IP’s operation
• Introspection
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s15
– process low‐level data to reach high‐level conclusions
– diagnose & fix performance or correctness issues
Built‐in and Context‐Appropriate
• Created by the IP author with design familiarity
43 ‐ Instrumentation & Introspection21
easy to use, no guess work by IP user
• Feedback interpreted with IP author knowledge
natural & meaningful to IP user
e.g., protocol checker and deadlock detector
Greatly facilitate debug and validate
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s16
y g
• Synthesizable?
– monitor deployed or under‐test designs
– minimal speed overhead, full fidelity
– capture rare or hard‐to‐reproduce behaviors
9/13/2014
9
Providing “Full Service”
• Elementary supporting material
b h d
4 ‐Supporting Collaterals321
e.g., testbenches, documentation, etc.
• Scripts and interfaces, e.g.,
– for configuring the IP, or
– processing output logs
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s17
Minimizes barrier‐to‐entry for IP user
Outline
• CONNECT Demo and Motivation
• Pandora Smart‐IP Paradigm
• Applying Pandora to
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s18
• Conclude
9/13/2014
10
Generic HW Characterization
• HW resource usage (e.g., slices, BRAM, LUTRAM) & f
4321 ‐ Embody Knowledge
frequency
• At the network level, router level and subcomponents
Sample characterization targeting FPGAs
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s19
E.g., across different router choices E.g., across different topology choices
4321 ‐ Embody Knowledge
Domain‐specific characterization
• Network performance metrics, e.g., load‐latency across various NoCs and traffic patternsacross various NoCs and traffic patterns
• Capture Network properties qualitative criteria and heuristics, e.g., traffic isolation, QoS properties, buffer size based on packet size
Uniform Random Traffic 90% Neighbor Traffic
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s20
40
20
Load (in flits/cycle)
Latency
(in cycles)
0.25 0.50 0.75 1
40
20
Load (in flits/cycle)
Latency
(in cycles)
0.25 0.50 0.75 1
9/13/2014
11
User Expertise User Input Resulting NoC
432 ‐ Raise Level of Abstraction1
Interface at Multiple Expertise Levels
Pandora
Novice
Intermediate
traces
comm graph
app personalities
common configs
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s21
configuration and
refinement engine
Expert
Intermediate comm. graph
HW impl. trade‐off
low‐level config. spec
design‐space queries
Novice / Intermediate / Expert
• Pick NoC based on quantitative input, e.g.,
432 ‐ Raise Level of Abstraction1
– weighted graph representing communication pattern
– traffic traces from application runs
• Pick NoC based on qualitative input, e.g.,
– “mostly neighbor request‐response traffic, 3 hot spots, need traffic isolation”
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s22
• Design space query on objectives & constraints, e.g.,
– “lowest area NoC @ 800MHz & has bisection bandwidth of 8 Gbps”
These examples don’t help me if my IP is not NoC :(
9/13/2014
12
Runtime Monitoring and Analysis
• Monitoring of events & gathering of statistics
43 ‐ Instrumentation & Introspection21
– e.g., link utilization, allocation conflicts, average load per endpoint/router/port, avg. buffer occupancy, how frequently high‐priority traffic blocked low‐priority traffic
• Capturing sequence of events
t l t iti t i d b fl t l
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s23
– e.g., protocol transitions triggered by flow control messages or transient temporal network behavior
Built into the NoC and tailored to specific instance
Runtime Monitoring and Analysis
• Dynamically detect configuration & usage issues
43 ‐ Instrumentation & Introspection21
– e.g., invalid routing configuration, packets making U‐turns, allocation errors, improper implementation of flow control
• Diagnostic tools that capture domain‐specific effects
– e.g., deadlock, livelock or starvation detection
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s24
– offline post‐processing for more sophisticated analysis, e.g., detect suboptimal endpoint mapping on NoC
Aid debugging, provide feedback, and guide tuning
9/13/2014
13
“Generator as IP” to “IP as a Service”
• Packaging and releasing the IP as a service
4 ‐Supporting Collaterals321
– only need internet and browser to use CONNECT
– no worry about equipment, environment and tools setup
– transparent updates and fixes
– usage statistics, crowd‐sourcing
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s25
Recap the Last Hour
1 Embodying Domain KnowledgeEmbodying Domain KnowledgeDesign space characterization w.r.t. HW cost + domain metricsDesign space characterization w.r.t. HW cost + domain metrics1 Embodying Domain KnowledgeDesign space characterization w.r.t. HW cost + domain metrics
2 High‐Level Interfaces tailored to domain, meaningful to IP user High‐Level Interfaces tailored to domain, meaningful to IP user Raise the Level of AbstractionRaise the Level of Abstraction2 High‐Level Interfaces tailored to domain, meaningful to IP user Raise the Level of Abstraction
3 Monitor, collect and analyze info about IP operationMonitor, collect and analyze info about IP operationInstrumentation and IntrospectionInstrumentation and Introspection3 Monitor, collect and analyze info about IP operationInstrumentation and Introspection
4 Supporting material, toolset, release strategiesSupporting material, toolset, release strategiesProviding Supporting CollateralsProviding Supporting Collaterals4 Supporting material, toolset, release strategiesProviding Supporting Collaterals
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s26
Intro
spectio
nHigh‐Level
Uncore
IPRTL
9/13/2014
14
What else could we do?
• Standard interfacing schema for composing IPs
• Can composed Smart‐IPs cross‐tune amongst themselves?
• Frameworks for building Smart‐IPs: expressing structural and meta‐knowledge/expertise
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s27
structural and meta‐knowledge/expertise
• What else to encapsulate?
J. C. Hoe, CMU/ECE/CALCM, © 2014, BHSC‐L5‐s28
Computer Architecture Lab (CALCM)
Carnegie Mellon University
http://www.ece.cmu.edu/CALCM