  Access to parallel and distributed computation has enabled researchers and
developers to improve algorithms and performance in many applications. Recent
research has focused on next generation special purpose systems with multiple
kinds of coprocessors, known as heterogeneous system-on-chips (SoC). In this
paper, we introduce a method to intelligently schedule--and learn to
schedule--a stream of tasks to available processing elements in such a system.
We use deep reinforcement learning enabling complex sequential decision making
and empirically show that our reinforcement learning system provides for a
viable, better alternative to conventional scheduling heuristics with respect
to minimizing execution time.
