22
1 TAU 2016 Workshop – March 10 th -11 th , 2016 The TAU 2016 Contest Timing Macro Modeling Sponsors: Song Chen Synopsys Jin Hu IBM Corp. [Speaker] Xin Zhao IBM Corp. Xi Chen Synopsys

The TAU 2016 Contest

Embed Size (px)

Citation preview

Page 1: The TAU 2016 Contest

1TAU 2016 Workshop – March 10th-11th, 2016

The TAU 2016 Contest

Timing Macro Modeling

Sponsors:

Song ChenSynopsys

Jin HuIBM Corp.

[Speaker]

Xin ZhaoIBM Corp.

Xi ChenSynopsys

Page 2: The TAU 2016 Contest

2

Motivation of Macro ModelingPerformance

Full-chip timing analysis can take days to complete – billions of transistors/gates

Source: http://xtreview.com/addcomment-id-30496-view-ibm-power8-supercomputer.html

Observation: Design comprised of many of the same smaller subdesigns

Solution: Hierarchical and parallel design flow – analyze once and reuse timing models

Page 3: The TAU 2016 Contest

3

Motivation of Macro ModelingPerformance

Full-chip timing analysis can take days to complete – billions of transistors/gates

Source: http://wccftech.com/ibm-power8-processor-architecture-detailed/

Source: http://www.cantechletter.com/2014/10/geeks-reading-list-week-october-24th-2014/

Solution: Hierarchical and parallel design flow – analyze once and reuse timing models

Observation: Design comprised of many of the same smaller subdesigns

Page 4: The TAU 2016 Contest

4

Motivation of Macro ModelingPerformance

Full-chip timing analysis can take days to complete – billions of transistors/gates

Solution: Hierarchical and parallel design flow – analyze once and reuse timing models

Observation: Design comprised of many of the same smaller subdesigns

Chip LevelMacro Level Core Level

VSU

Timing

Model

VSU

Timing

Model

Core

Timing

Model

Core

Timing

Model

Core

Timing

Model

Core

Timing

Model

Core

Timing

Model

Core

Timing

Model

Core

Timing

Model

Core

Timing

Model

Core

Timing

Model

Core

Timing

Model

Core

Timing

Model

Core

Timing

Model

Core

Timing

Model

Page 5: The TAU 2016 Contest

5

TAU 2016 Contest: Build on the Past

Delay and Output Slew Calculation

Separate Rise/Fall Transitions

Block / Gate-level Capabilities

Path-level Capabilities (CPPR)

Statistical / Multi-corner Capabilities

Incremental Capabilities

Industry-standard Formats (.lib, .v, .spef)

Develop a timing macro modeler with reference timer

CPPR: process of removing inherent but artificial pessimism from timing tests and paths

Golden Timer: OpenTimer – top performer of TAU 2015 Contest

Page 6: The TAU 2016 Contest

6

Model Size/Performance vs. Accuracy

out

inp2

inp1inp1 u1

outb

ao

inp2

u3

bao

oa

u2

inp1

inp2

inp3

inp3 n2

n1

Original Design

inp1

inp2 out

inp3

Timing

Model

inp1

inp2 out

inp3p5

p2

p3

p1

p4inp1

inp3

outinp2

p6

p8

p7

p1

p4p2

inp1

inp3

outinp2

p3

LowHigh Accuracy**

SmallLarge Model Size**

**general trends

Faster UsageSlower Usage

Page 7: The TAU 2016 Contest

7

Timing Model Creation and Usage

out

inp2

inp1inp1 u1

outb

ao

inp2

u3

bao

oa

u2

inp1

inp2

inp3

inp3 n2

n1

Original Design

inp1

inp2 out

inp3

Timing

Model

Out-of-Context Timing In-Context TimingTiming Query

report_slack –pin out

report_slack –pin inp1

report_slack –pin inp2 -13.91-10.64

-15.47-15.25

-20.31-20.13

Pessimistic,

usage dependent

acceptable

threshold

TAU 2016 Contest: target sign-off models (high accuracy),

but strongly consider intermediate usage, e.g., optimization where less accuracy is required

Evaluation based accuracy and performance – both generation and usage

Page 8: The TAU 2016 Contest

8

Accuracy Evaluation

Original Benchmark

Contestant

Binary

inp1

out

inp3

design_model

inp2

Early + Late .libs

Analysis using OpenTimer

out

inp1

u1

outb

ao u3

bao

oa

u2

n2

n1inp2

inp3

inp1

inp2inp2

inp3

out

inp1

u1

b

ao u3

bao

oa

u2

n2

n1inp2

inp1

inp3

inp1

inp2inp2

