1. 完善量化训练和量化推理功能。天元 Beta 版本提供了灵活的量化训练和高效的量化推理的能力,让开发者可以快速的完成高精度的量化训练并直接部署到推理侧,以最小的精度代价获得最高的推理性能。 2. 添加对 ARM CPU 的支持。天元添加了对 ARM CPU 的支持,在 ARM、CUDA、X86 三个主流计算平台上都提供了经过深度优化的 kernel 实现,结合天元优异的计算图优化技术,在量化、浮点模型上均提供了业界领先的计算性能和内存显存占用。 3. 优化推理功能。天元对推理功能做了一系列的功能优化,提供 Profile 工具、上手指南、性能优化教程等内容,帮助开发者快速上手,获得更高的推理性能,让开发者在推理的时候可以使用更方便,开发更高效。 另外,天元 Beta 版新增 10 余个 SOTA 模型,并正式提供中文版 API 文档,还新增了 Objects 365 Dataset 的 API 和多机训练参数打包等功能。 除了功能和性能上的改进之外,天元框架还与小米 MACE、OPEN AI LAB(开放智能)Tengine 等推理框架进行了深度集成。
上图展示了 ARM 上的推理性能对比。可以发现,通过转换至 int8,天元使得常用网络获得了至多 3 倍的提速。此外,针对手机上常用的小模型,天元提供了更好的优化效果,加速效果更加明显。
此外,天元在 CUDA 和 x86 上也提供相对于 float32 显著的提速效果。与 Arm 类似,int8 推理的耗时仅有 float 模型的 30%~50%。在 CUDA 上,天元可以充分发挥出 Tensor Core 的计算能力,榨干显卡的计算能力;而在 X86 上,由于 X86 指令集的原因,天元可以在支持 AVX512-VNNI 指令集的最新一代处理器上得到比较明显的 int8 提速。综上,原生的 int8 高效推理性能,可以让开发者方便地进行模型推理部署,同时充分发挥出硬件的计算能力。 推理功能优化 业界领先的原生 ARM 推理性能
除优秀的模型量化功能外,天元 Beta 版本还提供性能领先的 ARM 算子实现。天元引入 NCHW44 layout,通过将张量的内存排布进行调整,进一步优化访存,并降低各种边界情况的判断,提升计算性能;同时软硬件结合,在支持的设备上,使用最新的 ARM dotprod 指令,编写高质量的各类卷积算法实现,最终获得了业界领先的推理性能。
至此,天元获得了在各主流计算平台的高效推理能力。在 X86 / CUDA / ARM 的各种子架构上,均提供性能经过深度优化的算子,保证了推理时的高性能,让开发者可以实现训练 - 推理一体,真正免于模型转换。推理工具与教程
配合本次 ARM 能力的放出,天元在官网上提供了完整的部署流程教程,帮助大家快速上手端侧推理的开发步骤。 另外,天元也进一步优化了推理方面的使用体验,提供性能分析工具和优化手册,方便开发者找到性能瓶颈,提高模型推理性能。 最后天元针对跨平台编译进行优化,开发者可以利用天元在 Linux / Windows /macOS / iOS / Android 上进行推理。各平台内置常用图像处理算子
除了 NN 算子之外,在深度学习模型应用的场景中,各类 CV(也就是图像处理)算子往往也作为模型的预处理步骤存在,这些步骤的性能和精度会高度影响一个深度学习模型的落地效果。天元内置了常用的 CV 算子,并进行了高度优化,它们可以作为模型的一部分存在,实现框架的统一优化。在推理时,解码后的结果可以直接输入框架,通过一次调用完成全部 CV 操作和 NN 算子,简单方便。在深度学习模型的落地中,一个重要的步骤称为 “对分”,它能确保模型训练与最终推理的行为完全一致。天元提供的 CV 算子在各平台间对齐精度,尽全力避免训练与推理的差异,降低其中的误差,从而显著降低对分的成本,助力模型快速落地。新增复现模型与训练功能增强 除本次核心技术升级外,天元也一直在更新更多模型复现,助力开发者利用天元完成更多工作。