_Syd
June 8, 2018, 1:00pm
1
I have a problems on J120 / TX1 to write on SD/USB (exfat format):
4MB/S in MicroUSB slot. And write 4 MB/s on USB2.
2.5MB/S on MicroSD Samsung EVO 256Go , U3 HSC I and F3 tools .
In this link , we read answers :
https://devtalk.nvidia.com/default/topic/949550/jetson-tx1/sd-card-limitations-/post/4992357/#4992357
I think we can write/read for 10MB/s with HSC I , U1.
i can write 2 x FHD camera with 18Mbits/s and one 4K 60Mbit/s .
Have see this features. Is this a normal operating flow?
@Syd
Sorry, not really understand your question. Could you have more detail information.
_Syd
June 11, 2018, 6:40am
3
i try to write on MicroSD ( slot) , but few times that write to 2.5 MBytes/s .
Question is know if it work to 10MByes/S like UHS I U1 or not ?
Hi Syd ,
List our internal test result for you reference:
MicroSD Card-DD-Read (512K)(MBps▲) 83.64
MicroSD Card-DD-Write (512K)(MBps▲) 68.56
Test MicroSD Card: Sandisk 16GB Micro SDHC UHS-I card
Not sure if this one is related. Please also take a look.
https://devtalk.nvidia.com/default/topic/1031139
_Syd
July 3, 2018, 9:38am
6
I have testing MicroSD with Ext4 format and Fuse (exfat) …
with ext4 , writting into 6MB/s on TX1 and ~29MB/s on TX2.
may be an issue with SDHC drivers and Fuse format.
Have you checked this node “/sys/kernel/debug/mmc2/ios”? Is the speed class correct?
_Syd
July 4, 2018, 7:49am
8
Testing on new TX1/ R24.2.3 and Exfat MicroSD.
without MicroSD :
ubuntu@tegra-ubuntu:~$ sudo cat /sys/kernel/debug/mmc2/ios
clock: 0 Hz
vdd: 0 (invalid)
bus mode: 1 (open drain)
chip select: 0 (don't care)
power mode: 0 (off)
bus width: 0 (1 bits)
timing spec: 0 (legacy)
signal voltage: 0 (3.30 V)
ubuntu@tegra-ubuntu:~$ sudo cat /sys/kernel/debug/mmc2/speed
0
I pluggs :
ubuntu@tegra-ubuntu:~$ sudo cat /sys/kernel/debug/mmc2/ios
clock: 208000000 Hz
vdd: 17 (2.9 ~ 3.0 V)
bus mode: 2 (push-pull)
chip select: 0 (don't care)
power mode: 2 (on)
bus width: 2 (4 bits)
timing spec: 6 (sd uhs SDR104)
signal voltage: 0 (1.80 V)
ubuntu@tegra-ubuntu:~$ sudo cat /sys/kernel/debug/mmc2/speed
3
ubuntu@tegra-ubuntu:~$ f3write --end-at=1 /media/ubuntu/09EA-54C1/
Removing old file 1.h2w ...
Free space: 29.15 GB
Creating file 1.h2w ... 13.04% -- 5.97 MB/s -- 2:29
ubuntu@tegra-ubuntu:~$ sudo cat /sys/kernel/debug/mmc2/ios
clock: 208000000 Hz
vdd: 17 (2.9 ~ 3.0 V)
bus mode: 2 (push-pull)
chip select: 0 (don't care)
power mode: 2 (on)
bus width: 2 (4 bits)
timing spec: 6 (sd uhs SDR104)
signal voltage: 0 (1.80 V)
ubuntu@tegra-ubuntu:~$ sudo cat /sys/kernel/debug/mmc2/speed
3
ubuntu@tegra-ubuntu:~$ f3write --end-at=1 /media/ubuntu/718B-169F/
Removing old file 1.h2w ...
Free space: 120.84 GB
Creating file 1.h2w ... 15.62% -- 8.00 MB/s -- 1:48
Docs for Samsung card :
So, how Samsung can annonce a Micro SDXC UHS-I with write speed up to 90MB/s ?
there are only 8.00 MB/s on TX1/r24.2.3 … and less on TX1 r24.2.1.
I didn’t know if there are a “/sys/kernel/debug/mmc2/ios” issue. i used simple rootfs for TX1 and vanilla r24.2.3Linux_for_Tegra .
Syd ,
How about trying to write this sd card on host pc first? If your card is able to r/w on desired speed on host, the issue would be on tegra and we may need further check.
_Syd
July 4, 2018, 11:56am
10
Good idea !
i’m testing with Samsung 256 GB EVO PLUS MicroSD card on ubuntu 16.04 and I7.
Format Exfat (fuse) :
internal SD card reader
syd@prime:~/usr/workspaces/workspace_projects$ f3write --end-at=1 /media/syd/718B-169F/
Removing old file 1.h2w ...
Free space: 120.09 GB
Creating file 1.h2w ... OK!
Free space: 119.09 GB
Average writing speed: 3.29 MB/s
USB2 MicroSD Card reader
syd@prime:~/usr/workspaces/workspace_projects$ f3write --end-at=1 /media/syd/3489-57FB/
Free space: 238.46 GB
Creating file 1.h2w ... OK!
Free space: 237.46 GB
Average writing speed: 5.57 MB/s
USB 3 MicroSD Card reader
syd@prime:~/usr/workspaces/workspace_projects$ f3write --end-at=1 /media/syd/718B-169F/
Removing old file 1.h2w ...
Free space: 120.09 GB
Creating file 1.h2w ... OK!
Free space: 119.09 GB
Average writing speed: 7.87 MB/s
Format EXT4 :
internal SD card reader
syd@prime:~/usr/workspaces/workspace_projects$ f3write --end-at=1 /media/syd/bc91b752-4672-4c83-b632-5c7d8fa4692a/
Free space: 234.54 GB
Creating file 1.h2w ... OK!
Free space: 233.54 GB
Average writing speed: 7.50 MB/s
USB2 MicroSD Card reader
syd@prime:~/usr/workspaces/workspace_projects$ f3write --end-at=1 /media/syd/bc91b752-4672-4c83-b632-5c7d8fa4692a/
Free space: 234.54 GB
Creating file 1.h2w ... OK!
Free space: 233.54 GB
Average writing speed: 14.83 MB/s
USB3 MicroSD Card reader
syd@prime:~/usr/workspaces/workspace_projects$ f3write --end-at=1 /media/syd/bc91b752-4672-4c83-b632-5c7d8fa4692a/
Free space: 234.54 GB
Creating file 1.h2w ... OK!
Free space: 233.54 GB
Average writing speed: 30.31 MB/s
thus , there is a loss of writing speed with the MicroSD in exfat type.
I think this loss is generalized on the USB keys and SSD sous linux.
In the future, I will privilege the use of the ext4 type in order to optimize the 4K captures.
Of course, with Average writing speed: 30.31 MB/s , we are far from the capabilities announced by Samsung. :-)
_Syd
November 23, 2018, 3:24pm
11
I back with strong issu
I have testing MicroSD with Ext4 format and Fuse (exfat) …
with ext4 , writting into 6MB/s on TX1 and ~29MB/s on TX2.
may be an issue with SDHC drivers and Fuse format.
I’m testing with f3write … but, i’m see that we must rebuilf f3write on TX(1).
After compile , tests are than better old tests.
We can write files or records 50Go video (40Mbits/s) in ExFat with Gstreamer ( with shell and in gst api ) with USB2 port.
But, when we used av_write_packet and av_interleaved_write_frame from the ffmpeg api (for h264/mp4).
we testing the time to write : more than 100ms to write a h264 buffer ( frome NvVideoEncoder) on 10 fps video . so, the application have more buffers than this can write .
Many times, there are more 5 second to write (av_interleaved_write_frame) and the process have status “PROCESS STATE CODES D” (uninterruptible sleep) like that’s wait to write in usb key …
This problems is on 1To or 2To usb key. that’s work on USB 16Go (from quality) and MicroSD ( on reader ).
How can i optimize Exfat/fuse writing ? Why that’s work on Gstreamer ?
Please file a new topic for it. Thanks.
_Syd
November 30, 2018, 9:11am
13
Hello,
Thank you for your subgestion.
i’m testing to write with some methods :
std::ofstream write well 40Mbits/s in h264 file (without muxing)
av_write_frame has to poor performance in h264/mp4 muxing.
With Minimp4 sample , i build a “h264 to mp4” function ( source https://github.com/lieff/minimp4 ).
For the process status :“PROCESS STATE CODES D” is good between my application and /sbin/mount.exfat process.
We keep minimp4 like better method.
I will not open new topic between library and limited ressource on usb2.