Neural Compute API Overview

Applications for performing inferences with the Intel® Movidius™ Neural Compute SDK (Intel® Movidius™ NCSDK) can be developed in either C/C++ or Python. The Neural Compute API (NCAPI) provides a software interface to load network graphs and run inferences on neural compute devices.

NCAPI v2 Documentation NCAPI v1 Documentation
C API v2
Python API v2
C API v1 (legacy)
Python API v1 (legacy)

NCAPI v1 vs. NCAPI v2

The original NCSDK used NCAPI v1. That version has been superseded by NCAPI v2, which is not backwards-compatible (i.e. programs written with NCAPI v1 will not compile or run with NCAPI v2).

NCAPI v2 was created to provide developers with more flexibility when developing applications for neural compute devices. Key advantages to NCAPI v2 are:

  • Multiple network graphs can be allocated to a single neural compute device (up to 10 graphs per device, limited by device memory)
  • Input/output is handled with first-in, first-out (FIFO) queues, which support queueing multiple inference inputs/outputs
  • 32 bit floating point (FP32) input/output is supported

NCAPI v1 is no longer being updated so NCAPI v2 should be used for all new application development. Documentation for NCAPI v1 will still be provided for legacy applications.

Migrating Applications from NCAPI v1 to NCAPI v2

For information about migrating a Python application from NCAPI v1 to NCAPI v2, see:

For information about migrating a C/C++ application from NCAPI v1 to NCAPI v2, see: