€cdocutils.nodes document q)�q}q(U nametypesq}q(XopenvxqˆX*tiovx-in-processor-linux-sdk-on-am57xx-evmqˆXtiovxqˆX$switch-from-opencl-to-openvxfirmwareq ˆX!recompile-tiovx-using-yocto-buildq ˆX)switch-from-openvx-back-to-openclfirmwareq ˆXtiovx-softwareq ˆXrun-tiovx-test-applicationq ˆXtiovx-dsp-kernels-in-vxlibqˆuUsubstitution_defsq}qUparse_messagesq]qcdocutils.nodes system_message q)�q}q(U rawsourceqUU attributesq}q(Udupnamesq]UlevelKUidsq]Ubackrefsq]qUid1qaUsourcecdocutils.nodes reprunicode qX3source/linux/Foundational_Components/OpenVX.rst.incq…�q }q!bUclassesq"]Unamesq#]UlineKUtypeUINFOq$uUparentq%cdocutils.nodes rubric q&)�q'}q((hXOpenVXq)h%cdocutils.nodes section q*)�q+}q,(hUU referencedq-Kh%hUsourceq.h Utagnameq/Usectionq0h}q1(h]q2Xopenvxq3ah"]h]h]q4Uopenvxq5ah#]uUlineq6KUdocumentq7hUchildrenq8]q9(cdocutils.nodes title q:)�q;}q<(hXOpenVXq=h%h+h.h h/Utitleq>h}q?(h]h"]h]h]h#]uh6Kh7hh8]q@cdocutils.nodes Text qAXOpenVXqB…�qC}qD(hh=h%h;ubaubh'cdocutils.nodes paragraph qE)�qF}qG(hX OpenVX is an open, Khronos (https://www.khronos.org/openvx/) defined standard for cross platform acceleration of computer vision applications. OpenVX enables performance and power-optimized computer vision processing, with emphasis on embedded and real-time use cases:h%h+h.h h/U paragraphqHh}qI(h]h"]h]h]h#]uh6K h7hh8]qJ(hAXOpenVX is an open, Khronos (qK…�qL}qM(hXOpenVX is an open, Khronos (h%hFubcdocutils.nodes reference qN)�qO}qP(hXhttps://www.khronos.org/openvx/qQh}qR(UrefurihQh]h]h]h"]h#]uh%hFh8]qShAXhttps://www.khronos.org/openvx/qT…�qU}qV(hUh%hOubah/U referenceqWubhAXÑ) defined standard for cross platform acceleration of computer vision applications. OpenVX enables performance and power-optimized computer vision processing, with emphasis on embedded and real-time use cases:qX…�qY}qZ(hXÑ) defined standard for cross platform acceleration of computer vision applications. OpenVX enables performance and power-optimized computer vision processing, with emphasis on embedded and real-time use cases:h%hFubeubcdocutils.nodes bullet_list q[)�q\}q](hUh%h+h.h h/U bullet_listq^h}q_(Ubulletq`X-h]h]h]h"]h#]uh6Kh7hh8]qa(cdocutils.nodes list_item qb)�qc}qd(hX)advanced driver assistance systems (ADAS)qeh%h\h.h h/U list_itemqfh}qg(h]h"]h]h]h#]uh6Nh7hh8]qhhE)�qi}qj(hheh%hch.h h/hHh}qk(h]h"]h]h]h#]uh6Kh8]qlhAX)advanced driver assistance systems (ADAS)qm…�qn}qo(hheh%hiubaubaubhb)�qp}qq(hXface, body and gesture trackingqrh%h\h.h h/hfh}qs(h]h"]h]h]h#]uh6Nh7hh8]qthE)�qu}qv(hhrh%hph.h h/hHh}qw(h]h"]h]h]h#]uh6Kh8]qxhAXface, body and gesture trackingqy…�qz}q{(hhrh%huubaubaubhb)�q|}q}(hXsmart video surveillanceq~h%h\h.h h/hfh}q(h]h"]h]h]h#]uh6Nh7hh8]q€hE)�q�}q‚(hh~h%h|h.h h/hHh}qƒ(h]h"]h]h]h#]uh6Kh8]q„hAXsmart video surveillanceq……�q†}q‡(hh~h%h�ubaubaubhb)�qˆ}q‰(hXobject and scene reconstructionqŠh%h\h.h h/hfh}q‹(h]h"]h]h]h#]uh6Nh7hh8]qŒhE)�q�}qŽ(hhŠh%hˆh.h h/hHh}q�(h]h"]h]h]h#]uh6Kh8]q�hAXobject and scene reconstructionq‘…�q’}q“(hhŠh%h�ubaubaubhb)�q”}q•(hXaugmented realityq–h%h\h.h h/hfh}q—(h]h"]h]h]h#]uh6Nh7hh8]q˜hE)�q™}qš(hh–h%h”h.h h/hHh}q›(h]h"]h]h]h#]uh6Kh8]qœhAXaugmented realityq�…�qž}qŸ(hh–h%h™ubaubaubhb)�q }q¡(hXvisual inspectionq¢h%h\h.h h/hfh}q£(h]h"]h]h]h#]uh6Nh7hh8]q¤hE)�q¥}q¦(hh¢h%h h.h h/hHh}q§(h]h"]h]h]h#]uh6Kh8]q¨hAXvisual inspectionq©…�qª}q«(hh¢h%h¥ubaubaubhb)�q¬}q­(hXrobotics and more. h%h\h.h h/hfh}q®(h]h"]h]h]h#]uh6Nh7hh8]q¯hE)�q°}q±(hXrobotics and more.q²h%h¬h.h h/hHh}q³(h]h"]h]h]h#]uh6Kh8]q´hAXrobotics and more.qµ…�q¶}q·(hh²h%h°ubaubaubeubhE)�q¸}q¹(hX Though originally intended for vision only embedded applications, it may be extended in future to non-vision applications suitable for data flow representation.qºh%h+h.h h/hHh}q»(h]h"]h]h]h#]uh6Kh7hh8]q¼hAX Though originally intended for vision only embedded applications, it may be extended in future to non-vision applications suitable for data flow representation.q½…�q¾}q¿(hhºh%h¸ubaubh&)�qÀ}qÁ(hXTIOVXqÂh%h+h.h h/UrubricqÃh}qÄ(h]qÅUtiovxqÆah]h]h"]h#]qÇhauh6Nh7hh8]qÈhAXTIOVXqÉ…�qÊ}qË(hhÂh%hÀubaubhE)�qÌ}qÍ(hX0TIOVX is TI's implementation of OpenVX Standard.qÎh%h+h.h h/hHh}qÏ(h]h"]h]h]h#]uh6Kh7hh8]qÐhAX0TIOVX is TI's implementation of OpenVX Standard.qÑ…�qÒ}qÓ(hhÎh%hÌubaubhE)�qÔ}qÕ(hX€TIOVX allows users to create vision and compute applications using OpenVX API. These OpenVX applications can be executed on TI SoCs like AM57xx (including A15 and C66 cores), following OpenVX 1.1 standard. TIOVX also provides optimized OpenVX kernels for C66x DSP. An extension API allows users to integrate their own natively developed custom kernels and call them using OpenVX APIs.qÖh%h+h.h h/hHh}q×(h]h"]h]h]h#]uh6K h7hh8]qØhAX€TIOVX allows users to create vision and compute applications using OpenVX API. These OpenVX applications can be executed on TI SoCs like AM57xx (including A15 and C66 cores), following OpenVX 1.1 standard. TIOVX also provides optimized OpenVX kernels for C66x DSP. An extension API allows users to integrate their own natively developed custom kernels and call them using OpenVX APIs.qÙ…�qÚ}qÛ(hhÖh%hÔubaubcdocutils.nodes image qÜ)�qÝ}qÞ(hX.. Image:: ../images/Tiovx.PNG h%h+h.h h/Uimageqßh}qà(UuriXlinux/../images/Tiovx.PNGqáh]h]h]h"]U candidatesqâ}qãU*hásh#]uh6K(h7hh8]ubcdocutils.nodes line_block qä)�qå}qæ(hUh%h+h.h h/U line_blockqçh}qè(h]h"]h]h]h#]uh6K)h7hh8]qécdocutils.nodes line qê)�që}qì(hUUindentqíKh%håh.h h/h6h}qî(h]h"]h]h]h#]uh6Kh7hh8]ubaubh&)�qï}qð(hXTIOVX softwareqñh%h+h.h h/hÃh}qò(h]qóUtiovx-softwareqôah]h]h"]h#]qõh auh6Nh7hh8]qöhAXTIOVX softwareq÷…�qø}qù(hhñh%hïubaubcdocutils.nodes table qú)�qû}qü(hUh%h+h.h h/Utableqýh}qþ(h]h"]h]h]h#]uh6Nh7hh8]qÿcdocutils.nodes tgroup r)�r}r(hUh}r(h]h]h]h"]h#]UcolsKuh%hûh8]r(cdocutils.nodes colspec r)�r}r(hUh}r(h]h]h]h"]h#]UcolwidthK&uh%jh8]h/Ucolspecr ubj)�r }r (hUh}r (h]h]h]h"]h#]UcolwidthK&uh%jh8]h/j ubcdocutils.nodes thead r )�r}r(hUh}r(h]h"]h]h]h#]uh%jh8]rcdocutils.nodes row r)�r}r(hUh}r(h]h"]h]h]h#]uh%jh8]r(cdocutils.nodes entry r)�r}r(hUh}r(h]h"]h]h]h#]uh%jh8]rhE)�r}r(hX Module/Blockrh%jh.h h/hHh}r(h]h"]h]h]h#]uh6K/h8]r hAX Module/Blockr!…�r"}r#(hjh%jubaubah/Uentryr$ubj)�r%}r&(hUh}r'(h]h"]h]h]h#]uh%jh8]r(hE)�r)}r*(hX Descriptionr+h%j%h.h h/hHh}r,(h]h"]h]h]h#]uh6K/h8]r-hAX Descriptionr.…�r/}r0(hj+h%j)ubaubah/j$ubeh/Urowr1ubah/Utheadr2ubcdocutils.nodes tbody r3)�r4}r5(hUh}r6(h]h"]h]h]h#]uh%jh8]r7(j)�r8}r9(hUh}r:(h]h"]h]h]h#]uh%j4h8]r;(j)�r<}r=(hUh}r>(h]h"]h]h]h#]uh%j8h8]r?hE)�r@}rA(hX OpenVX APIrBh%j<h.h h/hHh}rC(h]h"]h]h]h#]uh6K1h8]rDhAX OpenVX APIrE…�rF}rG(hjBh%j@ubaubah/j$ubj)�rH}rI(hUh}rJ(h]h"]h]h]h#]uh%j8h8]rKhE)�rL}rM(hX OpenVX API as defined by KhronosrNh%jHh.h h/hHh}rO(h]h"]h]h]h#]uh6K1h8]rPhAX OpenVX API as defined by KhronosrQ…�rR}rS(hjNh%jLubaubah/j$ubeh/j1ubj)�rT}rU(hUh}rV(h]h"]h]h]h#]uh%j4h8]rW(j)�rX}rY(hUh}rZ(h]h"]h]h]h#]uh%jTh8]r[hE)�r\}r](hX TIOVX APIr^h%jXh.h h/hHh}r_(h]h"]h]h]h#]uh6K3h8]r`hAX TIOVX APIra…�rb}rc(hj^h%j\ubaubah/j$ubj)�rd}re(hUh}rf(h]h"]h]h]h#]uh%jTh8]rghE)�rh}ri(hXTTI extensions and additional APIs in order to efficiently use OpenVX on TI platformsrjh%jdh.h h/hHh}rk(h]h"]h]h]h#]uh6K3h8]rlhAXTTI extensions and additional APIs in order to efficiently use OpenVX on TI platformsrm…�rn}ro(hjjh%jhubaubah/j$ubeh/j1ubj)�rp}rq(hUh}rr(h]h"]h]h]h#]uh%j4h8]rs(j)�rt}ru(hUh}rv(h]h"]h]h]h#]uh%jph8]rwhE)�rx}ry(hXTIOVX Frameworkrzh%jth.h h/hHh}r{(h]h"]h]h]h#]uh6K7h8]r|hAXTIOVX Frameworkr}…�r~}r(hjzh%jxubaubah/j$ubj)�r€}r�(hUh}r‚(h]h"]h]h]h#]uh%jph8]rƒhE)�r„}r…(hXYTI's implementation of OpenVX spec. This layer is agnostic of underlying SoC, OS platformr†h%j€h.h h/hHh}r‡(h]h"]h]h]h#]uh6K7h8]rˆhAXYTI's implementation of OpenVX spec. This layer is agnostic of underlying SoC, OS platformr‰…�rŠ}r‹(hj†h%j„ubaubah/j$ubeh/j1ubj)�rŒ}r�(hUh}rŽ(h]h"]h]h]h#]uh%j4h8]r�(j)�r�}r‘(hUh}r’(h]h"]h]h]h#]uh%jŒh8]r“hE)�r”}r•(hXTIOVX Platformr–h%j�h.h h/hHh}r—(h]h"]h]h]h#]uh6K;h8]r˜hAXTIOVX Platformr™…�rš}r›(hj–h%j”ubaubah/j$ubj)�rœ}r�(hUh}rž(h]h"]h]h]h#]uh%jŒh8]rŸhE)�r }r¡(hX®This layer binds TIOVX framework to a specific platform. Ex, Processor Linux SDK for AM57xx SOCs. This layer also binds TIOVX framework to a specific OS like Linux or TI-RTOSr¢h%jœh.h h/hHh}r£(h]h"]h]h]h#]uh6K;h8]r¤hAX®This layer binds TIOVX framework to a specific platform. Ex, Processor Linux SDK for AM57xx SOCs. This layer also binds TIOVX framework to a specific OS like Linux or TI-RTOSr¥…�r¦}r§(hj¢h%j ubaubah/j$ubeh/j1ubj)�r¨}r©(hUh}rª(h]h"]h]h]h#]uh%j4h8]r«(j)�r¬}r­(hUh}r®(h]h"]h]h]h#]uh%j¨h8]r¯hE)�r°}r±(hXTIOVX Kernel Wrapperr²h%j¬h.h h/hHh}r³(h]h"]h]h]h#]uh6KAh8]r´hAXTIOVX Kernel Wrapperrµ…�r¶}r·(hj²h%j°ubaubah/j$ubj)�r¸}r¹(hUh}rº(h]h"]h]h]h#]uh%j¨h8]r»hE)�r¼}r½(hXkKernel wrappers allow TI and customers to integrate a natively implemented kernel into the TIOVX framework.r¾h%j¸h.h h/hHh}r¿(h]h"]h]h]h#]uh6KAh8]rÀhAXkKernel wrappers allow TI and customers to integrate a natively implemented kernel into the TIOVX framework.rÁ…�rÂ}rÃ(hj¾h%j¼ubaubah/j$ubeh/j1ubj)�rÄ}rÅ(hUh}rÆ(h]h"]h]h]h#]uh%j4h8]rÇ(j)�rÈ}rÉ(hUh}rÊ(h]h"]h]h]h#]uh%jÄh8]rËhE)�rÌ}rÍ(hXTIOVX Conformance testsrÎh%jÈh.h h/hHh}rÏ(h]h"]h]h]h#]uh6KFh8]rÐhAXTIOVX Conformance testsrÑ…�rÒ}rÓ(hjÎh%jÌubaubah/j$ubj)�rÔ}rÕ(hUh}rÖ(h]h"]h]h]h#]uh%jÄh8]r×hE)�rØ}rÙ(hXqOpenVX conformance test from Khronos to make sure an implementation implements OpenVX according to specification.rÚh%jÔh.h h/hHh}rÛ(h]h"]h]h]h#]uh6KFh8]rÜhAXqOpenVX conformance test from Khronos to make sure an implementation implements OpenVX according to specification.rÝ…�rÞ}rß(hjÚh%jØubaubah/j$ubeh/j1ubeh/Utbodyràubeh/UtgroupráubaubhE)�râ}rã(hX&There are two versions of VXLIB kernels: without BAM framework, and with BAM framework. BAM is a low level framework representing directed acyclic graph, where EDMA transfers are heavily utilized to bring 2D memory objects to higher speed L2 memory, thus improving performance almost twofold.räh%h+h.h h/hHh}rå(h]h"]h]h]h#]uh6KLh7hh8]ræhAX&There are two versions of VXLIB kernels: without BAM framework, and with BAM framework. BAM is a low level framework representing directed acyclic graph, where EDMA transfers are heavily utilized to bring 2D memory objects to higher speed L2 memory, thus improving performance almost twofold.rç…�rè}ré(hjäh%jâubaubhE)�rê}rë(hXMCurrent release has kernels with BAM framework. This framework achieves higher performance via heavy use of EDMA, which brings blocks of data from remote DDR memory to local L2, while DSP does the processing. List of these kernels can be checked in https://git.ti.com/processor-sdk/tiovx/trees/master/kernels/openvx-core/c66x/bam.h%h+h.h h/hHh}rì(h]h"]h]h]h#]uh6KRh7hh8]rí(hAXüCurrent release has kernels with BAM framework. This framework achieves higher performance via heavy use of EDMA, which brings blocks of data from remote DDR memory to local L2, while DSP does the processing. List of these kernels can be checked in rî…�rï}rð(hXüCurrent release has kernels with BAM framework. This framework achieves higher performance via heavy use of EDMA, which brings blocks of data from remote DDR memory to local L2, while DSP does the processing. List of these kernels can be checked in h%jêubhN)�rñ}rò(hXPhttps://git.ti.com/processor-sdk/tiovx/trees/master/kernels/openvx-core/c66x/bamróh}rô(Urefurijóh]h]h]h"]h#]uh%jêh8]rõhAXPhttps://git.ti.com/processor-sdk/tiovx/trees/master/kernels/openvx-core/c66x/bamrö…�r÷}rø(hUh%jñubah/hWubhAX.…�rù}rú(hX.h%jêubeubh&)�rû}rü(hXTIOVX DSP Kernels (in VXLIB)rýh%h+h.h h/hÃh}rþ(h]rÿUtiovx-dsp-kernels-in-vxlibrah]h]h"]h#]rhauh6Nh7hh8]rhAXTIOVX DSP Kernels (in VXLIB)r…�r}r(hjýh%jûubaubhE)�r}r(hXyThere are 44 kernels in current release of VXLIB (typically there are multiple implementations for different data types).rh%h+h.h h/hHh}r (h]h"]h]h]h#]uh6K[h7hh8]r hAXyThere are 44 kernels in current release of VXLIB (typically there are multiple implementations for different data types).r …�r }r (hjh%jubaubhE)�r}r(hXKHere is complete list of DSP kernel wrappers (wrappers are part of TIOVX):rh%h+h.h h/hHh}r(h]h"]h]h]h#]uh6K^h7hh8]rhAXKHere is complete list of DSP kernel wrappers (wrappers are part of TIOVX):r…�r}r(hjh%jubaubh[)�r}r(hUh%h+h.h h/h^h}r(h`X-h]h]h]h"]h#]uh6K`h7hh8]r(hb)�r}r(hXAbsDiffrh%jh.h h/hfh}r(h]h"]h]h]h#]uh6Nh7hh8]rhE)�r}r (hjh%jh.h h/hHh}r!(h]h"]h]h]h#]uh6K`h8]r"hAXAbsDiffr#…�r$}r%(hjh%jubaubaubhb)�r&}r'(hXAccumulateSquarer(h%jh.h h/hfh}r)(h]h"]h]h]h#]uh6Nh7hh8]r*hE)�r+}r,(hj(h%j&h.h h/hHh}r-(h]h"]h]h]h#]uh6Kah8]r.hAXAccumulateSquarer/…�r0}r1(hj(h%j+ubaubaubhb)�r2}r3(hX Accumulater4h%jh.h h/hfh}r5(h]h"]h]h]h#]uh6Nh7hh8]r6hE)�r7}r8(hj4h%j2h.h h/hHh}r9(h]h"]h]h]h#]uh6Kbh8]r:hAX Accumulater;…�r<}r=(hj4h%j7ubaubaubhb)�r>}r?(hXAccumulateWeightedr@h%jh.h h/hfh}rA(h]h"]h]h]h#]uh6Nh7hh8]rBhE)�rC}rD(hj@h%j>h.h h/hHh}rE(h]h"]h]h]h#]uh6Kch8]rFhAXAccumulateWeightedrG…�rH}rI(hj@h%jCubaubaubhb)�rJ}rK(hXAddrLh%jh.h h/hfh}rM(h]h"]h]h]h#]uh6Nh7hh8]rNhE)�rO}rP(hjLh%jJh.h h/hHh}rQ(h]h"]h]h]h#]uh6Kdh8]rRhAXAddrS…�rT}rU(hjLh%jOubaubaubhb)�rV}rW(hX BitwiseAndrXh%jh.h h/hfh}rY(h]h"]h]h]h#]uh6Nh7hh8]rZhE)�r[}r\(hjXh%jVh.h h/hHh}r](h]h"]h]h]h#]uh6Keh8]r^hAX BitwiseAndr_…�r`}ra(hjXh%j[ubaubaubhb)�rb}rc(hX BitwiseNotrdh%jh.h h/hfh}re(h]h"]h]h]h#]uh6Nh7hh8]rfhE)�rg}rh(hjdh%jbh.h h/hHh}ri(h]h"]h]h]h#]uh6Kfh8]rjhAX BitwiseNotrk…�rl}rm(hjdh%jgubaubaubhb)�rn}ro(hX BitwiseOrrph%jh.h h/hfh}rq(h]h"]h]h]h#]uh6Nh7hh8]rrhE)�rs}rt(hjph%jnh.h h/hHh}ru(h]h"]h]h]h#]uh6Kgh8]rvhAX BitwiseOrrw…�rx}ry(hjph%jsubaubaubhb)�rz}r{(hX BitwiseXorr|h%jh.h h/hfh}r}(h]h"]h]h]h#]uh6Nh7hh8]r~hE)�r}r€(hj|h%jzh.h h/hHh}r�(h]h"]h]h]h#]uh6Khh8]r‚hAX BitwiseXorrƒ…�r„}r…(hj|h%jubaubaubhb)�r†}r‡(hXBox3x3rˆh%jh.h h/hfh}r‰(h]h"]h]h]h#]uh6Nh7hh8]rŠhE)�r‹}rŒ(hjˆh%j†h.h h/hHh}r�(h]h"]h]h]h#]uh6Kih8]rŽhAXBox3x3r�…�r�}r‘(hjˆh%j‹ubaubaubhb)�r’}r“(hXCannyEdr”h%jh.h h/hfh}r•(h]h"]h]h]h#]uh6Nh7hh8]r–hE)�r—}r˜(hj”h%j’h.h h/hHh}r™(h]h"]h]h]h#]uh6Kjh8]ršhAXCannyEdr›…�rœ}r�(hj”h%j—ubaubaubhb)�rž}rŸ(hXChannelCombiner h%jh.h h/hfh}r¡(h]h"]h]h]h#]uh6Nh7hh8]r¢hE)�r£}r¤(hj h%jžh.h h/hHh}r¥(h]h"]h]h]h#]uh6Kkh8]r¦hAXChannelCombiner§…�r¨}r©(hj h%j£ubaubaubhb)�rª}r«(hXChannelExtractr¬h%jh.h h/hfh}r­(h]h"]h]h]h#]uh6Nh7hh8]r®hE)�r¯}r°(hj¬h%jªh.h h/hHh}r±(h]h"]h]h]h#]uh6Klh8]r²hAXChannelExtractr³…�r´}rµ(hj¬h%j¯ubaubaubhb)�r¶}r·(hX ColorConvertr¸h%jh.h h/hfh}r¹(h]h"]h]h]h#]uh6Nh7hh8]rºhE)�r»}r¼(hj¸h%j¶h.h h/hHh}r½(h]h"]h]h]h#]uh6Kmh8]r¾hAX ColorConvertr¿…�rÀ}rÁ(hj¸h%j»ubaubaubhb)�rÂ}rÃ(hX ConvertDepthrÄh%jh.h h/hfh}rÅ(h]h"]h]h]h#]uh6Nh7hh8]rÆhE)�rÇ}rÈ(hjÄh%jÂh.h h/hHh}rÉ(h]h"]h]h]h#]uh6Knh8]rÊhAX ConvertDepthrË…�rÌ}rÍ(hjÄh%jÇubaubaubhb)�rÎ}rÏ(hXConvolverÐh%jh.h h/hfh}rÑ(h]h"]h]h]h#]uh6Nh7hh8]rÒhE)�rÓ}rÔ(hjÐh%jÎh.h h/hHh}rÕ(h]h"]h]h]h#]uh6Koh8]rÖhAXConvolver×…�rØ}rÙ(hjÐh%jÓubaubaubhb)�rÚ}rÛ(hX Dilate3x3rÜh%jh.h h/hfh}rÝ(h]h"]h]h]h#]uh6Nh7hh8]rÞhE)�rß}rà(hjÜh%jÚh.h h/hHh}rá(h]h"]h]h]h#]uh6Kph8]râhAX Dilate3x3rã…�rä}rå(hjÜh%jßubaubaubhb)�ræ}rç(hXEqHistrèh%jh.h h/hfh}ré(h]h"]h]h]h#]uh6Nh7hh8]rêhE)�rë}rì(hjèh%jæh.h h/hHh}rí(h]h"]h]h]h#]uh6Kqh8]rîhAXEqHistrï…�rð}rñ(hjèh%jëubaubaubhb)�rò}ró(hXErode3x3rôh%jh.h h/hfh}rõ(h]h"]h]h]h#]uh6Nh7hh8]röhE)�r÷}rø(hjôh%jòh.h h/hHh}rù(h]h"]h]h]h#]uh6Krh8]rúhAXErode3x3rû…�rü}rý(hjôh%j÷ubaubaubhb)�rþ}rÿ(hX Gaussian3x3rh%jh.h h/hfh}r(h]h"]h]h]h#]uh6Nh7hh8]rhE)�r}r(hjh%jþh.h h/hHh}r(h]h"]h]h]h#]uh6Ksh8]rhAX Gaussian3x3r…�r}r (hjh%jubaubaubhb)�r }r (hXHalfscaleGaussianr h%jh.h h/hfh}r (h]h"]h]h]h#]uh6Nh7hh8]rhE)�r}r(hj h%j h.h h/hHh}r(h]h"]h]h]h#]uh6Kth8]rhAXHalfscaleGaussianr…�r}r(hj h%jubaubaubhb)�r}r(hX HarrisCornersrh%jh.h h/hfh}r(h]h"]h]h]h#]uh6Nh7hh8]rhE)�r}r(hjh%jh.h h/hHh}r(h]h"]h]h]h#]uh6Kuh8]rhAX HarrisCornersr…�r }r!(hjh%jubaubaubhb)�r"}r#(hX Histogramr$h%jh.h h/hfh}r%(h]h"]h]h]h#]uh6Nh7hh8]r&hE)�r'}r((hj$h%j"h.h h/hHh}r)(h]h"]h]h]h#]uh6Kvh8]r*hAX Histogramr+…�r,}r-(hj$h%j'ubaubaubhb)�r.}r/(hX IntegralImager0h%jh.h h/hfh}r1(h]h"]h]h]h#]uh6Nh7hh8]r2hE)�r3}r4(hj0h%j.h.h h/hHh}r5(h]h"]h]h]h#]uh6Kwh8]r6hAX IntegralImager7…�r8}r9(hj0h%j3ubaubaubhb)�r:}r;(hXLutr<h%jh.h h/hfh}r=(h]h"]h]h]h#]uh6Nh7hh8]r>hE)�r?}r@(hj<h%j:h.h h/hHh}rA(h]h"]h]h]h#]uh6Kxh8]rBhAXLutrC…�rD}rE(hj<h%j?ubaubaubhb)�rF}rG(hX MagnituderHh%jh.h h/hfh}rI(h]h"]h]h]h#]uh6Nh7hh8]rJhE)�rK}rL(hjHh%jFh.h h/hHh}rM(h]h"]h]h]h#]uh6Kyh8]rNhAX MagnituderO…�rP}rQ(hjHh%jKubaubaubhb)�rR}rS(hX MeanStdDevrTh%jh.h h/hfh}rU(h]h"]h]h]h#]uh6Nh7hh8]rVhE)�rW}rX(hjTh%jRh.h h/hHh}rY(h]h"]h]h]h#]uh6Kzh8]rZhAX MeanStdDevr[…�r\}r](hjTh%jWubaubaubhb)�r^}r_(hX Median3x3r`h%jh.h h/hfh}ra(h]h"]h]h]h#]uh6Nh7hh8]rbhE)�rc}rd(hj`h%j^h.h h/hHh}re(h]h"]h]h]h#]uh6K{h8]rfhAX Median3x3rg…�rh}ri(hj`h%jcubaubaubhb)�rj}rk(hX MinMaxLocrlh%jh.h h/hfh}rm(h]h"]h]h]h#]uh6Nh7hh8]rnhE)�ro}rp(hjlh%jjh.h h/hHh}rq(h]h"]h]h]h#]uh6K|h8]rrhAX MinMaxLocrs…�rt}ru(hjlh%joubaubaubhb)�rv}rw(hXMultiplyrxh%jh.h h/hfh}ry(h]h"]h]h]h#]uh6Nh7hh8]rzhE)�r{}r|(hjxh%jvh.h h/hHh}r}(h]h"]h]h]h#]uh6K}h8]r~hAXMultiplyr…�r€}r�(hjxh%j{ubaubaubhb)�r‚}rƒ(hXNonLinearFilterr„h%jh.h h/hfh}r…(h]h"]h]h]h#]uh6Nh7hh8]r†hE)�r‡}rˆ(hj„h%j‚h.h h/hHh}r‰(h]h"]h]h]h#]uh6K~h8]rŠhAXNonLinearFilterr‹…�rŒ}r�(hj„h%j‡ubaubaubhb)�rŽ}r�(hXPhaser�h%jh.h h/hfh}r‘(h]h"]h]h]h#]uh6Nh7hh8]r’hE)�r“}r”(hj�h%jŽh.h h/hHh}r•(h]h"]h]h]h#]uh6Kh8]r–hAXPhaser—…�r˜}r™(hj�h%j“ubaubaubhb)�rš}r›(hXSobel3x3rœh%jh.h h/hfh}r�(h]h"]h]h]h#]uh6Nh7hh8]ržhE)�rŸ}r (hjœh%jšh.h h/hHh}r¡(h]h"]h]h]h#]uh6K€h8]r¢hAXSobel3x3r£…�r¤}r¥(hjœh%jŸubaubaubhb)�r¦}r§(hXSubtractr¨h%jh.h h/hfh}r©(h]h"]h]h]h#]uh6Nh7hh8]rªhE)�r«}r¬(hj¨h%j¦h.h h/hHh}r­(h]h"]h]h]h#]uh6K�h8]r®hAXSubtractr¯…�r°}r±(hj¨h%j«ubaubaubhb)�r²}r³(hX Threshold h%jh.h h/hfh}r´(h]h"]h]h]h#]uh6Nh7hh8]rµhE)�r¶}r·(hX Thresholdr¸h%j²h.h h/hHh}r¹(h]h"]h]h]h#]uh6K‚h8]rºhAX Thresholdr»…�r¼}r½(hj¸h%j¶ubaubaubeubhä)�r¾}r¿(hUh%h+h.h h/hçh}rÀ(h]h"]h]h]h#]uh6K„h7hh8]rÁhê)�rÂ}rÃ(hUhíKh%j¾h.h h/h6h}rÄ(h]h"]h]h]h#]uh6Kh7hh8]ubaubh&)�rÅ}rÆ(hX*TIOVX in Processor Linux SDK on AM57xx EVMrÇh%h+h.h h/hÃh}rÈ(h]rÉU*tiovx-in-processor-linux-sdk-on-am57xx-evmrÊah]h]h"]h#]rËhauh6Nh7hh8]rÌhAX*TIOVX in Processor Linux SDK on AM57xx EVMrÍ…�rÎ}rÏ(hjÇh%jÅubaubhE)�rÐ}rÑ(hX9Following TIOVX components are present in EVM filesystem:rÒh%h+h.h h/hHh}rÓ(h]h"]h]h]h#]uh6K‰h7hh8]rÔhAX9Following TIOVX components are present in EVM filesystem:rÕ…�rÖ}r×(hjÒh%jÐubaubhú)�rØ}rÙ(hUh%h+h.h h/hýh}rÚ(h]h"]h]h]h#]uh6Nh7hh8]rÛj)�rÜ}rÝ(hUh}rÞ(h]h]h]h"]h#]UcolsKuh%jØh8]rß(j)�rà}rá(hUh}râ(h]h]h]h"]h#]UcolwidthKuh%jÜh8]h/j ubj)�rã}rä(hUh}rå(h]h]h]h"]h#]UcolwidthKuh%jÜh8]h/j ubj)�ræ}rç(hUh}rè(h]h]h]h"]h#]UcolwidthKuh%jÜh8]h/j ubj3)�ré}rê(hUh}rë(h]h"]h]h]h#]uh%jÜh8]rì(j)�rí}rî(hUh}rï(h]h"]h]h]h#]uh%jéh8]rð(j)�rñ}rò(hUh}ró(h]h"]h]h]h#]uh%jíh8]rôhE)�rõ}rö(hXTyper÷h%jñh.h h/hHh}rø(h]h"]h]h]h#]uh6KŒh8]rùhAXTyperú…�rû}rü(hj÷h%jõubaubah/j$ubj)�rý}rþ(hUh}rÿ(h]h"]h]h]h#]uh%jíh8]rhE)�r}r(hX File pathrh%jýh.h h/hHh}r(h]h"]h]h]h#]uh6KŒh8]rhAX File pathr…�r}r(hjh%jubaubah/j$ubj)�r }r (hUh}r (h]h"]h]h]h#]uh%jíh8]r hE)�r }r(hX Descriptionrh%j h.h h/hHh}r(h]h"]h]h]h#]uh6KŒh8]rhAX Descriptionr…�r}r(hjh%j ubaubah/j$ubeh/j1ubj)�r}r(hUh}r(h]h"]h]h]h#]uh%jéh8]r(j)�r}r(hUh}r(h]h"]h]h]h#]uh%jh8]rhE)�r}r(hX applicationrh%jh.h h/hHh}r (h]h"]h]h]h#]uh6KŽh8]r!hAX applicationr"…�r#}r$(hjh%jubaubah/j$ubj)�r%}r&(hUh}r'(h]h"]h]h]h#]uh%jh8]r(hE)�r)}r*(hX/usr/bin/tiovx-app\_hosth%j%h.h h/hHh}r+(h]h"]h]h]h#]uh6KŽh8]r,hAX/usr/bin/tiovx-app_hostr-…�r.}r/(hX/usr/bin/tiovx-app\_hosth%j)ubaubah/j$ubj)�r0}r1(hUh}r2(h]h"]h]h]h#]uh%jh8]r3hE)�r4}r5(hX…Statically linked Linux application running several thousands test cases, with all available kernels and using different test vectorsr6h%j0h.h h/hHh}r7(h]h"]h]h]h#]uh6KŽh8]r8hAX…Statically linked Linux application running several thousands test cases, with all available kernels and using different test vectorsr9…�r:}r;(hj6h%j4ubaubah/j$ubeh/j1ubj)�r<}r=(hUh}r>(h]h"]h]h]h#]uh%jéh8]r?(j)�r@}rA(hUh}rB(h]h"]h]h]h#]uh%j<h8]rChE)�rD}rE(hX DSP firmwarerFh%j@h.h h/hHh}rG(h]h"]h]h]h#]uh6K–h8]rHhAX DSP firmwarerI…�rJ}rK(hjFh%jDubaubah/j$ubj)�rL}rM(hUh}rN(h]h"]h]h]h#]uh%j<h8]rO(hE)�rP}rQ(hX(/lib/firmware/dra7-dsp1- fw.xe66.openvx,rRh%jLh.h h/hHh}rS(h]h"]h]h]h#]uh6K–h8]rThAX(/lib/firmware/dra7-dsp1- fw.xe66.openvx,rU…�rV}rW(hjRh%jPubaubhE)�rX}rY(hX'/lib/firmware/dra7-dsp 2-fw.xe66.openvxrZh%jLh.h h/hHh}r[(h]h"]h]h]h#]uh6K™h8]r\hAX'/lib/firmware/dra7-dsp 2-fw.xe66.openvxr]…�r^}r_(hjZh%jXubaubeh/j$ubj)�r`}ra(hUh}rb(h]h"]h]h]h#]uh%j<h8]rchE)�rd}re(hXDSP firmware including DSP side of TIOVX framwork implementation, IPC implementation, DSP kernels (part of VXLIB DSP library) - for DSP1. This firmware is loaded at boot time, or using procedure mentioned below (to switch from OCL firmware to TIOVX firmware)rfh%j`h.h h/hHh}rg(h]h"]h]h]h#]uh6K–h8]rhhAXDSP firmware including DSP side of TIOVX framwork implementation, IPC implementation, DSP kernels (part of VXLIB DSP library) - for DSP1. This firmware is loaded at boot time, or using procedure mentioned below (to switch from OCL firmware to TIOVX firmware)ri…�rj}rk(hjfh%jdubaubah/j$ubeh/j1ubeh/jàubeh/jáubaubhE)�rl}rm(hX TIOVX release 1.0.0.0 runs exclusively wrt OpenCL, as both firmwares use common resources DSP cores and CMEM memory. That is: application can be either TIOVX-based, or OpenCL -based. Future releases may remove this limitation and use static split in resources (between OpenCL and OpenVX). **TIOVX needs CMEM memory with two blocks**: block 0 is big DDR block for exchange of big buffers (>100MB) and block 1 (~1MB) which is used as shared memory visible from all cores to exchange shared data objects (typically in OCMC)h%h+h.h h/hHh}rn(h]h"]h]h]h#]uh6K¤h7hh8]ro(hAX#TIOVX release 1.0.0.0 runs exclusively wrt OpenCL, as both firmwares use common resources DSP cores and CMEM memory. That is: application can be either TIOVX-based, or OpenCL -based. Future releases may remove this limitation and use static split in resources (between OpenCL and OpenVX). rp…�rq}rr(hX#TIOVX release 1.0.0.0 runs exclusively wrt OpenCL, as both firmwares use common resources DSP cores and CMEM memory. That is: application can be either TIOVX-based, or OpenCL -based. Future releases may remove this limitation and use static split in resources (between OpenCL and OpenVX). h%jlubcdocutils.nodes strong rs)�rt}ru(hX+**TIOVX needs CMEM memory with two blocks**h}rv(h]h"]h]h]h#]uh%jlh8]rwhAX'TIOVX needs CMEM memory with two blocksrx…�ry}rz(hUh%jtubah/Ustrongr{ubhAX¼: block 0 is big DDR block for exchange of big buffers (>100MB) and block 1 (~1MB) which is used as shared memory visible from all cores to exchange shared data objects (typically in OCMC)r|…�r}}r~(hX¼: block 0 is big DDR block for exchange of big buffers (>100MB) and block 1 (~1MB) which is used as shared memory visible from all cores to exchange shared data objects (typically in OCMC)h%jlubeubh&)�r}r€(hX'Switch from OpenCL to OpenVX firmware:r�h%h+h.h h/hÃh}r‚(h]rƒU$switch-from-opencl-to-openvxfirmwarer„ah]h]h"]h#]r…h auh6Nh7hh8]r†hAX'Switch from OpenCL to OpenVX firmware:r‡…�rˆ}r‰(hj�h%jubaubhE)�rŠ}r‹(hX?Run the command below to switch from OpenCL to OpenVx firmware:rŒh%h+h.h h/hHh}r�(h]h"]h]h]h#]uh6K°h7hh8]rŽhAX?Run the command below to switch from OpenCL to OpenVx firmware:r�…�r�}r‘(hjŒh%jŠubaubcdocutils.nodes literal_block r’)�r“}r”(hXPreload-dsp-fw.sh tiovx # load openvx firmware and restart dspsh%h+h.h h/U literal_blockr•h}r–(U xml:spacer—Upreserver˜h]h]h]h"]h#]uh6K¶h7hh8]r™hAXPreload-dsp-fw.sh tiovx # load openvx firmware and restart dspsrš…�r›}rœ(hUh%j“ubaubh&)�r�}rž(hXRun TIOVX test applicationrŸh%h+h.h h/hÃh}r (h]r¡Urun-tiovx-test-applicationr¢ah]h]h"]h#]r£h auh6Nh7hh8]r¤hAXRun TIOVX test applicationr¥…�r¦}r§(hjŸh%j�ubaubhE)�r¨}r©(hXÊFirst, it is necessary to copy test vectors from https://git.ti.com/processor-sdk/tiovx/trees/master/conformance_tests/test_data to EVM filesystem (e.g. ~/tiovx/test\_data).Then run following commands:h%h+h.h h/hHh}rª(h]h"]h]h]h#]uh6K¹h7hh8]r«(hAX1First, it is necessary to copy test vectors from r¬…�r­}r®(hX1First, it is necessary to copy test vectors from h%j¨ubhN)�r¯}r°(hXOhttps://git.ti.com/processor-sdk/tiovx/trees/master/conformance_tests/test_datar±h}r²(Urefurij±h]h]h]h"]h#]uh%j¨h8]r³hAXOhttps://git.ti.com/processor-sdk/tiovx/trees/master/conformance_tests/test_datar´…�rµ}r¶(hUh%j¯ubah/hWubhAXI to EVM filesystem (e.g. ~/tiovx/test_data).Then run following commands:r·…�r¸}r¹(hXJ to EVM filesystem (e.g. ~/tiovx/test\_data).Then run following commands:h%j¨ubeubj’)�rº}r»(hXâexport VX_TEST_DATA_PATH=/home/root/tiovx/test_data # Set environment variable to point to location of test vectors on EVM tiovx-app_host 2>&1 | tee log.txt # Run test application, and log output to log.txth%h+h.h h/j•h}r¼(j—j˜h]h]h]h"]h#]uh6KÂh7hh8]r½hAXâexport VX_TEST_DATA_PATH=/home/root/tiovx/test_data # Set environment variable to point to location of test vectors on EVM tiovx-app_host 2>&1 | tee log.txt # Run test application, and log output to log.txtr¾…�r¿}rÀ(hUh%jºubaubhE)�rÁ}rÂ(hXKAt the end of test (taking roughly 24mins) you can expect report like this:rÃh%h+h.h h/hHh}rÄ(h]h"]h]h]h#]uh6KÃh7hh8]rÅhAXKAt the end of test (taking roughly 24mins) you can expect report like this:rÆ…�rÇ}rÈ(hjÃh%jÁubaubj’)�rÉ}rÊ(hX9 ... [ N7 ] Execution time for 307200 pixels (avg = 3.584000 ms, min = 3.584000 ms, max = 3.584000 ms) [ N8 ] Execution time for 307200 pixels (avg = 171.797000 ms, min = 171.797000 ms, max = 171.797000 ms) [ N9 ] Execution time for 307200 pixels (avg = 366.952000 ms, min = 366.952000 ms, max = 366.952000 ms) [ G4 ] Execution time for 307200 pixels (avg = 500.146000 ms, min = 500.146000 ms, max = 500.146000 ms) [ N1 ] Execution time for 256 pixels (avg = 0.278000 ms, min = 0.278000 ms, max = 0.278000 ms) [ N2 ] Execution time for 256 pixels (avg = 0.230000 ms, min = 0.230000 ms, max = 0.230000 ms) [ N3 ] Execution time for 256 pixels (avg = 0.281000 ms, min = 0.281000 ms, max = 0.281000 ms) [ N4 ] Execution time for 256 pixels (avg = 0.303000 ms, min = 0.303000 ms, max = 0.303000 ms) [ N5 ] Execution time for 256 pixels (avg = 0.285000 ms, min = 0.285000 ms, max = 0.285000 ms) [ G5 ] Execution time for 256 pixels (avg = 2.169000 ms, min = 2.169000 ms, max = 2.169000 ms) [ N1 ] Execution time for 256 pixels (avg = 0.243000 ms, min = 0.243000 ms, max = 0.243000 ms) [ N2 ] Execution time for 256 pixels (avg = 0.301000 ms, min = 0.301000 ms, max = 0.301000 ms) [ G6 ] Execution time for 256 pixels (avg = 0.871000 ms, min = 0.871000 ms, max = 0.871000 ms) [ N1 ] Execution time for 256 pixels (avg = 0.352000 ms, min = 0.352000 ms, max = 0.352000 ms) [ N2 ] Execution time for 256 pixels (avg = 0.246000 ms, min = 0.246000 ms, max = 0.246000 ms) [ N2 ] Execution time for 256 pixels (avg = 0.324000 ms, min = 0.324000 ms, max = 0.324000 ms) [ G7 ] Execution time for 256 pixels (avg = 1.502000 ms, min = 1.502000 ms, max = 1.502000 ms) [ N1 ] Execution time for 256 pixels (avg = 75.37000 ms, min = 75.37000 ms, max = 75.37000 ms) [ G8 ] Execution time for 256 pixels (avg = 60.474000 ms, min = 60.474000 ms, max = 60.474000 ms) [ DONE ] tivxMaxNodes.MaxNodes/0/few_strong_corners/MIN_DISTANCE=3.0/SENSITIVITY=0.10/GRADIENT_SIZE=3/BLOCK_SIZE=5/k=3/VX_INTERPOLATION_NEAREST_NEIGHBOR [ -------- ] 1 tests from test case tivxMaxNodes [ ======== ] [ ALL DONE ] 6217 test(s) from 110 test case(s) ran [ PASSED ] 6217 test(s) [ FAILED ] 0 test(s) [ DISABLED ] 7397 test(s) To be conformant 6217 required test(s) must pass. Disabled 7397 test(s) are optional. #REPORT: 20170927134830 ALL 13614 7397 6217 6217 6217 0 (version 1.1-20170301) <-- main:h%h+h.h h/j•h}rË(j—j˜h]h]h]h"]h#]uh6KÊh7hh8]rÌhAX9 ... [ N7 ] Execution time for 307200 pixels (avg = 3.584000 ms, min = 3.584000 ms, max = 3.584000 ms) [ N8 ] Execution time for 307200 pixels (avg = 171.797000 ms, min = 171.797000 ms, max = 171.797000 ms) [ N9 ] Execution time for 307200 pixels (avg = 366.952000 ms, min = 366.952000 ms, max = 366.952000 ms) [ G4 ] Execution time for 307200 pixels (avg = 500.146000 ms, min = 500.146000 ms, max = 500.146000 ms) [ N1 ] Execution time for 256 pixels (avg = 0.278000 ms, min = 0.278000 ms, max = 0.278000 ms) [ N2 ] Execution time for 256 pixels (avg = 0.230000 ms, min = 0.230000 ms, max = 0.230000 ms) [ N3 ] Execution time for 256 pixels (avg = 0.281000 ms, min = 0.281000 ms, max = 0.281000 ms) [ N4 ] Execution time for 256 pixels (avg = 0.303000 ms, min = 0.303000 ms, max = 0.303000 ms) [ N5 ] Execution time for 256 pixels (avg = 0.285000 ms, min = 0.285000 ms, max = 0.285000 ms) [ G5 ] Execution time for 256 pixels (avg = 2.169000 ms, min = 2.169000 ms, max = 2.169000 ms) [ N1 ] Execution time for 256 pixels (avg = 0.243000 ms, min = 0.243000 ms, max = 0.243000 ms) [ N2 ] Execution time for 256 pixels (avg = 0.301000 ms, min = 0.301000 ms, max = 0.301000 ms) [ G6 ] Execution time for 256 pixels (avg = 0.871000 ms, min = 0.871000 ms, max = 0.871000 ms) [ N1 ] Execution time for 256 pixels (avg = 0.352000 ms, min = 0.352000 ms, max = 0.352000 ms) [ N2 ] Execution time for 256 pixels (avg = 0.246000 ms, min = 0.246000 ms, max = 0.246000 ms) [ N2 ] Execution time for 256 pixels (avg = 0.324000 ms, min = 0.324000 ms, max = 0.324000 ms) [ G7 ] Execution time for 256 pixels (avg = 1.502000 ms, min = 1.502000 ms, max = 1.502000 ms) [ N1 ] Execution time for 256 pixels (avg = 75.37000 ms, min = 75.37000 ms, max = 75.37000 ms) [ G8 ] Execution time for 256 pixels (avg = 60.474000 ms, min = 60.474000 ms, max = 60.474000 ms) [ DONE ] tivxMaxNodes.MaxNodes/0/few_strong_corners/MIN_DISTANCE=3.0/SENSITIVITY=0.10/GRADIENT_SIZE=3/BLOCK_SIZE=5/k=3/VX_INTERPOLATION_NEAREST_NEIGHBOR [ -------- ] 1 tests from test case tivxMaxNodes [ ======== ] [ ALL DONE ] 6217 test(s) from 110 test case(s) ran [ PASSED ] 6217 test(s) [ FAILED ] 0 test(s) [ DISABLED ] 7397 test(s) To be conformant 6217 required test(s) must pass. Disabled 7397 test(s) are optional. #REPORT: 20170927134830 ALL 13614 7397 6217 6217 6217 0 (version 1.1-20170301) <-- main:rÍ…�rÎ}rÏ(hUh%jÉubaubhE)�rÐ}rÑ(hX•Please note that last ~3000 lines of test log include performance data (execution time and number of pixels processed) useful for further evaluation.rÒh%h+h.h h/hHh}rÓ(h]h"]h]h]h#]uh6Kêh7hh8]rÔhAX•Please note that last ~3000 lines of test log include performance data (execution time and number of pixels processed) useful for further evaluation.rÕ…�rÖ}r×(hjÒh%jÐubaubh&)�rØ}rÙ(hX-Switch from OpenVX, back to OpenCL firmware:rÚh%h+h.h h/hÃh}rÛ(h]rÜU)switch-from-openvx-back-to-openclfirmwarerÝah]h]h"]h#]rÞh auh6Nh7hh8]rßhAX-Switch from OpenVX, back to OpenCL firmware:rà…�rá}râ(hjÚh%jØubaubhE)�rã}rä(hXgAfter finishing running the TIOVX test application, switch the firmware back to the default for OpenCL:råh%h+h.h h/hHh}ræ(h]h"]h]h]h#]uh6Kñh7hh8]rçhAXgAfter finishing running the TIOVX test application, switch the firmware back to the default for OpenCL:rè…�ré}rê(hjåh%jãubaubj’)�rë}rì(hXFreload-dsp-fw.sh opencl # load opencl firmware and restart dspsh%h+h.h h/j•h}rí(j—j˜h]h]h]h"]h#]uh6K÷h7hh8]rîhAXFreload-dsp-fw.sh opencl # load opencl firmware and restart dspsrï…�rð}rñ(hUh%jëubaubh&)�rò}ró(hX#Recompile TIOVX (using Yocto build)rôh%h+h.h h/hÃh}rõ(h]röU!recompile-tiovx-using-yocto-buildr÷ah]h]h"]h#]røh auh6Nh7hh8]rùhAX#Recompile TIOVX (using Yocto build)rú…�rû}rü(hjôh%jòubaubhä)�rý}rþ(hUh%h+h.h h/hçh}rÿ(h]h"]h]h]h#]uh6Kúh7hh8]r(hê)�r}r(hXbTIOVX framework implementation is available at https://git.ti.com/processor-sdk/tiovx/trees/masterhíKh%jýh.h h/h6h}r(h]h"]h]h]h#]uh6Kûh7hh8]r(hAX/TIOVX framework implementation is available at r…�r}r(hX/TIOVX framework implementation is available at h%jubhN)�r}r (hX3https://git.ti.com/processor-sdk/tiovx/trees/masterr h}r (Urefurij h]h]h]h"]h#]uh%jh8]r hAX3https://git.ti.com/processor-sdk/tiovx/trees/masterr …�r}r(hUh%jubah/hWubeubhê)�r}r(hXÌTIOVX sample application including IPC implementation based on standard MessageQ, as well as application running conformance tests, can be found at https://git.ti.com/processor-sdk/tiovx-app/trees/masterhíKh%jýh.h h/h6h}r(h]h"]h]h]h#]uh6Kÿh7hh8]r(hAX•TIOVX sample application including IPC implementation based on standard MessageQ, as well as application running conformance tests, can be found at r…�r}r(hX•TIOVX sample application including IPC implementation based on standard MessageQ, as well as application running conformance tests, can be found at h%jubhN)�r}r(hX7https://git.ti.com/processor-sdk/tiovx-app/trees/masterrh}r(Urefurijh]h]h]h"]h#]uh%jh8]rhAX7https://git.ti.com/processor-sdk/tiovx-app/trees/masterr…�r}r(hUh%jubah/hWubeubhê)�r}r (hXaAdditional documentation can be found at https://git.ti.com/processor-sdk/tiovx/trees/master/docshíKh%jýh.h h/h6h}r!(h]h"]h]h]h#]uh6Mh7hh8]r"(hAX)Additional documentation can be found at r#…�r$}r%(hX)Additional documentation can be found at h%jubhN)�r&}r'(hX8https://git.ti.com/processor-sdk/tiovx/trees/master/docsr(h}r)(Urefurij(h]h]h]h"]h#]uh%jh8]r*hAX8https://git.ti.com/processor-sdk/tiovx/trees/master/docsr+…�r,}r-(hUh%j&ubah/hWubeubhê)�r.}r/(hXÊTIOVX framework and TIOVX-APP can be recompiled like any other component, as described in http://processors.wiki.ti.com/index.php/Processor_SDK_Building_The_SDK. Optionally you can do full rebuild with:híKh%jýh.h h/h6h}r0(h]h"]h]h]h#]uh6Mh7hh8]r1(hAXZTIOVX framework and TIOVX-APP can be recompiled like any other component, as described in r2…�r3}r4(hXZTIOVX framework and TIOVX-APP can be recompiled like any other component, as described in h%j.ubhN)�r5}r6(hXFhttp://processors.wiki.ti.com/index.php/Processor_SDK_Building_The_SDKr7h}r8(Urefurij7h]h]h]h"]h#]uh%j.h8]r9hAXFhttp://processors.wiki.ti.com/index.php/Processor_SDK_Building_The_SDKr:…�r;}r<(hUh%j5ubah/hWubhAX*. Optionally you can do full rebuild with:r=…�r>}r?(hX*. Optionally you can do full rebuild with:h%j.ubeubeubj’)�r@}rA(hX2MACHINE=am57xx-evm bitbake arago-core-tisdk-bundleh%h+h.h h/j•h}rB(j—j˜h]h]h]h"]h#]uh6M h7hh8]rChAX2MACHINE=am57xx-evm bitbake arago-core-tisdk-bundlerD…�rE}rF(hUh%j@ubaubhä)�rG}rH(hUh%h+h.h h/hçh}rI(h]h"]h]h]h#]uh6M h7hh8]rJ(hê)�rK}rL(hX�For modifying individual components in PLSDK, please refer to: to http://processors.wiki.ti.com/index.php/Processor_SDK_Building_The_SDK#RecipeshíKh%jGh.h h/h6h}rM(h]h"]h]h]h#]uh6M h7hh8]rN(hAXBFor modifying individual components in PLSDK, please refer to: to rO…�rP}rQ(hXBFor modifying individual components in PLSDK, please refer to: to h%jKubhN)�rR}rS(hXNhttp://processors.wiki.ti.com/index.php/Processor_SDK_Building_The_SDK#RecipesrTh}rU(UrefurijTh]h]h]h"]h#]uh%jKh8]rVhAXNhttp://processors.wiki.ti.com/index.php/Processor_SDK_Building_The_SDK#RecipesrW…�rX}rY(hUh%jRubah/hWubeubhê)�rZ}r[(hXæIf there is a need to modify source code of TIOVX host library (framework) files (A15 side), please do that in: tisdk/build/arago-tmp-external-arm-toolchain/work/am57xx\_evm-linux-gnueabi/tiovx-lib-host/01.00.00.00-r1/git/ folder.híKh%jGh.h h/h6h}r\(h]h"]h]h]h#]uh6Mh7hh8]r]hAXåIf there is a need to modify source code of TIOVX host library (framework) files (A15 side), please do that in: tisdk/build/arago-tmp-external-arm-toolchain/work/am57xx_evm-linux-gnueabi/tiovx-lib-host/01.00.00.00-r1/git/ folder.r^…�r_}r`(hXæIf there is a need to modify source code of TIOVX host library (framework) files (A15 side), please do that in: tisdk/build/arago-tmp-external-arm-toolchain/work/am57xx\_evm-linux-gnueabi/tiovx-lib-host/01.00.00.00-r1/git/ folder.h%jZubaubhê)�ra}rb(hX¬For example, to modify list of tests executed: update file ./tiovx/conformance\_tests/test\_tiovx/test\_main.h, or ./tiovx/conformance\_tests/test\_conformance/test\_main.hhíKh%jGh.h h/h6h}rc(h]h"]h]h]h#]uh6Mh7hh8]rdhAX¦For example, to modify list of tests executed: update file ./tiovx/conformance_tests/test_tiovx/test_main.h, or ./tiovx/conformance_tests/test_conformance/test_main.hre…�rf}rg(hX¬For example, to modify list of tests executed: update file ./tiovx/conformance\_tests/test\_tiovx/test\_main.h, or ./tiovx/conformance\_tests/test\_conformance/test\_main.hh%jaubaubhê)�rh}ri(hXjAfter the source modification, force compile the Library (Linux host side), and rebuild the package using:rjhíKh%jGh.h h/h6h}rk(h]h"]h]h]h#]uh6Mh7hh8]rlhAXjAfter the source modification, force compile the Library (Linux host side), and rebuild the package using:rm…�rn}ro(hjjh%jhubaubeubj’)�rp}rq(hX8MACHINE=am57xx-evm bitbake tiovx-lib-host -f -c compileh%h+h.h h/j•h}rr(j—j˜h]h]h]h"]h#]uh6Mh7hh8]rshAX8MACHINE=am57xx-evm bitbake tiovx-lib-host -f -c compilert…�ru}rv(hUh%jpubaubj’)�rw}rx(hX)MACHINE=am57xx-evm bitbake tiovx-lib-hosth%h+h.h h/j•h}ry(j—j˜h]h]h]h"]h#]uh6Mh7hh8]rzhAX)MACHINE=am57xx-evm bitbake tiovx-lib-hostr{…�r|}r}(hUh%jwubaubhä)�r~}r(hUh%h+h.h h/hçh}r€(h]h"]h]h]h#]uh6Mh7hh8]r�hê)�r‚}rƒ(hXÌSimilarly application code can be modified in: ./tisdk/build/arago-tmp-external-arm-toolchain/work/am57xx\_evm-linux-gnueabi/tiovx-app-host/01.00.00.00-r1/git, and then force-recompiled and rebuilt using:híKh%j~h.h h/h6h}r„(h]h"]h]h]h#]uh6M!h7hh8]r…hAXËSimilarly application code can be modified in: ./tisdk/build/arago-tmp-external-arm-toolchain/work/am57xx_evm-linux-gnueabi/tiovx-app-host/01.00.00.00-r1/git, and then force-recompiled and rebuilt using:r†…�r‡}rˆ(hXÌSimilarly application code can be modified in: ./tisdk/build/arago-tmp-external-arm-toolchain/work/am57xx\_evm-linux-gnueabi/tiovx-app-host/01.00.00.00-r1/git, and then force-recompiled and rebuilt using:h%j‚ubaubaubj’)�r‰}rŠ(hX7MACHINE=am57xx-evm bitbake tiovx-app-host -f -c compileh%h+h.h h/j•h}r‹(j—j˜h]h]h]h"]h#]uh6M'h7hh8]rŒhAX7MACHINE=am57xx-evm bitbake tiovx-app-host -f -c compiler�…�rŽ}r�(hUh%j‰ubaubj’)�r�}r‘(hX)MACHINE=am57xx-evm bitbake tiovx-app-hosth%h+h.XJinternal padding after source/linux/Foundational_Components/OpenVX.rst.incr’h/j•h}r“(j—j˜h]h]h]h"]h#]uh6M+h7hh8]r”hAX)MACHINE=am57xx-evm bitbake tiovx-app-hostr•…�r–}r—(hUh%j�ubaubeubh.h h/hÃh}r˜(h]r™hah]h]h"]h#]ršh3auh6Nh7hh8]r›hAXOpenVXrœ…�r�}rž(hh)h%h'ubaubh8]rŸhE)�r }r¡(hX)Duplicate implicit target name: "openvx".h}r¢(h]h"]h]h]h#]uh%hh8]r£hAX)Duplicate implicit target name: "openvx".r¤…�r¥}r¦(hUh%j ubah/hHubah/Usystem_messager§ubaUcurrent_sourcer¨NU decorationr©NUautofootnote_startrªKUnameidsr«}r¬(hhhjÊhhÆh j„h j÷h jÝh hôh j¢hjuh8]r­(cdocutils.nodes comment r®)�r¯}r°(hX;http://processors.wiki.ti.com/index.php/Processor_SDK_TIOVXh%hh.h h/Ucommentr±h}r²(j—j˜h]h]h]h"]h#]uh6Kh7hh8]r³hAX;http://processors.wiki.ti.com/index.php/Processor_SDK_TIOVXr´…�rµ}r¶(hUh%j¯ubaubh+ehUU transformerr·NU footnote_refsr¸}r¹Urefnamesrº}r»Usymbol_footnotesr¼]r½Uautofootnote_refsr¾]r¿Usymbol_footnote_refsrÀ]rÁU citationsrÂ]rÃh7hU current_linerÄNUtransform_messagesrÅ]rÆUreporterrÇNUid_startrÈKU autofootnotesrÉ]rÊU citation_refsrË}rÌUindirect_targetsrÍ]rÎUsettingsrÏ(cdocutils.frontend Values rÐorÑ}rÒ(Ufootnote_backlinksrÓKUrecord_dependenciesrÔNU rfc_base_urlrÕUhttps://tools.ietf.org/html/rÖU tracebackr׈Upep_referencesrØNUstrip_commentsrÙNU toc_backlinksrÚj$U language_coderÛUenrÜU datestamprÝNU report_levelrÞKU _destinationrßNU halt_levelràKU strip_classesráNh>NUerror_encoding_error_handlerrâUbackslashreplacerãUdebugräNUembed_stylesheetrå‰Uoutput_encoding_error_handlerræUstrictrçU sectnum_xformrèKUdump_transformsréNU docinfo_xformrêKUwarning_streamrëNUpep_file_url_templaterìUpep-%04dríUexit_status_levelrîKUconfigrïNUstrict_visitorrðNUcloak_email_addressesrñˆUtrim_footnote_reference_spacerò‰UenvróNUdump_pseudo_xmlrôNUexpose_internalsrõNUsectsubtitle_xformrö‰U source_linkr÷NUrfc_referencesrøNUoutput_encodingrùUutf-8rúU source_urlrûNUinput_encodingrüU utf-8-sigrýU_disable_configrþNU id_prefixrÿUU tab_widthrKUerror_encodingrUUTF-8rU_sourcerX^/home/gtbldadm/nightlybuilds/processor-sdk-doc/source/linux/Foundational_Components_OpenVX.rstrUgettext_compactrˆU generatorrNUdump_internalsrNU smart_quotesr‰U pep_base_urlr U https://www.python.org/dev/peps/r Usyntax_highlightr Ulongr Uinput_encoding_error_handlerr jçUauto_id_prefixrUidrUdoctitle_xformr‰Ustrip_elements_with_classesrNU _config_filesr]Ufile_insertion_enabledrˆU raw_enabledrKU dump_settingsrNubUsymbol_footnote_startrKUidsr}r(h5h+jÊjÅhÆhÀj„jj÷jòjÝjØhôhïhh'j¢j�jjûuUsubstitution_namesr}rh/h7h}r(h]h]h]Usourcejh"]h#]uU footnotesr]rUrefidsr}rub.