This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Compiler/PROCESSOR-SDK-DRA8X: How to use TDA4 without OpenVX

Part Number: PROCESSOR-SDK-DRA8X

Tool/software: TI C/C++ Compiler

Hi Ti,

we recently try to integrate our project on to TDA4. We found that we almost have no choice but to use OpenVX to reconstruct our project.

So we want to know if there have some ways to use TDA4 target(such as c66, c7x, r5f etc) without OpenVX, and can you show us some app examples?

We also want to know the efficiency variance between OpenVX and no OpenVX, from your perspective.

Please help us !!!

thankyou!!

YingChen

  • Hello,

    Can you tell what your project is ?

    OpenVX integrates TIDL library, vision pre/post processing, vision accelerators, camera and display so that one can build vision/analytics features of the SoC quickly and easily.

    If you want to skip OpenVX and reach c6x, c7x, r5f, you need to use the IPC library to exchange messages with different CPUs and use ION shared memory allocator to allocate and exchange memory between different CPUs.

    Refer to vision_apps/apps/basic_demo/app_linux_arm_mem and app_linux_arm_ipc for the same.

    However I strongly encourage you use OpenVX for the functions listed above. You can write your own OpenVX nodes on C7x, C6x and then easily invoke those from R5F.

    To get started I recommend, try the OpenVX tutorials listed here "tiovx/tutorials" on the EVM.

    regards
    Kedar

  • Hello Kedar,

    Thanks for reply.

    Our project is an APA project which will need camera, display, pre/post processing as you mentioned. We have already implement our project on other hardware before, and most important is that this project involve a lot of engineers that don't know much about OpenVX, so we need to estimate whether we should use this technology that we could not control the risk.

    Could you help us estimate whether it be more efficiency to use OpenVX then not use it, or vice versa.

    We want to know which is the most efficient way (hardware running speed), and how to prove it. 

     

    regards

    YingChen

  • OpenVX allows to access features on C6x, C7x, R5F CPUs from A72 Linux.

    Even if you did not use OpenVX you still need to refer to it and build similar features of IPC and buffer exchange yourself.

    In general OpenVX adds < 1% overhead from performance point vs doing without OpenVX.

    So my recommendation is to use OpenVX vs trying to do everything from scratch.

    What is the other way you are planning to do ?

    regards

    Kedar

  • Hello Kedar,

    Thanks for reply.

    We have considered to use underlying IPC library to implement our idea. But know we think we should use the OpenVX for our first test.

    thanks very much

    regards

    YingChen