Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9...
Transcript of Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9...
![Page 1: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/1.jpg)
Adaptive Layout Decomposition with GraphEmbedding Neural Networks
Wei Li1, Jialu Xia1, Yuzhe Ma1, Jialu Li1, Yibo Lin2, Bei Yu1
1The Chinese University of Hong Kong2Peking University
1 / 22
![Page 2: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/2.jpg)
Outline
Background & Introduction
Algorithms
Results
Conclusion
3 / 22
![Page 3: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/3.jpg)
Background & Introduction Algorithms Results Conclusion
Outline
Background & Introduction
Algorithms
Results
Conclusion
4 / 22
![Page 4: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/4.jpg)
Background & Introduction Algorithms Results Conclusion
Multiple Patterning Lithography Decomposition
a
b c d
f
e
(a)
a
b c d
f
e
(b)
An example of the layout and corresponding decomposition results
4 / 22
![Page 5: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/5.jpg)
Background & Introduction Algorithms Results Conclusion
Uncolorable case: Conflict
p1
p3
p2
p4(a)
a
b
p1
p2 p4
p3(b)
An example of the uncolorable case
5 / 22
![Page 6: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/6.jpg)
Background & Introduction Algorithms Results Conclusion
One possible solution for the uncolorable case: Stitch
a
b
p1
r2
p2 r4r1
r3(a)
a
b
p1
r2
p2 r4r1
r3r3(b)
An example of the stitch candidate and stitch
6 / 22
![Page 7: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/7.jpg)
Background & Introduction Algorithms Results Conclusion
Problem Formulation
a
b
p1
r2
p2 r4r1
r3
minx
Xcij + ↵
Xsij, (1a)
s.t. cij = (xi == xj), 8eij 2 CE, (1b)sij = (xi 6= xj), 8eij 2 SE, (1c)xi 2 {0, 1, . . . , k}, 8xi 2 x, (1d)
x: color assigned to each node, CE: conflict edge set, SE: stitch edge set.
7 / 22
![Page 8: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/8.jpg)
Background & Introduction Algorithms Results Conclusion
Integer Linear Programming (ILP)∗
minX
eij2CEcij + ↵
X
eij2SEsij (2a)
s.t. xi1 + xi2 1, xij 2 {0, 1}. (2b)xi1 + xj1 1 + cij1, xi2 + xj2 1 + cij2, 8eij 2 CE, (2c)(1 � xi1) + (1 � xj1) 1 + cij1, 8eij 2 CE, (2d)(1 � xi2) + (1 � xj2) 1 + cij2, 8eij 2 CE, (2e)cij1 + cij2 1 + cij, 8eij 2 CE, (2f)|xj1 � xi1| sij1, |xj2 � xi2| sij2, 8eij 2 SE, (2g)sij � sij1, sij � sij2, 8eij 2 SE, (2h)
∗Bei Yu et al. (Mar. 2015). “Layout Decomposition for Triple Patterning Lithography”. In: IEEE TCAD 34.3,pp. 433–446.
8 / 22
![Page 9: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/9.jpg)
Background & Introduction Algorithms Results Conclusion
Exact Cover-based algorithm (EC)†
b
a
c
a
a
b
b
c
c
a b c ab ab ac ac
a
a
b
b
c
c
ab
ab
ab
ab
ac
ac
ac
ac
Picked row
An example of the exact cover-based algorithm
†Hua-Yu Chang and Iris Hui-Ru Jiang (2016). “Multiple patterning layout decomposition considering complexcoloring rules”. In: Proc. DAC, 40:1–40:6.
9 / 22
![Page 10: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/10.jpg)
Background & Introduction Algorithms Results Conclusion
Pros and cons analysis
I ILP- Pros: Optimal- Cons: Bad runtime performance
I EC- Pros: High e�ciency- Cons: Degradation of the solution quality
I Graph matching‡- Pros: Good performance in both e�ciency and quality for small graphs- Cons: Graph library size is limited
‡Jian Kuang and Evangeline F. Y. Young (2013). “An E�cient Layout Decomposition Approach for TriplePatterning Lithography”. In: Proc. DAC. San Francisco, California, 69:1–69:6.
10 / 22
![Page 11: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/11.jpg)
Background & Introduction Algorithms Results Conclusion
Graph Embedding
…
An example of graph embeddings of layout graphs, where the graphs are transformed intovector space.
11 / 22
![Page 12: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/12.jpg)
Background & Introduction Algorithms Results Conclusion
Graph Convolutional Network
u(l+1)i = ReLU
0
@X
j2Ni
W(l)u(l) + u(l)i
1
A , (3)
u(l): node representation at the lth layer, Ni: neighbours of node i.I Composed of two modules, aggregator and encoderI Node embedding: node representation at the final layerI Graph embedding: obtained from node embedding through some operations such as
summation and meanI Not applicable for heterogeneous graphs
12 / 22
![Page 13: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/13.jpg)
Background & Introduction Algorithms Results Conclusion
Outline
Background & Introduction
Algorithms
Results
Conclusion
13 / 22
![Page 14: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/14.jpg)
Background & Introduction Algorithms Results Conclusion
Framework Overview
Graph Simplification
Graph Simplification RGCN
Selection Selected Decomposer
Graph Matched?Node num < k?Stitch InsertionY Y
NNReturn Results
The online workflow of our framework.
I Online: Shown in the figure.I O�ine: Model training & Graph library construction.
13 / 22
![Page 15: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/15.jpg)
Background & Introduction Algorithms Results Conclusion
Relational Graph Convolutional Networks (RGCN)
u(l+1)i = ReLU
0
@X
e2E
X
j2Nei
W(l)e u(l)
j + u(l)i
1
A , (4)
E:{CE (conflict edge set), SE (stitch edge set)}I Neighbours connected by di�erent kinds of edges are assigned to di�erent encoder
tracks.I Applicable for heterogeneous graphs
14 / 22
![Page 16: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/16.jpg)
Background & Introduction Algorithms Results Conclusion
Graph Embedding Workflow by RGCN
…Graph simplification
& stitch insertion
Stitch edge Conflict edge
Node Embedding
Graph Embedding
RGCNDate Preprocessing
Sum++
Overview of the process for graph embedding
15 / 22
![Page 17: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/17.jpg)
Background & Introduction Algorithms Results Conclusion
O�ine: Graph Library Construction
What we need?
I Enumerate all possible graphs under a size constraintI Avoid isomorphic graphs
Rough Algorithm
1. Enumerate all valid graphs under the given size constraint2. For each graph enumerated, calculate the graph embedding and normalize it3. Multiply it with the graph embeddings in the library4. If the maximal value is less than one, insert the graph and corresponding optimal
solution by ILP into the library
16 / 22
![Page 18: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/18.jpg)
Background & Introduction Algorithms Results Conclusion
Online: Graph Matching & Decomposer Selection
Graph Matching
I Similar idea with graph library constructionI Return the optimal solution of the corresponding matched graph whose graph
embedding multiplication result is exactly one
Decomposer Selection
y = argmax(Wsh + bs), (5)
Ws, bs: trainable weight and bias, h: graph embeddingTwo-class classification problem: ILP or EC
17 / 22
![Page 19: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/19.jpg)
Background & Introduction Algorithms Results Conclusion
Outline
Background & Introduction
Algorithms
Results
Conclusion
18 / 22
![Page 20: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/20.jpg)
Background & Introduction Algorithms Results Conclusion
E�ectiveness of RGCN
LabelILP EC
Predicted ILP 13 682EC 0 5900
Recall 100.0%F1-score 0.0367
(a) Proposed RGCN
LabelILP EC
Predicted ILP 2 244EC 11 6338
Recall 15.4%F1-score 0.0154
(b) Conventional GCN
I Classify all ‘ILP’ cases correctly and such achieves the optimalityI 2⇥ F1-score, 6⇥ Recall
18 / 22
![Page 21: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/21.jpg)
Background & Introduction Algorithms Results Conclusion
Comparison with state-of-the-artCircuit ILP SDP EC RGCN
st# cn# cost time (s) st# cn# cost time (s) st# cn# cost time (s) st# cn# cost time (s)C432 4 0 0.4 0.486 4 0 0.4 0.016 4 0 0.4 0.005 4 0 0.4 0.007C499 0 0 0 0.063 0 0 0 0.018 0 0 0 0.011 0 0 0 0.015C880 7 0 0.7 0.135 7 0 0.7 0.021 7 0 0.7 0.010 7 0 0.7 0.014C1355 3 0 0.3 0.121 3 0 0.3 0.024 3 0 0.3 0.011 3 0 0.3 0.015C1908 1 0 0.1 0.129 1 0 0.1 0.024 1 0 0.1 0.017 1 0 0.1 0.031C2670 6 0 0.6 0.158 6 0 0.6 0.044 6 0 0.6 0.035 6 0 0.6 0.046C3540 8 1 1.8 0.248 8 1 1.8 0.086 8 1 1.8 0.032 8 1 1.8 0.038C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049C6288 205 1 21.5 5.569 203 4 24.3 0.648 203 5 25.3 0.151 205 1 21.5 0.154C7552 21 1 3.1 0.872 21 1 3.1 0.157 21 1 3.1 0.071 21 1 3.1 0.111S1488 2 0 0.2 0.147 2 0 0.2 0.031 2 0 0.2 0.013 2 0 0.2 0.016S38417 54 19 24.4 7.883 48 25 29.8 1.686 54 19 24.4 0.329 54 19 24.4 0.729S35932 40 44 48 13.692 24 60 62.4 5.130 46 44 48.6 0.868 40 44 48 1.856S38584 117 36 47.7 13.494 108 46 56.8 4.804 116 37 48.6 0.923 117 36 47.7 1.840S15850 97 34 43.7 11.380 85 46 54.5 4.320 100 34 44 0.864 97 34 43.7 1.792average 12.893 3.640 15.727 1.141 13.267 0.225 12.893 0.448
ratio 1.000 1.000 1.220 0.313 1.029 0.062 1.000 0.123
I Obtain the optimal solution in the benchmarkI Runtime is reduced to 12.3% compared to another optimal ILP-based algorithm
19 / 22
![Page 22: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/22.jpg)
Background & Introduction Algorithms Results Conclusion
Runtime breakdown of our framework
1.63%
GCN Inference
96.23%
ILP/EC Decomposer
2.14%
Graph Matching
I The decomposition runtime by the selecteddecomposer is the major bottleneck
I RGCN inference and graph matching runtime ofour framework are actually trivial
I Our method has strong scalability and can beapplied to select other more e�cientdecomposers in the future.
20 / 22
![Page 23: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/23.jpg)
Background & Introduction Algorithms Results Conclusion
Outline
Background & Introduction
Algorithms
Results
Conclusion
21 / 22
![Page 24: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/24.jpg)
Background & Introduction Algorithms Results Conclusion
Conclusion
I Graph embedding by RGCN- Build the isomorphism-free graph library- Match graphs in the library- Adaptively select decomposer
I The results show that:- The obtained graph embeddings have powerful representation capability- Excellent balance between decomposition quality and e�ciency- Our framework has strong scalability for future incremental selection
21 / 22
![Page 25: Adaptive Layout Decomposition with Graph Embedding ...byu/papers/C98-DAC2020-MPL-Selector...C5315 9 0 0.9 0.226 9 0 0.9 0.106 9 0 0.9 0.039 9 0 0.9 0.049 C6288 205 1 21.5 5.569 203](https://reader033.fdocuments.us/reader033/viewer/2022053106/6072b773a8eed46c9420e75d/html5/thumbnails/25.jpg)
Background & Introduction Algorithms Results Conclusion
Thank You
Wei Li ([email protected])Yuzhe Ma ([email protected])
Yibo Lin ([email protected])Bei Yu ([email protected])
22 / 22