1. Abstract or Introduction
ALT은 more informative samples을 찾기위한 active learning을 기반으로 한 sampling 전략을 사용한다. 이 sampling strategy을 수행하는 active learning exploration module은 uncertainty predictor와 score predictor로 구성된다. 이 둘의 ping-pong 방식을 사용하도록 설계되어 있다. autoTVM과 같은 모듈로 automatic tensor compilation을 수행하고 이는 fusing, tiling, splitting과 같은 schedule primitive의 type들을 통해서 extremly huge size의 Search Space를 만들어 낸다. AutoTVM의 greedy하게 configuration을 샘플링하는 cost model에 의존한다. 이 search space에서는 invalid한 space가 전체 cost model의 convergence speed를 저하시킨다. 이를 해결하기 위해 speed와 performance를 개선한 ALT를 제시한다.
2. ALT
2.1 Overview
3가지 part로 구성된다. filter module, active learning select module, score predict module.
1개의 expression이 iteratively하게 valuable한 samples을 찾는다. 이를 통해 cost model을 update하고 마지막으로 best configuration에 해당하는 backend code를 emit한다. iteration이 되는 동안 exploration module은 invalid할 가능성이 높은 configuration을 제거하는데 filter를 사용한다. active learning은 특정 기준에 따라 sample을 선택하는데 중요한 configuration을 평가할 수 있다.
2.1 filter module and the score predict module
binary classifier로 filter module사용. hardware performance configuration은 1로 라벨링, 성공적으로 hw에 실행되지 않는다면 0으로 라벨링 된다. last iteration으로부터 labeled configuration은 B/C를 update하기 위함이고 이는 알려지지않은 configuration의 valid, invalid의 확률을 예측한다. 이는 어느정도의 invalid measurement를 줄이는 데 도움이 된다.
2.2 active learning select module
exploration process에서 핵심 요소이다. model accuracy를 높이는데 informative한 samples을 select하는 기준을 강화한다. 어떻게 final cost model의 성능이 selection critierion의 적합성을 강하게 의존하게 하는가. 우선 샘플링 다양성이다. 이는 라벨링을 위한 대표성을 띠는 샘플을 선택한다. 이 다양성을 나타내기 위해 sample들의 거리를 사용한다.
'Paper Reading > Compiler Optimization' 카테고리의 다른 글
DynaTune: Dynamic Tensor Program Optimization in Deep Neural Network Compilation (0) | 2022.08.29 |
---|---|
Bolt: Bridging the Gap between Auto-tuners and Hardware-native Performance (22’) (0) | 2022.08.27 |
One-shot tuner for deep learning compilers (22' CC) (0) | 2022.08.27 |
Autotuning Algorithmic Choice for Input Sensitivity (0) | 2022.08.17 |
simulating execution time of tensor programs using gnn (0) | 2022.08.17 |