Porting ONNC to Proprietary DLA is a Breeze

Figure 1: The ONNC software stack, which provides both the LLVM IR and the ONNX IR for backend porting.
  • Inherit the class of DLATargetBackend.
  • Implement the class member functions addTensorSel, addTensorSched, addMemAlloc, and addCodeEmit.
  • Modify the make system to include your custom backend into ONNC.
  • addTensorSel: Select corresponding instructions for target devices.
  • addTensorSched: Schedule instructions.
  • addMemAlloc: Turn symbolic operands into memory addresses.
  • addCodeEmit: Emit binary codes for target devices.



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store


The Open Neural Network Compiler (ONNC), a compiler that connects Open Neural Network Exchange Format (ONNX) to every deep learning accelerator (DLA).