Difference between revisions of "GStreamer Based Image Signal Processor/Performance/Color Space Conversion"

From RidgeRun Developer Connection
Jump to: navigation, search
(CPU)
(Replaced content with "#REDIRECT [https://developer.ridgerun.com/wiki/index.php?title=GStreamer_Based_Image_Signal_Processor/Performance/imx8 i.MX8 Performance]")
(Tag: Replaced)
 
(24 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<noinclude>
+
#REDIRECT [https://developer.ridgerun.com/wiki/index.php?title=GStreamer_Based_Image_Signal_Processor/Performance/imx8 i.MX8 Performance]
{{GStreamer Based Image Signal Processor/Head|previous=Performance/Debayer|next=Contact Us Pipelines|keywords=}}
 
</noinclude>
 
 
 
The following section describes some relevant performance measurements during the execution of the color space correction kernel for a few standard resolutions. It begins with a summary of the results detailed on the following sections, as well as the pipelines used to capture such results.  
 
 
 
= Summary =
 
== Benchmarking ==
 
 
 
==== Pipeline ====
 
 
 
All the measurements below were made using the following minimal pipeline.
 
 
 
<syntaxhighlight lang=bash>
 
WIDTH=1920
 
HEIGHT=1080
 
 
 
gst-launch-1.0 videotestsrc ! 'video/x-raw,format=(string)RGBA,width=$WIDTH,height=$HEIGHT,framerate=(fraction)30/1' ! oclcsc ! fakesink -v
 
</syntaxhighlight>
 
 
 
==== CPU ====
 
 
 
{| class="wikitable"
 
|-
 
! Resolution !! CPU usage !! Memory !! Max Framerate !! Exec Time
 
|-
 
| 640x480 || 18 || 19196 || 170 || 32.9
 
 
 
|-
 
| 1280x720 || 12 || 15824 || 63 || 59.3
 
 
 
|-
 
| 1920x1080 || 18 || 18168 || 29 || 169.5
 
 
 
|}
 
 
 
==CPU usage==
 
These measurements were taken with '''top''' app to see the behavior of the pipeline while running, but we have to have in account that videotestsrc is used to generate the buffers and it consumes a lot of CPU.
 
 
 
==Memory usage==
 
These measurements were taken with '''meminfo''' file to see the behavior of the pipeline while running, but we have to have in account that videotestsrc is used to generate the buffers and it depends on the framerate due to the number of buffers generated by videotestsrc.
 
 
 
==Maximum Framerate==
 
These measurements were taken with '''gstperf''' tool to see the behavior of the pipeline while running, with videotestsrc we are able to push buffers as much as possible to the element. The image below shows the maximum framerate that the debayer element supports. It depends on the execution time of the debayer kernel algorithm.
 
 
 
==Execution time==
 
These measurements were taken putting some '''timestamps''' before and after the processing to measure just the execution time for the debayer kernel algorithm by each frame and avoiding possible false measurements from the GStreamer plugin. The image below shows the debayer execution time by each frame for each resolution.
 
 
 
__TOC__
 
 
 
<noinclude>
 
{{GStreamer Based Image Signal Processor/Foot|Performance/Debayer|Contact Us}}
 
</noinclude>
 

Latest revision as of 18:33, 9 December 2019