CEA-LIST / N2D2

N2D2 is an open source CAD framework for Deep Neural Network simulation and full DNN-based applications building.
Other
147 stars 35 forks source link

N2D2 Cross Compilation #102

Closed moelyaagoubi closed 3 years ago

moelyaagoubi commented 3 years ago

After the cross-compilation from host (Ubuntu machine 18.04 x64_64) to target (NVIDIA DRIVE AGX aarch64), I was able to generate the N2D2.so file compatible with aarch64. However when I tried to do an import with Python3 (on the target), I got segmentation fault (core dumped).

olivierbichler-cea commented 3 years ago

Hello, I do not understand what you are trying to import in Python3? The N2D2.so is a C++ library. If you want to import the Python binding, you should import the pyn2d2 module normally generated in the lib/ folder if you are using the CMake, like pyn2d2.cpython-37m-x86_64-linux-gnu.so. However, the Python binding is currently not well documented, but stay tuned: we will release in the coming month a full Python API for N2D2!

davidbriand-cea commented 3 years ago

This requiest have been fixed by mail. The N2D2 TensorRT export is compatible with the cross-compilation NVidia environment for Drive AGX but required some modification to the Exported Makefile. Typically CUDA_PATH Makefile parameter should linked to the aarch64 cross-compilation CUDA environment.

Additional informations can be found here : https://docs.nvidia.com/cuda/cuda-compiler-driver-nvcc/index.html#cross-compilation

I close the issue, feel free to reopen it