This section provides guidance on developing strategies for recording the huge amounts of data that multiple cameras can produce.
Because of storage limitations with the platform's local file system, sensor data is stored on an external USB 3.0 drive. But the drive must be fast enough to keep up with the amount of data that your sensors generate. For example, four cameras generating RAW data at 30 frames per second can exceed the bandwidth of most SSD USB drives.
The required write speed of the drives depends on the number of sensors and the recording format. If you are recording RAW data, calculate the required drive speed as:
width * height * 2 * fps = bytes/second
RAW recording consumes most of the bandwidth.
The following table provides suggestions for recording more than three cameras generating RAW.
Cameras generating RAW | Framerate | Options |
---|---|---|
3-4 | 30 | Attach all cameras to a single Xavier and mount a USB on that Xavier. |
6-8 | 30 |
|
12 | 30 | Use two NVIDIA DRIVE platforms. For each platform, follow the steps as for 6-8 cameras at 30 FPS. |
You should be able to achieve USB3.0-SSD write speeds between 400 and 500- megabytes per second, depending on the brand of the USB3.0 SSD being used. That speed is adequate for three cameras generating RAW data. If you need to store more data than your USB device can handle, consider distributing recording across the different Xavier processors. For more information, see Distributed Recording in this guide.
NVIDIA has tested extensively with Samsung 850 EVO and Samsung 750 EVO SSDs, where the SSDs are formatted with the EXT4 file system. The following are guidelines for ensuring optimal disk speed.
The system automatically mounts the USB drive.
# echo cfq > /sys/block/sda/queue/schedulerThe directory /sys/block/device/queue/iosched contains files that allow the administrator to retrieve and set tunable values related to the I/O scheduler.
# echo 1000 > /sys/module/usbcore/parameters/usbfs_memory_mb
# cat /sys/module/usbcore/parameters/usbfs_memory_mb
/etc/sysctl.conf
# dd if=/dev/zero of=/media/NVidia/folder#/file bs=1G count=10The JBod disk is mounted on:
/media/NVidia/