  We explore applying the Monte Carlo Tree Search (MCTS) algorithm in a
notoriously difficult task: tuning programs for high-performance deep learning
and image processing. We build our framework on top of Halide and show that
MCTS can outperform the state-of-the-art beam-search algorithm. Unlike beam
search, which is guided by greedy intermediate performance comparisons between
partial and less meaningful schedules, MCTS compares complete schedules and
looks ahead before making any intermediate scheduling decision. We further
explore modifications to the standard MCTS algorithm as well as combining real
execution time measurements with the cost model. Our results show that MCTS can
outperform beam search on a suite of 16 real benchmarks.