inp3

out

outinp1

out

inp3

design_model

inp2

inp1

inp3

inp1

inp2

inp3

inp2

Accuracy Evaluation

Contestant Timing ReportGolden Timing Report

out

Vary Input

and Output

Conditions:

input slew,

output load,

arrival time

Page 9: The TAU 2016 Contest

9

TAU 2016 Contest Infrastructure

Provided to Contestants

*using OpenTimer

Benchmarks

Timing and CPPR tutorials,

file formats, timing model

basics, evaluation rules, etc.

5. TAU 2015 binary:

iTimerC v2.0

6. OpenTimer

(UI-Timer v2.0)

Detailed Documentation

Previous contest winners, utilities

Verilog (.v) Liberty (.lib)

Design

Parasitics

Assertions

SPEF (.spef)

wrapper file (.tau2016)

(.timing)

Based on TAU 2015

Benchmarks

Evaluation

Block-based

Post-CPPR Timing Analysis

at Primary Inputs and

Primary Outputs

Performance

(.output)

Memory

Usage

Golden

Result*Runtime

Accuracy

Early and Late

Libraries

Design

Connectivity

Contest Scope: only hold, setup, RAT tests;

no latches (flush segments); single-source clock tree

Time frame: ~4 months

Open Source Code and Binaries

1. PATMOS 2011: NTU-Timer

2. TAU 2013: IITiMer

3. TAU 2014: UI-Timer

4. ISPD 2013: .spef/.lib parsers

Page 10: The TAU 2016 Contest

10

Benchmarks: Binary Development

Added randomized clock tree [TAU 2014]

BRANCH(CLOCK, initial FF)

BRANCH(src,sink): create buffer chain

from src to sink

Select random location L in current tree

For each remaining FF

BRANCH(L,FF)

FF

CLOCK

FF FF

L1

L2

11 based on TAU 2015 Phase 1 benchmarks (3K – 100K gates)

7 based on TAU 2015 Evaluation benchmarks (160K – 1.6M gates)

7 based on TAU 2015 Phase 2 benchmarks (1K – 150K gates)

Page 11: The TAU 2016 Contest

11

Benchmarks: Evaluation

Added randomized clock tree [TAU 2014]

BRANCH(CLOCK, initial FF)

BRANCH(src,sink): create buffer chain

from src to sink

Select random location L in current tree

For each remaining FF

BRANCH(L,FF)

FF

CLOCK

FF FF

L1

L2

10 based on TAU 2015 Phase 1 comb. benchmarks (0.2K – 1.7K gates)

6 based on TAU 2015 Phase 2 and Evaluation benchmarks (8.2K – 1.9M gates)

9 based on TAU 2015 Phase 1 seq. benchmarks (0.1K – 1K gates)

Page 12: The TAU 2016 Contest

12

Evaluation Metrics

Accuracy Score

(Difference)

[0, 5] ps 100

(5,10] ps 80

(10,15] ps 50

(15, ) ps 0

Overall Contestant Score is

average over all design scores

Accuracy (Compared to Golden Results)

Composite Design Score

score(D) = A(D) (70 + 20 RF(D) + 10 MF(D))

Memory Factor (Relative)MAX_M(D) – M(D)

MAX_M(D) – MIN_M(D)MF(D) = M(D)

Runtime Factor (Relative)MAX_R(D) – R(D)

MAX_R(D) – MIN_R(D)RF(D) = R(D)

Query Slack at PIs and POs

in original design : SOoC

Query Slack at PIs and POs

in in-context design : SIC

Compute Difference dS for all PIs and POs DS:

if optimistic, dS = 2dS

average AVG(DS)

standard deviation STDEV(DS)

maximum MAX(DS) Worst performance

Average performance

Page 13: The TAU 2016 Contest

13

TAU 2016 ContestantsUniversity Team Name

Drexel University Dragon

University of Illinois at Urbana-Champaign LibAbs

University of Minnesota, Twin Cities --

University of Thessaly too_fast_too_accurate

India Institute of Technology, Madras Darth Consilius

India Institute of Technology, Madras IITMTimers

National Chiao Tung University iTimerM

Page 14: The TAU 2016 Contest

14

Accuracy Average (all) 1.00 0.94

Contestant Results: AccuracyTop 2 Teams: Very different generated models

Benchmark Team 1 Team 2

mgc_edit_dist_eval 0.31 0.51

vga_lcd_iccad_eval 0.43 0.83

leon3_iccad_eval 0.42 30.7

netcard_iccad_eval 0.19 90.9

leon2_iccad_eval 0.24 126.5

25 designs: Both teams have high accuracy on 21 of them ( < 1 ps max difference)

Team 1: very consistent on high accuracy

Page 15: The TAU 2016 Contest

15

Contestant Results: Runtime (s)

Team 2 has better in-context usage runtime (preferred)

Top 2 Teams: Very different generated models

Benchmark Original Team 1 Team 2 Team 1 Team 2

mgc_edit_dist_eval 8 64 112 19 20

vga_lcd_iccad_eval 10 79 107 24 16

leon3_iccad_eval 64 437 364 143 1

netcard_iccad_eval 69 473 996 148 67

leon2_iccad_eval 77 552 1125 182 144

Runtime Average (all) 1x 7x 12x 2x 1.05x

UsageGeneration

Team 1 has better generation time

Page 16: The TAU 2016 Contest

16

Contestant Results: Memory (GB)

Team 1 and 2 relatively same memory during in-context usage

Top 2 Teams: Very different generated models

Benchmark Original Team 1 Team 2 Team 1 Team 2

mgc_edit_dist_eval 1.9 2.7 4.5 3.7 5

vga_lcd_iccad_eval 2.35 3.3 5 4.3 4

leon3_iccad_eval 11 16.7 18.6 23.1 0.6

netcard_iccad_eval 12.7 18.6 29.4 23.6 16

leon2_iccad_eval 14.2 22 36.3 30.1 34.4

Memory Average (all) 1x 1.2x 0.5x 0.85x 0.8x

Team 1 better memory for larger benchmarks; Team 2 better for smaller

UsageGeneration

Page 17: The TAU 2016 Contest

17

Contestant Results: Model Size

Team 2: faster usage runtime, better generation memory

Top 2 Teams: Very different generated models

Benchmark Original Team 1 Team 2 Team 1 Team 2

mgc_edit_dist_eval 446K 400K 178K 300K 62K

vga_lcd_iccad_eval 570K 500K 150K 350K 51K

leon3_iccad_eval 3M 3M 8K 2M 3K

netcard_iccad_eval 3.2M 3.1M 675K 2M 267K

leon2_iccad_eval 3.8M 3.8M 1.3M 2M 430K

Team 1: better accuracy, fast generation runtime

Internal PinsGates + Nets

(estimate)

not considered

during evaluation

Timing Arcs

Model Size Average (seq) 1x 1.08x 0.35x

Model Size Average (all) 1x 1.27x 0.72x

Needs accuracy fix

Contest places highest emphasis on accuracy (target sign-off timing)

Page 18: The TAU 2016 Contest

18

Acknowledgments

The TAU 2016 Contestants

This contest would not have been successful

without your hard work and dedication

Debjit SinhaWorkshop

General Chair

Qiuyang WuWorkshop

Technical Chair

Tsung-Wei HuangOpenTimer

Support

Song ChenContest

Committee

Member

Xin ZhaoContest

Committee

Member

Xi ChenContest

Committee

Member

Page 19: The TAU 2016 Contest

19

Jin Hu

Contest Chair

Debjit Sinha

General Chair

Qiuyang Wu

Technical Chair

TAU 2016

Timing Contest on Macro Modeling

Honorable MentionHonorable MentionHonorable MentionHonorable MentionPresented to

For

iTimerM

National Chiao Tung University, Taiwan

Pei-Yu Lee, Ting-You Yang, Wei-Chun Chang,

Ya-Chu Chang, and Iris Hui-Ru Jiang

Page 20: The TAU 2016 Contest

20

Jin Hu

Contest Chair

Debjit Sinha

General Chair

Qiuyang Wu

Technical Chair

Contest WinnerContest WinnerContest WinnerContest WinnerPresented to

For

LibAbs

University of Illinois at Urbana-Champaign, USA

Tin-Yin Lai, Tsung-Wei Huang, and Martin D. F. Wong

TAU 2016

Timing Contest on Macro Modeling

Page 21: The TAU 2016 Contest

21

Looking Forward to 2017 and Beyond

TAU 2017 Contest Plans

Further study tradeoffs between accuracy and performance

Learning experience for both contestants and organizers for Round 2:

Focus on different evaluation metrics (e.g., less emphasis on accuracy)

Different evaluation “grades” (potentially vs. industry results)

LibAbs and iTimerM and industry approaches significantly different

Macro Modeling Reflections

Accuracy results are very impressive!

More realistic feedback process for debugging / improving tools

Different timeline to overlap with a semester or quarter

More coordination with universities (e.g., integrate into coursework)

Better understanding about different implementations and approaches

Consider more constraints (e.g., performance) while maintaining accuracy

If you have ideas, come talk to us!

[email protected]

Page 22: The TAU 2016 Contest

22

Backup