Monolingual Probabilistic Programming Using Generalized Coroutines
FNMOC(美国海军舰队气象与海洋学中心);Rutgers University(罗格斯大学)
概率程序设计语言和建模工具包是构建和重用随机模型和推理过程的两种模块化方法。结合两者的优势,我们在同一通用语言中将模型和推理表示为广义协程。我们使用语言的现有设施,如丰富的库,优化编译器和类型,开发简洁,声明性和现实的模型,具有竞争力的性能,精确和近似推理。特别地,可以使用备忘录化来表达广泛的模型。因为模型的确定性部分是全速运行的,所以自定义推理过程是微不足道的,并且推理过程可以在没有解释开销的情况下进行推理。在这个框架内,我们介绍了一个新的,一般的重要性采样算法与前瞻。
2012-05-09 cs.AI cs.PL
A JIT Compiler for Neural Network Inference
Universität Bremen(不来梅大学)
本文描述了一个C++库,它在运行时将神经网络模型编译成执行推理的机器码。这种方法通常有望实现最佳性能,因为它能够将网络的静态已知属性直接集成到代码中。在我们对NAO V6平台的实验中,它在小型网络上的性能明显优于现有的实现,而在大型网络上则表现较差。该库已经是2018年B-Human代码版本的一部分,但此后一直在扩展,现在作为独立版本提供,可以集成到任何C++14代码库中。
2019-06-13 cs.LG cs.PF
Compiler-Aware Neural Architecture Search for On-Mobile Real-time Super-Resolution
Northeastern University(东北大学);College of William and Mary(威廉与玛丽学院);ETH Zürich(苏黎世联邦理工学院)
基于深度学习的超分辨率(SR)由于其高的图像质量性能和广泛的应用场景,近年来获得了巨大的普及。然而,现有的方法通常遭受大量的计算和巨大的功耗,导致实时的【形】推理困难,特别是在诸如移动设备的资源有限的平台上。为了缓解这一问题,我们提出了一个编译器感知的SR神经架构搜索(NAS)框架,该框架使用自适应SR块进行深度搜索和每层宽度搜索。该方法直接将推理速度和SR损失考虑在内,在满足实时的【形】推理要求的同时,得到高图像质量的SR模型。代替在搜索过程期间的每次迭代测量移动设备上的速度,利用与编译器优化结合的速度模型来预测具有各种宽度配置的SR块的推理延迟,以实现更快的收敛。在此框架下,我们实现了实时的【形】SR推理,并在移动平台(Samsung Galaxy S21)的GPU/DSP上实现了720 p分辨率的SR推理,具有竞争力的SR性能(PSNR和SSIM)。
2022-07-25 cs.AR cs.CV cs.LG
Graph neural networks with configuration cross-attention for tensor compilers
King Abdullah University of Science and Technology (KAUST)(阿卜杜拉国王科技大学)
本文提出神经图架构TGraph,通过配置交叉注意力筛选计算图中张量的快速转置与分块配置,将TpuGraphs布局集合上的平均Kendall's τ从29.8%提升至67.4%,实现AI张量编译器并显著降低推理能耗。
2024-11-25 cs.AR cs.LG cs.PF
NPAS: A Compiler-aware Framework of Unified Network Pruning and Architecture Search for Beyond Real-Time Mobile Acceleration
Northeastern University(东北大学);College of William and Mary(威廉与玛丽学院);Rice University(莱斯大学);Michigan State University(密歇根州立大学)
随着在移动边缘设备上高效部署DNN的需求不断增长,减少不必要的计算并提高执行速度变得更加重要。包括模型压缩和网络架构搜索(NAS)在内的实现该目标的现有方法在很大程度上是独立执行的,并且没有充分考虑编译器级优化,而编译器级优化是移动加速必须做的。在这项工作中,我们首先提出了(i)适用于各种DNN层的细粒度结构化修剪的一般类别,以及(ii)支持不同DNN和不同修剪方案的综合编译器自动代码生成框架,弥补了模型压缩和NAS的差距。我们进一步提出了NPAS,编译器感知的统一网络修剪和架构搜索。为了处理大的搜索空间,我们提出了一个基于强化学习的元建模过程,具有快速评估和贝叶斯优化,确保与代表性NAS框架的总训练次数相当。我们的框架在现成的手机上分别实现了6.7ms,5.9ms,3.9ms的ImageNet推理时间,78.2%,75%(MobileNet-V3级别)和71%(MobileNet-V2级别)的Top-1准确率,始终优于先前的工作。
2021-06-17 cs.AI cs.CV cs.LG
Automatic Compiler Based FPGA Accelerator for CNN Training
Arizona State University(亚利桑那州立大学);Intel Corporation(英特尔公司)
在嵌入式平台上训练卷积神经网络(CNN)以支持设备上的学习在最近几天变得至关重要。由于设计复杂性和大量计算/内存需求,设计灵活的训练硬件比推理硬件更具挑战性。在这项工作中,我们提出了一个自动编译器为基础的FPGA加速器与16位定点精度的完整的CNN训练,包括前向通过(FP),反向通过(BP)和权重更新(WU)。我们实现了一个优化的RTL库来执行特定于训练的任务,并开发了一个RTL编译器来根据用户定义的约束自动生成FPGA可合成的RTL。我们提出了一种新的循环权重存储/访问方案,片上BRAM和片外DRAM有效地实现非转置和转置操作,在FP和BP阶段,分别。CIFAR-10数据集的代表性CNN在英特尔Stratix 10-GX FPGA上使用建议的硬件架构实现和训练,表现出高达479 GOPS的性能。
2019-08-15 cs.LG cs.NE eess.SP
Bridging the Gap Between Neural Networks and Neuromorphic Hardware with A Neural Network Compiler
Tsinghua University(清华大学);University of California at Santa Barbara(加州大学圣塔芭芭拉分校)
与面向通用处理器的神经网络(NN)开发不同,NN芯片的开发通常面临着一些硬件方面的限制,如网络信号和参数的精度有限、计算规模受限、非线性函数的类型有限等。本文提出了一种应对挑战的一般方法。我们解耦的NN应用程序从目标硬件通过引入一个编译器,可以将现有的训练,不受限制的NN到一个等效的网络,满足给定的硬件的约束。我们提出了多种技术,使转换适应不同类型的神经网络芯片,并可靠的限制硬件的限制。我们已经建立了这样一个软件工具,既支持脉冲神经网络(SNN)和传统的人工神经网络(ANN)。我们已经证明了其有效性与制造的神经形态芯片和内存处理(PIM)的设计。实验表明,该方案引起的推理误差很小,且转换时间远短于再训练时间。此外,我们还研究了参数敏感性评估,以探索不同转换策略的网络错误和资源利用率之间的权衡,这可以为神经形态硬件和软件的协同设计优化提供见解。
2018-01-18 cs.ET cs.LG cs.NE
Revisiting Lightweight Compiler Provenance Recovery on ARM Binaries
Georgia Tech(佐治亚理工学院);Vanderbilt University(范德堡大学)
本文针对ARM二进制程序,提出一种基于操作码和寄存器特征的浅层学习模型,高效恢复编译器配置属性,达到超过99%的准确率,训练加速583倍、推理加速3826倍,并揭示先前未发现的过拟合问题。
2023-05-06 cs.LG
Fast Hardware-Aware Neural Architecture Search
Microsoft Research Asia(微软亚洲研究院);Tsinghua University(清华大学)
为大量硬件设计准确高效的卷积神经架构具有挑战性,因为硬件设计复杂多样。本文讨论了神经结构搜索(NAS)中的硬件多样性挑战。与以前的方法,应用搜索算法在一个小的,人类设计的搜索空间,而不考虑硬件的多样性,我们提出了HURRICANE,探讨了自动硬件感知搜索在一个更大的搜索空间和两个阶段的搜索算法,有效地生成定制的模型,为不同类型的硬件。在ImageNet上进行的大量实验表明,在三种类型的硬件上,在相同的延迟约束下,我们的算法优于最先进的硬件感知NAS方法。此外,所发现的架构比当前最先进的高效模型实现了更低的延迟和更高的准确性。值得注意的是,HURRICANE在ImageNet上实现了76.67%的top-1准确率,DSP的推理延迟仅为16.5 ms,分别比FBNet-iPhoneX高出3.47%的准确率和6.35倍的推理加速。对于VPU,我们实现了比Proxyless-mobile高0.53%的top-1精度,加速比为1.49倍。即使对于经过充分研究的移动CPU,我们也比FBNet-iPhoneX高出1.63%的top-1准确率,并且推理延迟相当。与SPOS相比,HURRICANE还减少了30.4%的培训时间。
2020-04-20 cs.CV cs.LG
Efficient Execution of Quantized Deep Learning Models: A Compiler Approach
Amazon Web Services(亚马逊云科技);Edgecortix Inc.(Edgecortix公司)
越来越多的应用程序使用深度学习模型来实现预测功能,这需要大量使用计算和内存。一种用于提高资源效率的流行技术是8位整数量化,其中使用较短的8位整数来表示32位浮点数(fp32)。尽管TensorFlow、TFLite、MXNet和PyTorch等深度学习框架使开发人员能够以较小的准确度降低对模型进行量化,但它们并不适合在各种硬件平台上执行量化模型。例如,TFLite经过优化,可以在ARM CPU边缘设备上运行推理,但它对Intel CPU和Nvidia GPU没有有效的支持。在本文中,我们通过提出一种增强编译器方法来解决在不同硬件平台上执行量化深度学习模型的挑战。诸如Apache TVM之类的深度学习编译器可以在各种目标上有效执行来自各种框架的模型。然而,今天的许多深度学习编译器主要是为fp32计算而设计的,无法优化预量化的INT 8模型。为了解决这个问题,我们创建了一个新的方言,称为量化神经网络(QNN),它扩展了编译器的内部表示与量化上下文。有了这个量化上下文,编译器可以在各种硬件平台上为预量化模型生成有效的代码。正如在Apache TVM中实现的那样,我们观察到QNN增强的深度学习编译器在Intel Xeon Cascade Lake CPU、Nvidia Tesla T4 GPU、ARM Raspberry Pi3和Pi4上分别实现了2.35倍、2.15倍、1.35倍和1.4…
2020-06-18 cs.DC cs.LG cs.PL
Intel nGraph: An Intermediate Representation, Compiler, and Executor for Deep Learning
Intel(英特尔)
深度学习(DL)社区每年都会发布许多新颖的拓扑。在每个新拓扑上实现高性能仍然具有挑战性,因为每个拓扑都需要一定程度的手动工作。框架和硬件平台的激增使这个问题变得更加复杂。当前的方法,我们称之为“直接优化”,需要在每个框架内进行深入的更改,以提高每个硬件后端(CPU,GPU,FPGA,ASIC)的训练性能,并需要$\mathcal{O}(fp)$的努力;其中$f$是框架的数量,$p$是平台的数量。虽然针对深度学习原语的优化内核是通过英特尔深度神经网络数学内核库(MKL-DNN)等库提供的,但仍有几种受编译器启发的方法可以进一步优化性能。基于我们创建neon(GPU上的快速深度学习库)的经验,我们开发了英特尔nGraph,这是一个即将开源的C++库,可简化跨框架和硬件平台实现优化的深度学习性能。最初支持的框架包括TensorFlow,MXNet和Intel neon框架。最初的后端是英特尔架构CPU(CPU)、英特尔(R)神经网络神经网络处理器(R)(NNP)和NVIDIA GPU。当前支持的编译器优化包括高效的存储管理和数据布局抽象。在本文中,我们描述了我们的整体架构及其核心组件。在未来,我们设想将nGraph API支持扩展到更广泛的框架,硬件(包括FPGA和ASIC)和编译器优化(训练与推理优化,通过有效的子图分区进行多节点和多设备扩展,以及特定于硬件的复合操作)。
2018-01-30 cs.DC cs.LG
Woodpecker-DL: Accelerating Deep Neural Networks via Hardware-Aware Multifaceted Optimizations
Ant Group(蚂蚁集团)
加速深度模型训练和推理在实践中至关重要。现有的深度学习框架通常专注于优化训练速度,而很少关注特定于推理的优化。实际上,模型推理在计算方面不同于训练,例如,在训练期间的每个梯度更新步骤中更新参数,但在推理期间保持不变。模型推理的这些特性为其优化提供了新的机会。在本文中,我们提出了一个硬件感知的优化框架,即啄木鸟DL(WPK),以加速推理,利用多个联合优化的角度,图优化,自动搜索,域特定语言(DSL)编译器技术和系统级探索。在WPK中,我们研究了两种新的自动搜索方法,分别基于遗传算法和强化学习,以寻找针对特定硬件的最佳操作符代码配置。定制的DSL编译器进一步附加到这些搜索算法以生成高效的代码。为了创建优化的推理计划,WPK系统地探索了来自第三方库的高速运算符实现,以及我们自动生成的代码,并挑选出每个运算符的最佳实现供使用。大量的实验表明,在Tesla P100 GPU上,我们可以在单个卷积运算符上实现cuDNN的最大加速比5.40和TVM的最大加速比1.63,并且端到端模型推理的运行速度比TensorRT快1.18倍。
2020-08-11 cs.DC cs.LG
Toward Compiler World Models: Learning Latent Dynamics for Efficient Tensor Program Search
Hangzhou Institute for Advanced Study, University of Chinese Academy of Sciences(中国科学院大学杭州高等研究院);Institute of Software, Chinese Academy of Sciences(中国科学院软件研究所);University of Chinese Academy of Sciences(中国科学院大学)
提出一种受世界模型启发的评估器,通过轻量级过渡模型在连续潜在空间中展开调度动作,避免昂贵AST变异和重复编码,在TVM AutoScheduler中实现比Ansor更优的延迟和测量效率。
2026-06-08 cs.LG cs.PL
DeltaNN: Assessing the Impact of Computational Environment Parameters on the Performance of Image Recognition Models
University of Edinburgh(爱丁堡大学);University of Glasgow(格拉斯哥大学)
本文提出差分测试框架DeltaNN,通过生成不同深度学习框架、编译器优化和硬件设备下的模型实现,评估计算环境参数对图像识别模型部署后性能的影响,实验发现最高100%标签差异和81%推理时间性能下降。
2024-03-25 cs.CV cs.LG cs.SE
Bern2Edge: A Neurosymbolic Compiler for Edge Deployment via Bernstein Polynomial Networks
University of California, Irvine(加利福尼亚大学欧文分校)
本文提出Bern2Edge端到端框架,通过知识蒸馏将预训练教师网络转为硬件高效的伯恩斯坦多项式激活表示,支持两种部署路径,在边缘FPGA上实现了延迟、资源占用降低,同时保持较高准确率。
2026-08-24 cs.AR cs.LG
Robust Scheduling with GFlowNets
University of Amsterdam(阿姆斯特丹大学);Qualcomm Technologies Netherlands B.V.(高通技术荷兰有限公司);Qualcomm AI Research(高通人工智能研究院);Qualcomm Technologies, Inc.(高通技术公司)
在计算图中寻找调度操作的最佳方法是一个经典的NP难问题,这是编译器优化的核心。然而,评估目标硬件上的调度的良好性可能非常耗时。传统方法以及以前的机器学习方法通常会优化代理指标,这些指标评估速度很快,但在目标硬件上测试时可能会导致不良的时间表。在这项工作中,我们提出了一种新的方法,通过采样成比例的代理度量使用一种新的GFlowNet方法调度。我们引入了一种技术来控制在推理时间建议的时间表的多样性和良好性之间的权衡,并根据经验证明,当在目标模型上进行测试时,纯优化基线可以导致我们的方法的性能低于标准。此外,我们表明,条件GFlowNet的计算图,使泛化到看不见的调度问题的合成和现实世界的编译器数据集。
2023-02-14 cs.AI cs.LG cs.PL
Compiling Deep Learning Models for Custom Hardware Accelerators
Purdue University(普渡大学)
卷积神经网络(CNN)是大多数最先进的深度学习算法的核心,专门用于目标检测和分类。CNN在计算上既复杂又并行。这两个属性为嵌入式系统的潜在软件和硬件优化留下了空间。给定具有面向CNN的自定义指令集的可编程硬件加速器,编译器的任务是利用硬件的全部潜力,同时遵守硬件约束并保持通用性以运行具有不同工作负载属性的不同CNN模型。Snowflake是一个在可编程逻辑器件上实现的高效、可扩展的硬件加速器。它实现了一个自定义指令集的控制流水线。本文的目的是介绍Snowflake的编译器,它可以从Torch 7模型描述文件生成机器级指令。在这项工作中探索的主要软件设计要点是:模型结构解析,CNN工作负载分解,循环重排内存带宽优化和内存访问平衡。编译器生成的指令所实现的性能与卷积层的手动优化代码相匹配。生成的指令还可以有效地在Snowflake上执行AlexNet和ResNet 18推理。具有$256$处理单元的Snowflake在Xilinx的Zynq XC 7Z 045 FPGA上合成。在$250$ MHz下,AlexNet实现了$93.6$ frames/s和$1.2$ GB/s的片外存储器带宽,ResNet 18实现了$21.4$ frames/s和$2.2$ GB/s。片内总功耗为$5$ W。
2017-12-10 cs.DC cs.LG
A C Code Generator for Fast Inference and Simple Deployment of Convolutional Neural Networks on Resource Constrained Systems
Fraunhofer IML(弗劳恩霍夫物流研究院)
卷积神经网络在时间关键型应用中的推理通常需要GPU。在机器人或嵌入式设备中,由于能源、空间和成本的限制,这些通常是不可用的。此外,在目标平台上安装深度学习框架甚至本机编译器是不可能的。本文提出了一种神经网络代码生成器(NNCG),它从训练好的CNN生成一个普通的ANSI C代码文件,该文件将推理封装在单个函数中。它可以很容易地包含在现有的项目中,由于缺乏依赖性,交叉编译通常是可能的。此外,代码生成基于已知的训练的CNN和目标平台,遵循四个设计原则进行优化。该系统的评估,利用小CNN设计用于此应用程序。与TensorFlow相比,XLA和Glow的加速高达11.81,甚至在延迟方面也优于GPU。
2020-01-14 cs.LG cs.PF
Towards High Performance, Portability, and Productivity: Lightweight Augmented Neural Networks for Performance Prediction
University of Southern California(南加州大学);US Army Research Lab-West(美国陆军研究实验室西部)
编写高性能代码需要在程序设计语言、编译器优化和硬件知识方面的大量专业知识。这通常会导致生产力和可移植性差,并且对于非程序员领域专家(如物理学家)来说不方便。更理想的是一种高级语言,其中领域专家简单地根据高级操作来指定工作负荷(例如,matrix-multiply(A,B)),并且编译器识别充分利用异构平台的最佳实现。为了创建同时支持生产力、可移植性和性能的编译器,关键在于预测工作负载中包含的主要操作(内核)的各种可用实现(变体)在各种硬件上的性能,以决定(a)应该为工作负载中的每个内核选择哪个变体,以及(b)变体应该在哪个硬件资源上运行。为了实现性能预测,我们提出了轻量级的增强神经网络的内核变体硬件的任意组合。一个关键的创新是利用内核的数学复杂性作为实现更高精度的特征。这些模型是紧凑的,以减少编译时和运行时的训练时间和快速推理。使用少于75个参数的模型,只有250个训练数据实例,我们能够获得3%的低MAPE,在48个内核变体硬件组合上显著优于传统的前馈神经网络。我们进一步证明,我们的变量选择方法可以用于Halide实现,以获得高达1.7倍的加速比Halide的自动调度。
2020-08-30 cs.LG cs.PF
Neural Architecture Search as Program Transformation Exploration
University of Edinburgh(爱丁堡大学)
提高深度神经网络(DNN)的性能对编译器和神经架构搜索(NAS)社区都很重要。编译器应用程序转换以便利用硬件并行性和存储层次结构。然而,合法性问题意味着他们未能利用神经网络的自然鲁棒性。相比之下,NAS技术通过诸如卷积的分组或检查之类的操作来改变网络,从而利用DNN的弹性。在这项工作中,我们表示这样的神经架构操作程序转换的合法性取决于一个概念的代表能力。这允许它们与现有的转换组合成统一的优化框架。这种统一使我们能够将现有的NAS操作表示为更简单的转换的组合。至关重要的是,它允许我们生成和探索新的张量卷积。我们在TVM中对组合框架进行了原型设计,并能够在不同的DNN中找到优化,从而显着减少推理时间-在大多数情况下超过3 $\times$。此外,我们的计划大大减少了NAS搜索时间。代码位于~ \href{https://github.com/jack-willturner/nas-as-program-transformation-exploration}{this https url}。
2021-02-12 cs.LG cs.PL
RTMobile: Beyond Real-Time Mobile Acceleration of RNNs for Speech Recognition
Northeastern University(东北大学);The College of William and Mary(威廉与玛丽学院);The University of Alabama(阿拉巴马大学)
基于递归神经网络(RNN)的自动语音识别如今在诸如智能电话的移动设备上变得流行。然而,以前的RNN压缩技术要么由于不规则性而遭受硬件性能开销,要么由于硬件友好性而保留的规则性而遭受显著的准确性损失。在这项工作中,我们提出了RTMobile,它利用一种新的基于块的修剪方法和编译器优化来加速移动设备上的RNN推理。我们提出的RTMobile是第一个可以在移动平台上实现实时的【形】RNN推理的工作。实验结果表明,RTMobile在推理精度和时间方面明显优于现有的RNN硬件加速方法。在保证推理时间不变的情况下,RTMobile在GRU上使用Adreno 640嵌入式GPU,与FPGA上的工作相比,可以提高约40 $\times$的能量效率。
2020-02-19 cs.LG cs.SD eess.AS
Decompiling x86 Deep Neural Network Executables
The Hong Kong University of Science and Technology(香港科技大学);Singapore Management University(新加坡管理大学);University of Alberta(阿尔伯塔大学)
由于它们在异构硬件设备上的广泛使用,深度学习(DL)模型由DL编译器编译成可执行文件,以充分利用低级硬件原语。这种方法允许在各种计算平台上以低成本进行DL计算,包括CPU、GPU和各种硬件加速器。我们提出了BTD(Bin to DNN),这是一个针对深度神经网络(DNN)可执行文件的反编译器。BTD获取DNN可执行文件并输出完整的模型规范,包括DNN操作符的类型、网络拓扑、维度和参数,这些参数与输入模型的参数(几乎)相同。BTD提供了一个实用的框架来处理由不同DL编译器编译的DNN可执行文件,并在x86平台上启用了全面优化。它采用基于学习的技术来推断DNN运算符,动态分析来揭示网络架构,符号执行来帮助推断DNN运算符的维度和参数。我们的评估表明,BTD能够准确恢复具有数百万参数的复杂DNN的完整规范(例如,ResNet)。恢复的DNN规范可以被重新编译为新的DNN可执行文件,该新的DNN可执行文件表现出与输入可执行文件相同的行为。我们表明,BTD可以提高两个代表性的攻击,对抗性的例子生成和知识窃取,对DNN可执行文件。我们还展示了使用BTD的跨架构遗留代码重用,并设想将BTD用于其他关键的下游任务,如DNN安全加固和修补。
2022-10-04 cs.CR cs.LG
Combining Neural Architecture Search and Automatic Code Optimization: A Survey
IBM Research Europe(IBM欧洲研究院);New York University Abu Dhabi(纽约大学阿布扎比分校);Université Polytechnique Hauts-de-France(上法兰西理工大学)
本文综述了将硬件感知神经架构搜索(HW-NAS)与自动代码优化(ACO)相结合的研究,提出二者独立执行存在次优性,并系统梳理了硬件感知神经架构与编译器优化协同搜索(NACOS)这一联合优化框架的原理与相关工作。
2024-08-07 cs.LG cs.PL
M100: An Orchestrated Dataflow Architecture Powering General AI Computing
Li Auto
M100通过协同数据流架构提升自动驾驶、大语言模型等领域的AI计算效率与成本效益,采用编译器-架构协同设计优化数据传输,减少缓存依赖,提升系统性能。
2026-04-20 cs.AR cs.LG
LambdaNet: Probabilistic Type Inference using Graph Neural Networks
University of Texas at Austin(得克萨斯大学奥斯汀分校)
随着渐进式类型在Python和TypeScript等语言中越来越流行,自动推断类型注释的需求越来越大。虽然类型注释有助于完成代码完成和静态错误捕获等任务,但这些注释不能完全由编译器确定,并且手工注释很繁琐。提出了一种基于图神经网络的TypeScript概率类型推断方案。我们的方法首先使用轻量级的源代码分析生成一个程序抽象称为类型依赖图,它链接类型变量与逻辑约束以及名称和使用信息。给定这个程序抽象,然后我们使用图神经网络在相关类型变量之间传播信息,并最终进行类型预测。我们的神经架构既可以预测数字或字符串等标准类型,也可以预测在训练过程中没有遇到的用户定义类型。我们的实验结果表明,我们的方法优于以前的工作在这个空间中的$14\%$(绝对)库类型,同时有能力作出类型预测,是现有技术的范围之外。
2020-04-29 cs.LG cs.PL stat.ML
TASO: Time and Space Optimization for Memory-Constrained DNN Inference
Trinity College Dublin(都柏林圣三一学院);University of Edinburgh(爱丁堡大学)
卷积神经网络(CNN)用于许多嵌入式应用,从工业机器人和自动化系统到移动设备上的生物识别。最先进的分类通常是通过大型网络实现的,这些网络在内存和能源预算严格受限的移动和嵌入式设备上运行起来非常昂贵。我们提出了一种基于整数线性规划(ILP)的CNN模型的时域特定优化方法,用于选择原语操作来实现卷积层。我们通过以下方式优化执行时间和内存消耗之间的权衡:1)通过选择数据布局和原语操作来实现每一层,尝试最大限度地减少整个网络的执行时间; 2)分配适当的工作空间,反映每层内存占用的上限。这两种优化策略可用于在任何平台上运行任何CNN,并带有C编译器。我们在ARM Cortex-A15上对一系列流行的ImageNet神经架构(GoogleNet,AlexNet,VGG,ResNet和SqueezeNet)进行了评估,与基于贪心算法的原语选择相比,速度提高了8倍,与仅考虑推理时间的求解器相比,内存需求降低了2.2倍,同时仅牺牲了15%的推理时间。此外,我们的优化方法暴露了一系列的最佳点,不同的配置在帕累托边界的内存和延迟的权衡,这可以在任意的系统约束下使用。
2020-05-21 cs.LG stat.ML