Intelligent Heterogeneous Parallelism