The Openvx™ Specification
Total Page:16
File Type:pdf, Size:1020Kb
The OpenVX™ Specification Editor: Radhakrishna Giduthuri, Intel, The Khronos® OpenVX Working Group Version 1.3, Thu, 10 Sep 2020 07:04:36 +0000: Git branch information not available Table of Contents 1. Introduction . 2 1.1. Abstract . 2 1.2. Purpose . 2 1.3. Scope of Specification . 2 1.4. Normative References . 2 1.5. Version/Change History . 3 1.6. Deprecation . 3 1.7. Normative Requirements . 3 1.8. Typographical Conventions . 3 1.8.1. Naming Conventions . 4 1.8.2. Vendor Naming Conventions . 4 1.9. Glossary and Acronyms . 5 1.10. Acknowledgements . 5 2. Design Overview . 8 2.1. Software Landscape . 8 2.2. Design Objectives . 8 2.2.1. Hardware Optimizations . 8 2.2.2. Hardware Limitations . 9 2.3. Assumptions . 9 2.3.1. Portability. 9 2.3.2. Opaqueness . 9 2.4. Object-Oriented Behaviors . 9 2.5. OpenVX Framework Objects . 9 2.6. OpenVX Data Objects . 10 2.7. Error Objects . 11 2.8. Graphs Concepts . 11 2.8.1. Linking Nodes . 11 2.8.2. Virtual Data Objects . 11 2.8.3. Node Parameters . 14 2.8.4. Graph Parameters . 15 2.8.5. Execution Model . 15 Asynchronous Mode . 15 2.8.6. Graph Formalisms . 15 Contained & Overlapping Data Objects . 16 2.8.7. Node Execution Independence . 18 2.8.8. Verification. 20 2.9. Callbacks . 21 2.10. User Kernels. 21 2.10.1. Parameter Validation. 23 The Meta Format Object. 23 2.10.2. User Kernels Naming Conventions . 23 2.11. Immediate Mode Functions . 24 2.12. Targets . ..