OpenGL Accelerated HTML Overlay: Performance - NVIDIA Jetson
|
|
OpenGL Accelerated HTML Overlay | |
---|---|
Basics | |
|
|
Getting Started | |
|
|
Library User Manual | |
|
|
GStreamer | |
|
|
Examples | |
|
|
Performance | |
|
|
Contact Us | |
|
Contents
Library API performance
The API has two major components: the hardware-accelerated graphical rendering done by OpenGL and the web rendering engine done by Webkit GTK. In the following section, you will find the performance for the API separated into these two sections.
Graphical Rendering by OpenGL
In this section, we present results about the performance of HTML Overlay tested in the following setup:
- Board: NVIDIA Jetson Xavier NX
- Jetpack: 5.1
All the packages and dependencies are retrieved from the default APT repositories.
The following table shows the CPU usage, GPU usage, processing time and FPS.
Board | NVIDIA Jetson Xavier NX | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Resolution | 4K | +1080p | +720p | |||||||||
Measurement | CPU usage (%) | GPU usage (%) | Processing time (ms) | FPS | CPU usage (%) | GPU usage (%) | Processing time (ms) | FPS | CPU usage (%) | GPU usage (%) | Processing time (ms) | FPS |
Power Configuration | 10 W Desktop Mode | |||||||||||
Upload | 6.34 | 36.99 | 11.46 | 87.24 | 7.25 | 19.64 | 14 | 71.4 | 4.44 | 15.72 | 7.293 | 137 |
Draw | 0.16 | 11.96 | 4.329 | 231 | 0.36 | 7.71 | 2.5 | 395 | 0.40 | 5.67 | 2.077 | 481 |
Download | 7.70 | 29.08 | 15.053 | 66.43 | 5 | 14.73 | 8.4 | 118 | 3.14 | 6.53 | 4.552 | 220 |
Power Configuration | 20 W + Jetson Clocks (Max Power) | |||||||||||
Upload | 4.25 | 6.40 | 11.357 | 88 | 1.45 | 2.21 | 2.997 | 334 | 0.77 | 1.30 | 1.492 | 670 |
Draw | 0.09 | 1.59 | 0.773 | 1294 | 0.09 | 0.82 | 0.478 | 2092 | 0.10 | 0.66 | 0.443 | 2309 |
Download | 2.73 | 6.43 | 6.489 | 154.1 | 0.94 | 2.13 | 1.947 | 514 | 0.57 | 0.84 | 1.071 | 933.7 |
Board | NVIDIA Jetson Xavier NX | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Resolution | 4K | +1080p | +720p | |||||||||
Measurement | CPU usage (%) | GPU usage (%) | Processing time (ms) | FPS | CPU usage (%) | GPU usage (%) | Processing time (ms) | FPS | CPU usage (%) | GPU usage (%) | Processing time (ms) | FPS |
Power Configuration | 10 W Desktop Mode | |||||||||||
Upload | 6.34 | 36.99 | 11.46 | 87.24 | 7.25 | 19.64 | 14 | 71.4 | 4.44 | 15.72 | 7.293 | 137 |
Draw | 0.16 | 11.96 | 4.329 | 231 | 0.36 | 7.71 | 2.5 | 395 | 0.40 | 5.67 | 2.077 | 481 |
Download | 7.70 | 29.08 | 15.053 | 66.43 | 5 | 14.73 | 8.4 | 118 | 3.14 | 6.53 | 4.552 | 220 |
Power Configuration | 20 W + Jetson Clocks (Max Power) | |||||||||||
Upload | 4.25 | 6.40 | 11.357 | 88 | 1.45 | 2.21 | 2.997 | 334 | 0.77 | 1.30 | 1.492 | 670 |
Draw | 0.09 | 1.59 | 0.773 | 1294 | 0.09 | 0.82 | 0.478 | 2092 | 0.10 | 0.66 | 0.443 | 2309 |
Download | 2.73 | 6.43 | 6.489 | 154.1 | 0.94 | 2.13 | 1.947 | 514 | 0.57 | 0.84 | 1.071 | 933.7 |
GStreamer plugin performance
The plugin was tested with an example overlay and a camera, using a Jetson Xavier NX with Jetpack 5.1.1. The measurements were taken with the following pipeline, using gst-perf:
gst-launch-1.0 -ve nvarguscamerasrc num-buffers=300 ! "video/x-raw(memory:NVMM),height=$H,width=$W,framerate=30/1" ! nvvidconv flip-method=2 ! queue ! htmloverlay url="http://0.0.0.0:8000/overlay.html" enable-js=true web-refresh-rate=10 ! perf ! queue ! nvvidconv ! xvimagesink
Board | Jetson Xavier NX | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Resolution | +720p | +1080p | +4k | |||||||||
FPS(10W-4core) | 166.6167 | 54.7143 | 13.4852 | |||||||||
FPS(20W-6core & jetson-clocks) | 120.5662 | 56.2988 | 12.7323 |
Used overlay
The user overlay (click View Source on the wiki to see the html):