Forums - Multithreading with FastCV Linux Embedded

2 posts / 0 new
Last post
Multithreading with FastCV Linux Embedded
sagar.kirtany
Join Date: 6 Jul 20
Posts: 7
Posted: Wed, 2020-10-07 22:21

Hello,

We are planning to deploy a multi-threaded computer vision application running on Qualcomm Kryo 460. FastCV library appears to be a very good option to increase the performance of some kernels in our application.

So we have the following questions:

  1. Are there any functional or performance issues with using FastCV in a multi-threaded application?
  2. Is FastCV implemented as a thread-safe library?

Thank you in advance.

 

  • Up0
  • Down0
vkaruchu
Join Date: 27 Jan 20
Posts: 1
Posted: Thu, 2020-10-08 11:45

fastCV by design is single threaded implementation and so you can use it in a multi-threaded application as it is a thread-safe library. 

No functional issues expected, performance is based on processor cycles available at run time.

Please ensure you do the "FastCV initializations" and "FastCV de-initializations" steps only once in case all threads are in the same process. 

 

As a step 1 during session init, do FastCV initializations by calling fcvSetOperationMode with desired mode followed by fcvMemInit function call. 

Then as a step 2 allocate memory using fcvMemInit and Call fastCV functions of your choice till the end of the session in the application. 

Then as a step 3 at the end, during session tear down, do fcvMemFree the previously allocated buffers above and then perform FastCV de-initializations by calling fcvMemDeInit followed by fcvCleanUp functions. 

 

 

 
 
  • Up0
  • Down0
or Register

Opinions expressed in the content posted here are the personal opinions of the original authors, and do not necessarily reflect those of Qualcomm Incorporated or its subsidiaries (“Qualcomm”). The content is provided for informational purposes only and is not meant to be an endorsement or representation by Qualcomm or any other party. This site may also provide links or references to non-Qualcomm sites and resources. Qualcomm makes no representations, warranties, or other commitments whatsoever about any non-Qualcomm sites or third-party resources that may be referenced, accessible from, or linked to this site.