[CPP]Documentation for low-level NDArray APIs (TBlob, TShape, NDArray)

Recently I started looking into an internal project that uses low level NDArray related construct heavily to implement custom data iterator and I feel quite lost. The following constructs are heavily used:

  • TBlob, TShape
  • NDArray (many constructors)
  • SyncCopyFromCPU

In addition the memory management is also quite mysterious. Is NDArray responsible to free customer provided pointer / memory.

Any help is greatly appreciated. Thanks