Download presentation

Presentation is loading. Please wait.

Published byIbrahim Ralph Modified about 1 year ago

1
University of Colorado at Boulder Core Research Lab ZDDs for Dynamic Trace Analysis Graham Price Manish Vachharajani John Giacomoni John Michalakes Sreyasi Vinjamuri

2
University of Colorado at Boulder Core Research Lab University of Colorado at Boulder Core Research Lab Motivation Chip Multiprocessor (CMP) solutions are becoming more prevalent Dynamic program analysis can aid location of parallelism in sequential programs BDDs are useful But they take days to create!

3
University of Colorado at Boulder Core Research Lab University of Colorado at Boulder Core Research Lab DIN vs. Ready Time

4
University of Colorado at Boulder Core Research Lab University of Colorado at Boulder Core Research Lab Video Details: Price, Giacomoni, and Vachharajani PACT 2008

5
University of Colorado at Boulder Core Research Lab University of Colorado at Boulder Core Research Lab The BDD Data Structure False Arc Inverting False Arc True Arc F(X,Y,Z) = x’y + xy’ + z 1 X Y Z Y Z Z Z X Y Z Y 1

6
University of Colorado at Boulder Core Research Lab University of Colorado at Boulder Core Research Lab Trace BDD Construction I t = (X’ * Y’ * Z’ * W’) 1 X Y W Z I t = (X * Y * Z * W) = + 1 X Y W Z 1 X Y W Z Y W I trace = (X * Y * Z * W) + (X’ * Y’ * Z’ * W’) 0 I trace = X Y W Z I trace = (X * Y * Z * W)

7
University of Colorado at Boulder Core Research Lab University of Colorado at Boulder Core Research Lab Trace BDD Construction I t = (X’ * Y’ * Z’ * W’) 1 X Y W Z I t = (X * Y * Z * W) = + 1 X Y W Z 1 X Y W Z Y W I trace = (X * Y * Z * W) + (X’ * Y’ * Z’ * W’)

8
University of Colorado at Boulder Core Research Lab University of Colorado at Boulder Core Research Lab Trace BDD Construction Cont.. Garbage Problem 1 X Y W Z 1 X Y W Z Y W 1 X Y W Z

9
University of Colorado at Boulder Core Research Lab University of Colorado at Boulder Core Research Lab ZDDs BDDs 1.Remove isomorpic graphs 2.Skip and remove nodes whose pointers point to the same child ZDDs 1.Remove isomorpic graphs 2.Remove “1” nodes whose pointers point to “0”

10
University of Colorado at Boulder Core Research Lab University of Colorado at Boulder Core Research Lab ZDD vs. BDD Size I t = (X’ * Y’ * Z’ * W’) I t = (X * Y * Z * W) + (X’ * Y * Z * W) ~ 20% Reduction

11
University of Colorado at Boulder Core Research Lab University of Colorado at Boulder Core Research Lab DD Creation Time DIN x RDY Tuples Over 9 times faster!

12
University of Colorado at Boulder Core Research Lab University of Colorado at Boulder Core Research Lab ZDD Construction I t = (X’ * Y’ * Z’ * W’) 1 X Y W Z I t = (X * Y * Z * W) = + 1 I trace = (X * Y * Z * W) + (X’ * Y’ * Z’ * W’) 0 I trace = X Y W Z I trace = (X * Y * Z * W) 1 Z X Y W

13
University of Colorado at Boulder Core Research Lab University of Colorado at Boulder Core Research Lab Where BDDs Compress 1 X Y W Z 1 X Y W Z Y W 1 X Y W Z No Compression Compression = +

14
University of Colorado at Boulder Core Research Lab University of Colorado at Boulder Core Research Lab Where ZDDs Compress 1 X Y W Z Compression Little/No Compression = + 1 Z X Y W 1 Details: Price and Vachharajani, to appear CGO 2010

15
University of Colorado at Boulder Core Research Lab University of Colorado at Boulder Core Research Lab Questions?

Similar presentations

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google