Flashing Jetson nano EMMC (16GB) give full space in EMMC storage

Hello everyone.
For some reason, I use jetson nano to run our computer vision product (using deepstream).
However, after installing two components (host components, Jetson SDK components). My storage is full.


If I only install host components, I cannot run deepstream code (deepstream container l4t:21.02) .
Please give me some advice to reduce storage usage.

Hi,
Please try the steps in
DS app running on SD, not running on eMMC - Part II - #5 by DaneLLL

Thanks for your help. I will try and let you know later.

Hi @DaneLLL . Thank you for your help.
I followed and installed all packages in the link that you mentioned.
However, after pulling nvcr.io/nvidia/deepstream-l4t:5.1-21.02-samples from nvidia-ngc. I cant run my code - (runs normally on jetson nano sd card)
The problem is I can’t create pgie or any deepstream-plugin.

Here ís the log:

Creating Pipeline 
 
Creating streammux 
 
Creating uridecodebin for [rtsp://admin:abcd1234@192.168.1.104:554/Streaming/Channels/101?transportmode=mcast&profile=Profile_1]
source-bin-00
Creating Pgie 
 
 Unable to create pgie 
Exception in thread Inference-Thread:
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 "/ws/intrusion_detections/streaming/app/libs/detector_stream.py", line 613, in run_first_stream
    create_pipeline(uri_name)
  File "/ws/intrusion_detections/streaming/app/libs/detector_stream.py", line 360, in create_pipeline
    pgie_batch_size = pgie.get_property("batch-size")
AttributeError: 'NoneType' object has no attribute 'get_property'

Here is the log when I run default deepstream in docker.

deepstream-app: error while loading shared libraries: /usr/lib/aarch64-linux-gnu/libnvinfer.so.7: file too short

Please give some advices.

Hi,
Please try to run the application directly, without docker. Probably the freespace is not enough for running docker.

Hi,
I ran without docker. it runs ok.
Storage remaining 3% (16gb)

Hi @foreverneilyoung , I mention you because your topic is closed.
I also had the same problem as you. @DaneLLL helped me to run deepstream successfully on jetson nano os (ubuntu). However, we are not able to run with docker (5.1-l4t).
Have you ever encountered this problem? can you help me?

Hi. Any update?

Hi,
For using docker, 16GB may not be enough. Would suggest use Xavier NX and move rootfs to external stoage…

On Jetson Nano, suggest run the command directly if you install rootfs to emmc.

The problem seems to be when you move /usr/local to somewhere else, e.g. the sd-card:

  • I’ve had to move some nvidia stuff to from /opt/nvidia to /media/sd-card/opt-nvidia/ due to emmc space problems. Same for /usr/local to /media/sd-card/usr-local/

  • The NVIDIA docker runtime seems to do something weird, where it actually mounts some library directories into the docker. So actually some dependencies are outside (the opposite of what docker is supposed to be…)

  • It would seem that /usr/local would normally mapped to be inside the container, but the container now maps /media/sd-card/usr-local/ instead.

  • This means that /usr/local isn’t in the container and builds fail. You need to therefore add e.g. “-L/media/sd-card/usr-local/cuda-10.2/targets/aarch64-linux/lib/” in the makefiles etc for it to find libraries, such as libcublas which is now accessable at /media/sd-card/usr-local/cuda-10.2/targets/aarch64-linux/lib/libcublas.so

  • It also means you need to do e.g. " export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/media/sd-card/usr-local/cuda-10.2/targets/aarch64-linux/lib/ " to allow libraries to be found at runtime

Thanks @brian0b6iu I will check it and let you know if success