DSP-MLIR:用于数字信号处理的MLIR方言
MLIR是一种新型的编译器基础结构方法,旨在通过适应不同应用域、硬件目标和执行环境的代码生成器、转换器和优化器,解决软件碎片化问题,改善异构硬件编译,显著降低领域特定编译器的构建成本,促进现有编译器的连接,同时提供扩展和演进的研究工具。
Feb, 2020
本研究提出一个新的领域特定嵌入式语言(DSEL),专门用于软件定义无线电(SDR),它允许构建高效的软件数字通信系统,可以利用现代处理器架构的并行性,提取数字通信系统的时间和空间并行性,以实现全数字卫星电视广播标准 (DVB-S2) 的接受和发射。
Jun, 2022
本文提出了MLGOPerf框架,该框架可利用LLVM的ML-Inliner来优化性能,并通过副模型生成用于训练强化学习主模型的奖励,实现快速训练的流程。实验结果表明,相对于LLVM的优化,该方法在SPEC CPU2006和Cbench基准测试中可以实现高达1.8%和2.2%的性能提升。
Jul, 2022
本篇研究利用多层中间表示(MLIR)提供可重用和可扩展的编译器基础,并提出TPU-MLIR,通过两个新的方言(Tensor操作和TPU内核)将神经网络模型部署到自定义ASIC,使用MLIR传递管道在TPU上进行优化以生成机器代码。
Oct, 2022
我们开发了一种基于机器学习的成本模型,针对高级 MLIR 的不同目标变量进行预测,以更准确地指导我们的深度学习编译器在运算符融合、本地内存分配、内核调度等领域进行图级优化,以及在循环互换、LICM 和展开等内核级优化中使用。
Feb, 2023
使用可用的方言定义和类型约束,mlirSynth实现了将低级 MLIR 方言转化为高级方言的程序翻译方法,并在C程序和领域特定加速器中展示了其有效性。
Oct, 2023
我们提出了ML-Compiler-Bridge,利用传统的Python框架,实现了ML模型在优化编译器中的开发和高效的端到端集成。通过在多个优化问题、多个编译器及其版本和gym基础设施上进行研究和生产应用的评估,解决了模块化、性能和框架独立性等挑战。
Nov, 2023
ACPO是一个提供给LLVM的新框架,用于通过机器学习模型进行编译器驱动的程序优化。实验证明,ACPO在Polybench、Coral-2、CoreMark和Graph-500上相比于LLVM的O3优化,Loop Unroll模型平均能提高4%和3%,Inliner模型能提高4.5%和2.4%。
Dec, 2023
提出了一种超轻量级的差分DSP (DDSP) vocoder,该vocoder使用了一个经过联合优化的声学模型和DSP vocoder,学习过程中不需要提取声道的光谱特征,实现了与神经vocoder相当的音频质量,同时作为一个DSP vocoder非常高效。在2GHz的Intel Xeon CPU上单线程运行时,无需任何硬件特定优化,C++实现的FLOPS达到15 MFLOPS,相对于MB-MelGAN的FLOPS,高出340倍,仅需0.003的vocoder-only RTF和0.044的总RTF。
Jan, 2024