Cuda capability problem?

Hello!

I’m trying to run a project, that is a deployment of a trained neural network, on Jetson Nano.
Actually, the project was created for Jetson AGX Xavier, but I’m trying to transfer it to Nano. I’ve already managed to compile it, but as I run it I get some messages and it ends up with an error.
I suppose the problem may come from this:

2020-03-23 11:59:33.002863: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1700] Ignoring visible gpu device (device: 0, name: NVIDIA Tegra X1, pci bus id: 0000:00:00.0, compute capability: 5.3) with Cuda compute capability 5.3. The minimum required Cuda capability is 7.2.

What I’ve done before was copying not only project but actually tensorflow installed libraries: libtensorflow.so, libtensorflow_framework.so from Xavier.
Is my reasoning correct, that copying tensorflow from Xavier, which CUDA capability is higher is now causing problems? Or the cause may be different? What steps would you recommend now (I’m beginner when it comes to Jetson devices)?

Best regards,
Piotrek

What the error message says: build was done with CUDA capability setting “7.2” (for Xavier) while Nano requires setting “5.3”.

Depending on your build process/toolchain you can specify multiple CUDA capability setting at the same time, e.g. “5.3 7.2” (for Xavier and Nano) or “3.2, 5.3, 6.2, 7.2” (for the full Jetson range from TK1 up to Xavier).

You mean, build of Tensorflow, right?

So the thing I should do is reinstalling Tensorflow with an appropriate CUDA capability?

Hi @piotreko96, try installing TensorFlow from this thread, it is already built for Nano - Official TensorFlow for Jetson Nano !!!

Hi @dusty_nv, thank you. I followed the instructions and after many hours (especially fight with scipy installation) I managed to install TensorFlow.
But I still have a problem…

In a project which I try to run on Nano, in CMakeLists i try to include libraries:

/usr/local/lib/libtensorflow.so
/usr/local/lib/libtensorflow_framework.so.2

I get following make error.

**No rule to make target '/usr/local/lib/libtensorflow.so'**

Which is actually not a surprise, as in /usr/local/lib/ there aren’t neither of those files.
I’ve managed to find libtensorflow_framework.so.2 under:
/usr/local/lib/python3.6/dist-packages/tensorflow_core

but I cannot find libtensorflow.so

Could you suggest what is the problem and do you know some solution?

Regards,
Piotrek

Okay, I searched a bit, and it seems that is about C API for tensorflow.

Do you know how I can get it for Tensorflow 2 for Jetson Nano?
Shall I open a new topic for that?

Hi @piotreko96, yes, you probably want to create a new topic about that, as I am not familiar with the TensorFlow C API library for TensorFlow 2, sorry about that.

Okay, thank you!

There is a note at https://www.tensorflow.org/install/lang_c saying “There is no libtensorflow support for TensorFlow 2 yet.”

Oh yes, I saw that note, but I still I hoped it may be possible somehow. Anyway, thanks!