Deepstream and JetPack 3.3

Hi

what should we expect in terms of compatibility with Deepstream from the new JetPack 3.3?

Is it safe to install JetPack 3.3 and then DeepStream on top of it or will this lead to incompatibility related to different version of tensorRT?

If you have any idea, it would be nice to know before just trying :)

Thanks

Hi benelgiac,
Jetson Deepstream for tensorRT4.0 is not ready.
I can’t say if there will be any interface change, since feature has not got finalized.

Thanks
wayne zhu

Thanks, Wayne, that’s good to know.

-albertr

Any update on DeepStream SDK compatibility with tensorRT 4.0?

-albertr

Sorry, No update, since develop team is focusing on Tesla deepstream with high priority.

Thanks
wayne zhu

For what it’s worth, I do have Jetpack 3.3 working with DeepStream 1.5 on my Jetson TX2.

My first attempt to do this failed, and I had to downgrade to Jetpack 3.2

On a subsequent attempt, it worked fine, provided the following steps are followed:

Deepstream 1.5 works on Jetpack 3.3, but only if the .cache files are first deleted.
i.e.

Delete the files: /home/nvidia/.cache/*

and

all the ‘.cache’ files in /home/nvidia/Model/ and all its sub dirs

I hope this is useful.

can I get support (and working) DeepStream 1.5 for JetPack 3.3?

rvjenya: Didn’t the steps of Comment #6 work for you, when using JetPack 3.3 and DeepStream 1.5?

It worked well for me. I’m using the Jetson Tx2.

Steps from comment #6 worked for me with JetPack 3.3 and DeepStream 1.5 on the TX2. I am attempting to do https://github.com/vat-nvidia/deepstream-plugins on my TX2, but running into a few make errors. This Github states to use Jetpack 3.3 and DeepStream 1.5 which is interesting. Hopefully I can get around the make errors.

Hi kwinbui,
I will try on my side.

Thanks
wayne zhu

Hi kwinbui,
Can you specify your make error here? and which app you are using? trt-yolo or deepstream-yolo?

Hi Kwinbur,
I am very sorry to say, that github is for telsa.
For tegra platform, a header file gstnvdsmeta.h is not released.
So It can’t work.

Maybe you need to wait for next formal release to run deepstream - yolo.

Thanks
wayne zhu

Hi Wayne,

I do have the YOLO deepstream plugin working on Jetson TX2.
It’s true that the first version of the plugin was only for Tesla, but a later update to the gitHub was made, which supports Jetson (Tegra) too.

Thanks.

Thanks prashanth.

kwinbur,
could you paste your compile error here?

Thanks
wayne zhu

Is Nvidia still working on creating a unified DeepStream version that also works on the TX2? I would love to be able to develop and test a Deepstream program on my desktop and then deploy it to the TX2. I also need the ability to connect to multiple streams (MIPI cameras), which the current version for the TX2 does not support. Also, the Transfer Learning Toolkit seems especially useful in resource-constrained embedded use cases; would be a waste to just use that for server-side solutions.

And another question: will it be possible to use the models on the tf_trt github in Deepstream?

Hi Frederiki,

Nvdia is working toward unified deepstream, but no timeline to releasse.
BTW, tegra and tesla has many HW design difference, so it is hard to cover two platform totally.

We are also exposing some interfaces to let customer implement unsupported layer in gst-nvinfer plugin.

Thanks
wayne zhu

I meet make error when I build trt-yolo app:

g++ -I"usr/include/aarch64-linux-gnu" -I"/usr/local/cuda-9.0/include" -I "/usr/include" -c -o build/yolov3-tiny.o -O2 -std=c++11 -lstdc++fs -ldl -fPIC -Wall -Wunused-function -Wunused-variable -Wfatal-errors -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include yolov3-tiny.cpp
In file included from ds_image.h:28:0,
                 from calibrator.h:29,
                 from yolo.h:29,
                 from yolov3-tiny.h:29,
                 from yolov3-tiny.cpp:26:
trt_utils.h:83:22: error: 'nvinfer1::DimsHW YoloTinyMaxpoolPaddingFormula::compute(nvinfer1::DimsHW, nvinfer1::DimsHW, nvinfer1::DimsHW, nvinfer1::DimsHW, nvinfer1::DimsHW, const char*) const' marked 'override', but does not override
     nvinfer1::DimsHW compute(nvinfer1::DimsHW inputDims, nvinfer1::DimsHW kernelSize,
                      ^
compilation terminated due to -Wfatal-errors.
Makefile:85: recipe for target 'build/yolov3-tiny.o' failed
make[1]: *** [build/yolov3-tiny.o] Error 1
make[1]: Leaving directory '/home/nvidia/liuhang/deepstream-plugins/sources/lib'
Makefile:75: recipe for target 'deps' failed
make: *** [deps] Error 2

actually, I already updated mu jetpack from 3.2 to 3.3, and I also check the version of tensorrt:

ii  libnvinfer-dev                              4.1.3-1+cuda9.0                               arm64        TensorRT development libraries and headers
ii  libnvinfer-samples                          4.1.3-1+cuda9.0                               arm64        TensorRT samples and documentation
ii  libnvinfer4                                 4.1.3-1+cuda9.0                               arm64        TensorRT runtime libraries
ii  tensorrt                                    4.0.2.0-1+cuda9.0                             arm64        Meta package of TensorRT

could someone help to analyze this issue?

Can you rollback TRT version to 4.0.4 and try again?

I just do some test and find that, this issue is imported since the below commit:

commit b9ed1b927aa5dd1ed509bf74e3854f3a04ff6013
Author: Chandrahas Jagadish Ramalad <chandrahasj@nvidia.com>
Date:   Wed Nov 14 16:31:44 2018 -0800

    Resolve build conflicts for TRT 5

so I rollback to the former commit 7f27f22d674c64f4859dd1da896a43e35b0b9063 and everything is ok.

Hi,
I got some warnings when I try to run nvgstiva-app with JetPack3.3 as follows:

nvgstiva-app -c /home/nvidia/configs/PGIE-FP16-CarType-CarMake-CarColor.txt 

(gst-plugin-scanner:3789): GStreamer-WARNING **: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstclutter.so': /usr/lib/aarch64-linux-gnu/libgbm.so.1: undefined symbol: drmGetDevice2

(gst-plugin-scanner:3789): GStreamer-WARNING **: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstclutter-3.0.so': /usr/lib/aarch64-linux-gnu/libgbm.so.1: undefined symbol: drmGetDevice2

(gst-plugin-scanner:3789): GStreamer-WARNING **: Failed to load plugin '/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstvaapi.so': /usr/lib/aarch64-linux-gnu/libva-drm.so.1: undefined symbol: drmGetClient
------------>  -----------------

It means the related gstreamer plugins are invalidated. They are on the blacklist when I run gst-inspect-1.0

gst-inspect-1.0 -b
Blacklisted files:
  libgstvaapi.so
  libgstclutter-3.0.so
  libgstclutter.so

Total count: 3 blacklisted files

How can I fix it? Is it caused by using the wrong version of libdrm.so ?