文档 | FAQ | 发布记录 | 路线图 | MACE Model Zoo | Demo | 加入我们 | English
Mobile AI Compute Engine (MACE) 是一个专为移动端异构计算平台(支持Android, iOS, Linux, Windows)优化的神经网络计算框架。 主要从以下的角度做了专门的优化:
- 性能
- 代码经过NEON指令,OpenCL以及Hexagon HVX专门优化,并且采用 Winograd算法来进行卷积操作的加速。 此外,还对启动速度进行了专门的优化。
- 功耗
- 支持芯片的功耗管理,例如ARM的big.LITTLE调度,以及高通Adreno GPU功耗选项。
- 系统响应
- 支持自动拆解长时间的OpenCL计算任务,来保证UI渲染任务能够做到较好的抢占调度, 从而保证系统UI的相应和用户体验。
- 内存占用
- 通过运用内存依赖分析技术,以及内存复用,减少内存的占用。另外,保持尽量少的外部 依赖,保证代码尺寸精简。
- 模型加密与保护
- 模型保护是重要设计目标之一。支持将模型转换成C++代码,以及关键常量字符混淆,增加逆向的难度。
- 硬件支持范围
- 支持高通,联发科,以及松果等系列芯片的CPU,GPU与DSP(目前仅支持Hexagon)计算加速。CPU模式支持Android, iOS, Linux等系统。
- 模型格式支持
- 支持TensorFlow, Caffe和ONNX等模型格式。
MACE Model Zoo 包含若干常用模型,并且会对一组手机进行每日构建。最新的性能评测结果可以从项目的持续集成页面获取 (选择最新的成功的Pipeline,点击release可以看到最新的评测结果)。 同时,可以参考MobileAIBench项目 获取MACE与其他框架的对比结果。
- 欢迎通过Github Issues提交问题报告与建议
- QQ群: 756046893
- Slack: mace-users.slack.com