mace

MACE is a deep learning inference framework optimized for mobile heterogeneous computing platforms.

Github星跟蹤圖

License
Build Status
pipeline status
doc build status

Documentation, FAQ, Release Notes, Roadmap, MACE Model Zoo, Demo, Join Us, 中文

Mobile AI Compute Engine (or MACE for short) is a deep learning inference framework optimized for
mobile heterogeneous computing on Android, iOS, Linux and Windows devices. The design focuses on the following
targets:

  • Performance
    • Runtime is optimized with NEON, OpenCL and Hexagon, and
      Winograd algorithm is introduced to
      speed up convolution operations. The initialization is also optimized to be faster.
  • Power consumption
    • Chip dependent power options like big.LITTLE scheduling, Adreno GPU hints are
      included as advanced APIs.
  • Responsiveness
    • UI responsiveness guarantee is sometimes obligatory when running a model.
      Mechanism like automatically breaking OpenCL kernel into small units is
      introduced to allow better preemption for the UI rendering task.
  • Memory usage and library footprint
    • Graph level memory allocation optimization and buffer reuse are supported.
      The core library tries to keep minimum external dependencies to keep the
      library footprint small.
  • Model protection
    • Model protection has been the highest priority since the beginning of
      the design. Various techniques are introduced like converting models to C++
      code and literal obfuscations.
  • Platform coverage
    • Good coverage of recent Qualcomm, MediaTek, Pinecone and other ARM based
      chips. CPU runtime supports Android, iOS and Linux.
  • Rich model formats support

Getting Started

Performance

MACE Model Zoo contains
several common neural networks and models which will be built daily against a list of mobile
phones. The benchmark results can be found in the CI result page
(choose the latest passed pipeline, click release step and you will see the benchmark results).
To get the comparison results with other frameworks, you can take a look at
MobileAIBench project.

Communication

  • GitHub issues: bug reports, usage issues, feature requests
  • Slack: mace-users.slack.com
  • QQ群: 756046893

Contributing

Any kind of contribution is welcome. For bug reports, feature requests,
please just open an issue without any hesitation. For code contributions, it's
strongly suggested to open an issue for discussion first. For more details,
please refer to the contribution guide.

License

Apache License 2.0.

Acknowledgement

MACE depends on several open source projects located in the
third_party directory. Particularly, we learned a lot from
the following projects during the development:

Finally, we also thank the Qualcomm, Pinecone and MediaTek engineering teams for
their help.

Join Us

We are hiring.

主要指標

概覽
名稱與所有者XiaoMi/mace
主編程語言C++
編程語言Python (語言數: 10)
平台
許可證Apache License 2.0
所有者活动
創建於2018-06-27 03:50:12
推送於2024-06-17 09:17:33
最后一次提交2024-03-11 21:23:01
發布數33
最新版本名稱v1.1.1 (發布於 )
第一版名稱opencl-0.1 (發布於 2017-11-17 11:41:58)
用户参与
星數5k
關注者數228
派生數825
提交數3.3k
已啟用問題?
問題數679
打開的問題數57
拉請求數77
打開的拉請求數6
關閉的拉請求數28
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?