Just reminding everyone that Jetpack 4.4 sucks

It kills everything.

1 Like

@vondalej - sorry for the frustration. The apt-based upgrade issue should now be fixed regarding the units that wouldn’t boot up.

Regarding the TensorFlow, PyTorch, and customized OpenCV packages from your other post - it is to be expected that when upgrading CUDA, cuDNN, ect for packages that rely on these components will also need to be upgraded. For example, if you had PyTorch installed for JetPack 4.3 (CUDA 10 / cuDNN 7.6), and upgraded to JetPack 4.4 (CUDA 10.2 / cuDNN 8.0), you would need to also update your version of PyTorch to a build that was also built against cuDNN 8.0 (btw this is the same behavior as on desktop - if you upgrade your CUDA version, you would typically need to reinstall PyTorch).

On one hand, the apt-based upgrade mechanism avoids the need to totally re-flash your device / SD card. On the other hand, you may still need to upgrade non-JetPack packages that you had installed previously that depend on JetPack components. As mentioned above, I believe this is not all that different than if you were upgrading CUDA on your PC.

Anyways, hope you were able to get back up & running by re-installing these other packages with their updated versions. So that the updated versions can be immediately available and installed, we do make an extra effort to build and provide the updated PyTorch and TensorFlow wheels and containers at the time of release of a new JetPack (even though these are third-party packages).

After fixing pytorch (fairly easy), openCV using jetsonhacks, and finally tensorflow (1.15, your 2 wheel didn’t work) I’m finally seemingly back to square one.

Still pretty irritated and I’ll have to use a test machine before upgrading every again.

we install deepstream 5.0 on jetson nano with jetpack 4.4 image but we fail to run pretrained model like people net,dashcam…when we try to run config file we check in the config file there is path of all necessary files like .bin,.h264 , model file, but there was .engine file missing how can i find . engine file please suggest

deepstream 5.0 and jetpack 4.4 is stable version or not ? for model testing, model deploy please give your suggestion. thank you

I read but I dont remember where, with Deepstream 5.0dp that runs with JP4.4dp, is not compatible with JP4.4. You need wait to Deepstream 5.0 that will be released at end of this month. If you want Deepstream 5dp you should be on JP4.4dp, it is by that I still didn’t update (NX)
Now anyway I’m scary it delete my OpenCV 4.3 with contrib,cuDNN, Cuda and DNN and my ROS installation, I don’t know how they will be affected on NX

I’m also having issues after running sudo apt-get upgrade yesterday. My apps won’t load anymore. The jetson inference library gives an error when trying to load detectNet. I tried reinstalling the inference library, tensorflow, and pytorch but still getting the same error. This is very frustrating. If other packages need to be updated then they should have been included with apt-get upgrade.

That is correct, the version of DeepStream for the JetPack 4.4 production release hasn’t been posted yet. So if you are using DeepStream 5.0, stay on JetPack 4.4 DP for now.

What errors are you getting? If it’s when it goes to load the networks, you might need to remove the .engine files from under jetson-inference/data/networks. Or just delete all the networks, and run the Model Downloader tool again.

Do you mean that you had problems installing the TensorFlow 2.2 wheel, or that your application had problems running with TensorFlow 2?

If the later, TensorFlow 2 has API changes that some applications need to be updated for. Otherwise those programs can continue to use TensorFlow 1.x.

Forgot to mention that I already re-downloaded the networks. I don’t see any .engine files in that folder. Here’s the error I’m receiving:

[TRT] coreReadArchive.cpp (38) - Serialization Error in verifyHeader: 0 (Version tag does not match)
[TRT] INVALID_STATE: std::exception
[TRT] INVALID_CONFIG: Deserialize the cuda engine failed.
[TRT] device GPU, failed to create CUDA engine
detectNet – failed to initialize.
jetson.inference – detectNet failed to load built-in network ‘ssd-mobilenet-v2’
PyTensorNet_Dealloc()
Exception in thread Thread-1:
Traceback (most recent call last):
File “/usr/lib/python3.6/threading.py”, line 916, in _bootstrap_inner
self.run()
File “/usr/lib/python3.6/threading.py”, line 864, in run
self._target(*self._args, **self._kwargs)
File “jetson2.py”, line 210, in NET_SETUP
net = jetson.inference.detectNet(“ssd-mobilenet-v2”, threshold=thresh)
Exception: jetson.inference – detectNet failed to load network

Thanks for your help.

If you go into jetson-inference/data/networks/SSD-Mobilenet-v2, there must be a *.engine file in there. If so, delete it and re-run the program, and it will re-generate the TensorRT engine to match the new version.

I had tried to work around this by adding the TensorRT version to the .engine filename, so on a different version it would automatically re-generate the engine - but I think I need to add additional logic so that if the engine fails to load, it does the re-generation then instead.

2 Likes

That fixed it, thank you!
Are there any performance gains with JP4.4 on the nano?

The 2.2 wheel found here would not install/work

@vondalej
Your feedback is appreciated. In the future, in addition to Docker images of OpenCV, I may also publish apt packages so running the build script is not necessary. In any case, the release will need to be upgraded when underlying dependencies change. That’s mostly unavoidable on any Linux platform with this sort of packaging.

For now, you must build OpenCV from master (4.4.0-pre) since unpatched 4.3.0 has an issue with cuDNN. With my script, as mentioned on GitHub that’s just ./build_opencv.sh master

JetsonHacks version may work as well, but I am not sure when it was last updated. As such, things like cuDNN may not be available.

In the future, a fully containerized Docker approach may help to mitigate this since underlying libraries won’t be tied to the release. That leaves driver compatibility issues still, but it’s better, and the same issues apply on x86-64. FWIW, currently, I do provide releases of the newest OpenCV for JetPack 4.3, 4.4 preview, and 4.4 GA.

https://hub.docker.com/r/mdegans/tegra-opencv/tags

Example run on 4.4 GA:

(sudo) docker run --user $(id -u):$(cut -d: -f3 < <(getent group video)) --runtime nvidia -it --rm mdegans/tegra-opencv:latest

I have NX with JP4.4dp with OpenCV compiled with contrib,cuda,dnn and cudnn. In the upgrade ro JP4.4 I thought just recompile my OpenCV 4.3, should I upgrade to 4.4pre or up if there is available?
Thanks

@fpsychosis
You will have to rebuild when you upgrade to 4.4 GA, or use a pre-built docker image. To rebuild using my script, just do ./build_opencv.sh master. This will build the current version of OpenCV that’s in master (4.4.0-pre). 4.3.0 does not build due to changes in cuDNN.

1 Like

we try to run pretrained peoplenet model on deepstream 5.0 but we fail to run successfully , what we can do for run pretrained model on deepstream 5.0 ?

please give link for download jp4.4dp

what is the use of .engine file when we try to run pre trained model on deepstream 5.0. ? .engine file already present in folder or not ?