当前位置: X-MOL 学术arXiv.cs.PL › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Ansor : Generating High-Performance Tensor Programs for Deep Learning
arXiv - CS - Programming Languages Pub Date : 2020-06-11 , DOI: arxiv-2006.06762
Lianmin Zheng, Chengfan Jia, Minmin Sun, Zhao Wu, Cody Hao Yu, Ameer Haj-Ali, Yida Wang, Jun Yang, Danyang Zhuo, Koushik Sen, Joseph E. Gonzalez, Ion Stoica

High-performance tensor programs are crucial to guarantee efficient execution of deep neural networks. However, obtaining performant tensor programs for different operators on various hardware platforms is notoriously challenging. Currently, deep learning systems rely on vendor-provided kernel libraries or various search strategies to get performant tensor programs. These approaches either require significant engineering effort to develop platform-specific optimization code or fall short of finding high-performance programs due to restricted search space and ineffective exploration strategy. We present Ansor, a tensor program generation framework for deep learning applications. Compared with existing search strategies, Ansor explores many more optimization combinations by sampling programs from a hierarchical representation of the search space. Ansor then fine-tunes the sampled programs with evolutionary search and a learned cost model to identify the best programs. Ansor can find high-performance programs that are outside the search space of existing state-of-the-art approaches. In addition, Ansor utilizes a task scheduler to simultaneously optimize multiple subgraphs in deep neural networks. We show that Ansor improves the execution performance of deep neural networks relative to the state-of-the-art on the Intel CPU, ARM CPU, and NVIDIA GPU by up to $3.8\times$, $2.6\times$, and $1.7\times$, respectively.

中文翻译:

Ansor:为深度学习生成高性能张量程序

高性能张量程序对于保证深度神经网络的高效执行至关重要。然而,在各种硬件平台上为不同的算子获得高性能的张量程序是众所周知的挑战。目前,深度学习系统依靠供应商提供的内核库或各种搜索策略来获得高性能的张量程序。这些方法要么需要大量的工程工作来开发特定于平台的优化代码,要么由于搜索空间受限和无效的探索策略而无法找到高性能程序。我们提出了 Ansor,一种用于深度学习应用程序的张量程序生成框架。与现有的搜索策略相比,Ansor 通过从搜索空间的分层表示中采样程序来探索更多的优化组合。然后,Ansor 使用进化搜索和学习成本模型对采样程序进行微调,以确定最佳程序。Ansor 可以找到在现有最先进方法的搜索空间之外的高性能程序。此外,Ansor 利用任务调度器同时优化深度神经网络中的多个子图。我们表明,相对于 Intel CPU、ARM CPU 和 NVIDIA GPU 上的最新技术,Ansor 将深度神经网络的执行性能提高了高达 3.8 美元、2.6 美元和 1.7 美元$,分别。Ansor 利用任务调度器同时优化深度神经网络中的多个子图。我们表明,相对于 Intel CPU、ARM CPU 和 NVIDIA GPU 上的最新技术,Ansor 将深度神经网络的执行性能提高了高达 3.8 美元、2.6 美元和 1.7 美元$,分别。Ansor 利用任务调度器同时优化深度神经网络中的多个子图。我们表明,相对于 Intel CPU、ARM CPU 和 NVIDIA GPU 上的最新技术,Ansor 将深度神经网络的执行性能提高了高达 3.8 美元、2.6 美元和 1.7 美元$,分别。
更新日期:2020-11-05
down
wechat
bug