Difference between revisions of "CUDA ISP for NVIDIA Jetson/Performance/Library"
Line 35: | Line 35: | ||
|- style="text-align:right;" | |- style="text-align:right;" | ||
| style="text-align:left; font-weight:bold;" | CudaShift | | style="text-align:left; font-weight:bold;" | CudaShift | ||
− | | style="background-color:#ffd6a5;" | | + | | style="background-color:#ffd6a5;" | 60 |
− | | style="background-color:#ffd6a5;" | | + | | style="background-color:#ffd6a5;" | 51 |
| style="background-color:#ffadad;" | 135 | | style="background-color:#ffadad;" | 135 | ||
| style="background-color:#ffadad;" | 131 | | style="background-color:#ffadad;" | 131 | ||
Line 46: | Line 46: | ||
|- style="text-align:right;" | |- style="text-align:right;" | ||
| style="text-align:left; font-weight:bold;" | CudaDebayer | | style="text-align:left; font-weight:bold;" | CudaDebayer | ||
− | | style="background-color:#ffd6a5;" | | + | | style="background-color:#ffd6a5;" | 22 |
− | | style="background-color:#ffd6a5;" | | + | | style="background-color:#ffd6a5;" | 20 |
| style="background-color:#ffadad;" | 48 | | style="background-color:#ffadad;" | 48 | ||
| style="background-color:#ffadad;" | 39 | | style="background-color:#ffadad;" | 39 | ||
Line 57: | Line 57: | ||
|- style="text-align:right;" | |- style="text-align:right;" | ||
| style="text-align:left; font-weight:bold;" | CudaWhiteBalancer | | style="text-align:left; font-weight:bold;" | CudaWhiteBalancer | ||
− | | style="background-color:#ffd6a5;" | | + | | style="background-color:#ffd6a5;" | 4056 |
− | | style="background-color:#ffd6a5;" | | + | | style="background-color:#ffd6a5;" | 5966 |
| style="background-color:#ffadad;" | 4844 | | style="background-color:#ffadad;" | 4844 | ||
| style="background-color:#ffadad;" | 8091 | | style="background-color:#ffadad;" | 8091 | ||
Line 68: | Line 68: | ||
|- style="text-align:right;" | |- style="text-align:right;" | ||
| style="text-align:left; font-weight:bold;" | CudaColorSpaceConverter | | style="text-align:left; font-weight:bold;" | CudaColorSpaceConverter | ||
− | | style="background-color:#ffd6a5;" | | + | | style="background-color:#ffd6a5;" | 20 |
− | | style="background-color:#ffd6a5;" | | + | | style="background-color:#ffd6a5;" | 17 |
| style="background-color:#ffadad;" | 45 | | style="background-color:#ffadad;" | 45 | ||
| style="background-color:#ffadad;" | 52 | | style="background-color:#ffadad;" | 52 | ||
Line 82: | Line 82: | ||
|- style="text-align:right;" | |- style="text-align:right;" | ||
| style="text-align:left; font-weight:bold;" | CPU usage (%) | | style="text-align:left; font-weight:bold;" | CPU usage (%) | ||
− | | style="background-color:#ffd6a5;" | | + | | style="background-color:#ffd6a5;" | 0.211111 |
− | | style="background-color:#ffd6a5;" | | + | | style="background-color:#ffd6a5;" | 0.129419 |
| style="background-color:#ffadad;" | 0.491435 | | style="background-color:#ffadad;" | 0.491435 | ||
| style="background-color:#ffadad;" | 0.458062 | | style="background-color:#ffadad;" | 0.458062 | ||
Line 93: | Line 93: | ||
|- style="text-align:right;" | |- style="text-align:right;" | ||
| style="text-align:left; font-weight:bold;" | CPU RAM (kB) | | style="text-align:left; font-weight:bold;" | CPU RAM (kB) | ||
− | | style="background-color:#ffd6a5;" | | + | | style="background-color:#ffd6a5;" | 160295 |
− | | style="background-color:#ffd6a5;" | | + | | style="background-color:#ffd6a5;" | 157636 |
| style="background-color:#ffadad;" | 173613 | | style="background-color:#ffadad;" | 173613 | ||
| style="background-color:#ffadad;" | 173477 | | style="background-color:#ffadad;" | 173477 | ||
Line 115: | Line 115: | ||
|- style="text-align:right;" | |- style="text-align:right;" | ||
| style="text-align:left; font-weight:bold;" | GPU RAM (kB) | | style="text-align:left; font-weight:bold;" | GPU RAM (kB) | ||
− | | style="background-color:#ffd6a5;" | | + | | style="background-color:#ffd6a5;" | 86700 |
− | | style="background-color:#ffd6a5;" | | + | | style="background-color:#ffd6a5;" | 135899 |
| style="background-color:#ffadad;" | 105247 | | style="background-color:#ffadad;" | 105247 | ||
| style="background-color:#ffadad;" | 107641 | | style="background-color:#ffadad;" | 107641 |
Revision as of 13:33, 28 March 2023
CUDA ISP for NVIDIA Jetson | |
---|---|
![]() | |
CUDA ISP for NVIDIA Jetson Basics | |
|
|
Getting Started | |
|
|
User Manual | |
|
|
GStreamer | |
|
|
Examples | |
|
|
Performance | |
|
|
Contact Us | |
|
Library API performance
To measure the CUDA ISP API performance, we built a simple example (not included in the production code) that iterates over the apply methods and records performance metrics for each iteration. We recorded the duration of each apply method separately. We then recorded the CPU and GPU usage, as well as the CPU RAM and GPU RAM usage for the complete processing pipeline running at 30 fps. We recorded the performance statistics for 1080p and 4K buffers. We recorded the performance on a Jetson Nano, Jetson Xavier NX, Jetson Xavier AGX, and Jetson Orin.
The following table summarizes CUDA ISP's performance results:
Platform | Jetson Orin | Jetson Xavier AGX | Jetson Xavier NX | Jetson Nano | ||||
---|---|---|---|---|---|---|---|---|
Buffer size | 1080p | 4K | 1080p | 4K | 1080p | 4K | 1080p | 4K |
Processing time by algorithm (microseconds) | ||||||||
CudaShift | 60 | 51 | 135 | 131 | 93 | 93 | 135 | 147 |
CudaDebayer | 22 | 20 | 48 | 39 | 39 | 31 | 53 | 55 |
CudaWhiteBalancer | 4056 | 5966 | 4844 | 8091 | 1360 | 4249 | 5071 | 18903 |
CudaColorSpaceConverter | 20 | 17 | 45 | 52 | 35 | 34 | 55 | 57 |
Resource consumption profile | ||||||||
CPU usage (%) | 0.211111 | 0.129419 | 0.491435 | 0.458062 | 0.523657 | 0.477216 | 0.836478 | 0.819940 |
CPU RAM (kB) | 160295 | 157636 | 173613 | 173477 | 173539 | 171987 | 146295 | 147580 |
GPU usage (%) | 5.48 | 17.91 | 25.12 | 94.6 | ||||
GPU RAM (kB) | 86700 | 135899 | 105247 | 107641 | 100387 | 106288 | 91733 | 116833 |