SlideShare una empresa de Scribd logo
1 de 32
Descargar para leer sin conexión
1
Qualcomm® Hexagon™ SDK
Optimize Your Multimedia Solutions
Jack May, Senior Staff Engineer
Qualcomm Technologies, Inc.
Qualcomm Hexagon is a product of Qualcomm Technologies, Inc.
3
What is the
Hexagon SDK?
4
Designed to easily utilize the capabilities of the Hexagon DSP
Uses the ability to dynamically load and execute code on the Hexagon DSP
Helps reduce development effort and promotes a rapid development cycle
Applications include
− General compute
− Audio
− Voice
− Imaging
− Computer vision
Overview
What is the Hexagon SDK?
5
Provide customization of the Hexagon DSP without rebuilding the static image
− Remote procedure call mechanism between the HLOS and the Hexagon DSP
− Dynamically loadable objects loaded at runtime.
− Dynamic module interfaces to the Audio/Voice/.. Frameworks
Provide multiple debugging options
− USB based debugger
− Diagnostic logging
Provide unit and system level test frameworks and capabilities
Provide both in-simulation and on-target environments
Goals
What is the Hexagon SDK?
6
Windows installer
Installs the SDK components (docs, examples, tools, …)
Results in a complete, self-contained development environment
Minimizes environment changes that may impact other tools or installations
Multiple SDK versions may be installed side by side
Downloads 3rd party dependencies
No global PATH or environment variable modifications
Dependencies are self-contained and local to the SDK
− Except
− Hexagon Tools
− Python
Linux support on the roadmap
Installation
What is the Hexagon SDK?
7
What is in the
Hexagon SDK?
8
Fast Remote Procedure Calls (FastRPC)
Dynamic loading
Remote debugger
Eclipse plugin
Hardware development platforms
Optimized Hexagon libraries
Real-time Operation System (RTOS)
Comprehensive tool chain
Diagnostic logging
Notable features
What is in the Hexagon SDK?
9
Remote procedure calls between the applications processor and the Hexagon DSP
Fast
− Synchronous
− Zero copy
− Cache coherent
Functions called on the Hexagon DSP may reside in dynamically loaded code
Maintains cache coherency for input and output buffers
Calling HLOS threads handled by corresponding threads on the Hexagon DSP
Threads are automatically cleaned up when HLOS process exits
Notable features: FastRPC
What is in the Hexagon SDK?
10
DSPApplications processor
Notable features: FastRPC
What is in the Hexagon SDK?
In-process
Transport
Application calculator library
calculator_skel
calculator_sum()
#include "calculator.h"
int calculator_sum(
const int* vec,
int vecLen,
int64* res)
{
int ii = 0;
*res = 0;
for(ii = 0; ii < vecLen; ++ii) {
*res = *res + vec[ii];
}
return 0;
}
calculator_sum()
calculator_stub
calculator_sum()
Sample code subject to SDK license agreement. Available at developer.qualcomm.com
11
Notable features: FastRPC: Performance
What is in the Hexagon SDK?
Size of buffer 8074 in (us) 8074 out (us)
0 62
32 kB 80 90
64 kB 84 94
128 kB 85 106
1 MB 177 211
4 MB 261 212
8 MB 377 303
16 MB 612 538
− Measured with Application and DSP processor clocks at max
− 8074 DragonBoard™ from Intrinsyc
− No change in data and DSP returns immediately
− These are minimum times, and does not include RAM to cache sync times (as if prefetched)
Source: Qualcomm Technologies, Inc. internal testing
12
Allows for the addition of code/data into the Hexagon DSP at runtime
Faster development cycles, only have to build your shared object
Code/data is built into shared object files (.so)
− Executable and Linkable Format (ELF)
− Stored on the HLOS’s file system and read by the Hexagon DSP when loaded
Functions and variables become accessible to the static DSP image once the shared
object is loaded
Native support for shared objects in the audio and voice frameworks
Notable features: Dynamic Loading
What is in the Hexagon SDK?
13
lib.so
Fxn()
Notable features: Dynamic Loading
What is in the Hexagon SDK?
HLOS File System
lib.so
Fxn()
aDSP Static Image
h = dlopen(“lib.so”);
pFxn = dlsym(h, “Fxn”);
pFxn();
dlclose(h);
lib.so
Fxn()
14
Easier to create, build, run, test, and debug Hexagon modules
Project templates
Unit and integration testing
Simulator and on-target debugging
Syntax aware and highlighting for Hexagon assembly, C/C++, and IDL
Custom views
− Connected devices
− Profiler
− Resource analyzer
− Audio module database
− Logging
Notable features: Eclipse IDE plugin
What is in the Hexagon SDK?
15
USB based software, no hardware JTAG required
Industry standard debug tools (GDB with LLDB on roadmap)
Integrated with the Hexagon SDK Eclipse plugin
Single or all thread stop debugging
Simulator and on-target debugging
Notable features: Remote debugger
What is in the Hexagon SDK?
16
Quick development cycle from picking up the Hexagon SDK to running your code on-target
Affordable hardware based development platforms provided by Intrinsyc
Multiple form factors supported
− Exposed boards (DragonBoards)
− Tablets (MDPs)
Hardware support provided by Intrinsyc
− http://www.intrinsyc.com/products/qualcomm/dragonboard-development-kits.aspx
Notable features: Hardware development platforms
What is in the Hexagon SDK?
17
C and Assembly optimized libraries for common operations
− FIR, IIR
− FFT, IFFT, FHT
− Up sampler
− Computer vision (FastCV)
− feature/object detection
− motion & object tracking
− color conversion
− 3D reconstruction
− image processing
− Lots more …
Notable features: Optimized Hexagon libraries
What is in the Hexagon SDK?
18
QuRT™ software: real-time operating system for the Hexagon processor
Low overhead both in memory and processing requirements
Supports
− Priority-based preemptive multithreading
− Thread synchronization and communication (mutex, signal, semaphore, barriers, pipes, …)
− Timers
− Interrupts
− Exceptions
− Memory management
Notable features: RTOS
What is in the Hexagon SDK?
QuRT is a product of Qualcomm Technologies, Inc.
19
ISO C/C++ compiler
Assembler
Standard (libc) and processor specific libraries
Intrinsics
Linker and archiver
Debugger (gdb)
Profiler (gprof)
Misc utilities
− ELF viewer
− nm
− strings
− size
Notable features: Comprehensive tool chain
What is in the Hexagon SDK?
20
Runtime diagnostic logging
Viewable in logcat or on host (PC)
Integrated with the Hexagon SDK Eclipse plugin
Supported in simulation and on-target
Notable features: Diagnostic logging
What is in the Hexagon SDK?
21
What can you do with
the Hexagon SDK?
22
Offload compute tasks from the application processor onto the Hexagon DSP
− Lower power
− Frees up resources on the application processor
− Appears to caller as if calling a local library
Easier to do
− Define interface in IDL
− Use existing C code or optimize with Hexagon DSP assembly
− Build using the Hexagon Tools suite
− Call via the stub library on the application processor.
Moving data between processors is transparent to callers and implementers
− Cache coherent
− Zero copy
Calculator example in the Hexagon SDK
General compute
What can you do with the Hexagon SDK?
23
Add custom algorithms, encoders, and decoders to the audio framework
Dynamically load and unload audio use cases on an as-needed basis
− Saves memory
Communicate with your audio module at runtime
− Tuning
− Feature enabling/disabling
− User controlled settings
Clearly defined interface to implement (APPI or CAPI)
− Unit test frameworks to validate that your module is ready to run on the Hexagon DSP
Lots of APPI and CAPI examples in the Hexagon SDK
Audio
What can you do with the Hexagon SDK?
24
Add custom processing algorithms to the voice framework
Communicate with your voice module at runtime
− tuning
− Feature enabling/disabling
− User controlled settings
Clearly defined interface to implement (CAPI_V2)
− Unit test frameworks to validate that your module is ready to run on the Hexagon DSP
CAPI_V2 passthru and gain examples in the Hexagon SDK
Voice
What can you do with the Hexagon SDK?
25
Library of frequently used functions optimized to run on mobile devices
− Math / vector operations
− Image processing and transformation
− Feature and object detection
− 3D reconstruction
− Color conversion
− Clustering and search
− Motion and object tracking
− Share and drawing
− Memory management
downscaleBy2 and cornerapp examples in the Hexagon SDK
Computer vision
What can you do with the Hexagon SDK?
26
Demo
27
developer.qualcomm.com
Augmented
reality
Context
awareness
Peer
to peer
Wireless
health
Graphics
& gaming
Computer
vision
Android
applications
App development SDKs & tools
Marketing opportunities
Case Studies & Tutorials
News & Information
Hardware development platforms
Forums & technical support
Tools & resources to help developers build, integrate, and optimize
Qualcomm Developer Network
28
For more information on Qualcomm, visit us at:
www.qualcomm.com & www.qualcomm.com/blog
Thank you
FOLLOW US ON:
© 2013-2014 Qualcomm Technologies, Inc. and/or its affiliated companies. All rights reserved.
Qualcomm, DragonBoard, and Hexagon are trademarks of Qualcomm Incorporated, registered in the United States and other countries. Uplinq and QuRT are trademarks of Qualcomm Incorporated. All trademarks of
Qualcomm Incorporated are used with permission. Other product and brand names may be trademarks or registered trademarks of their respective owners.
References in this presentation to “Qualcomm” may mean Qualcomm Incorporated, Qualcomm Technologies, Inc., and/or other subsidiaries or business units within the Qualcomm corporate structure, as applicable.
Qualcomm Incorporated includes Qualcomm’s licensing business, QTL, and the vast majority of its patent portfolio. Qualcomm Technologies, Inc., a wholly-owned subsidiary of Qualcomm Incorporated, operates, along with
its subsidiaries, substantially all of Qualcomm’s engineering, research and development functions, and substantially all of its product and services businesses, including its semiconductor business, QCT.
29
Additional Slides /
APPENDIX
30
Notable features: Eclipse IDE plugin: On-target debug
What is the Hexagon SDK?
Source: Hexagon SDK
31
Notable features: Eclipse IDE plugin: Compute off-load
What is the Hexagon SDK?
Source: Hexagon SDK
32
Notable features: Eclipse IDE plugin: Custom views
What is the Hexagon SDK?
AMDB View
Identifies the devices
(including hot plug),
provides the facility to
add/remove/configure
the audio modules
Quick Profile Viewer
Displays static/dynamic
profiling information for a
project,
Device Viewer
Displays the connected
devices and their state,
Source: Hexagon SDK

Más contenido relacionado

La actualidad más candente

"Snapdragon Hybrid Computer Vision/Deep Learning Architecture for Imaging App...
"Snapdragon Hybrid Computer Vision/Deep Learning Architecture for Imaging App..."Snapdragon Hybrid Computer Vision/Deep Learning Architecture for Imaging App...
"Snapdragon Hybrid Computer Vision/Deep Learning Architecture for Imaging App...Edge AI and Vision Alliance
 
20221021_JP5.0.2-Webinar-JP_Final.pdf
20221021_JP5.0.2-Webinar-JP_Final.pdf20221021_JP5.0.2-Webinar-JP_Final.pdf
20221021_JP5.0.2-Webinar-JP_Final.pdfNVIDIA Japan
 
NEDIA_SNIA_CXL_講演資料.pdf
NEDIA_SNIA_CXL_講演資料.pdfNEDIA_SNIA_CXL_講演資料.pdf
NEDIA_SNIA_CXL_講演資料.pdfYasunori Goto
 
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?Kuniyasu Suzaki
 
"Learning AOSP" - Android Hardware Abstraction Layer (HAL)
"Learning AOSP" - Android Hardware Abstraction Layer (HAL)"Learning AOSP" - Android Hardware Abstraction Layer (HAL)
"Learning AOSP" - Android Hardware Abstraction Layer (HAL)Nanik Tolaram
 
Tuning Android for low RAM
Tuning Android for low RAMTuning Android for low RAM
Tuning Android for low RAMChris Simmonds
 
組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門Norishige Fukushima
 
Introduction to open_sbi
Introduction to open_sbiIntroduction to open_sbi
Introduction to open_sbiNylon
 
いまさら聞けないarmを使ったNEONの基礎と活用事例
いまさら聞けないarmを使ったNEONの基礎と活用事例いまさら聞けないarmを使ったNEONの基礎と活用事例
いまさら聞けないarmを使ったNEONの基礎と活用事例Fixstars Corporation
 
第 1 回 Jetson ユーザー勉強会
第 1 回 Jetson ユーザー勉強会第 1 回 Jetson ユーザー勉強会
第 1 回 Jetson ユーザー勉強会NVIDIA Japan
 
SNAPDRAGON SoC Family and ARM Architecture
SNAPDRAGON SoC Family and ARM Architecture SNAPDRAGON SoC Family and ARM Architecture
SNAPDRAGON SoC Family and ARM Architecture Abdullaziz Tagawy
 
中輟生談教育: 完全用開放原始碼軟體進行 嵌入式系統教學
中輟生談教育: 完全用開放原始碼軟體進行 嵌入式系統教學中輟生談教育: 完全用開放原始碼軟體進行 嵌入式系統教學
中輟生談教育: 完全用開放原始碼軟體進行 嵌入式系統教學National Cheng Kung University
 
一歩進んだXen仮想化環境構築
一歩進んだXen仮想化環境構築一歩進んだXen仮想化環境構築
一歩進んだXen仮想化環境構築VirtualTech Japan Inc.
 
[嵌入式系統] 嵌入式系統進階
[嵌入式系統] 嵌入式系統進階[嵌入式系統] 嵌入式系統進階
[嵌入式系統] 嵌入式系統進階Simen Li
 

La actualidad más candente (20)

How A Compiler Works: GNU Toolchain
How A Compiler Works: GNU ToolchainHow A Compiler Works: GNU Toolchain
How A Compiler Works: GNU Toolchain
 
Linux Audio Drivers. ALSA
Linux Audio Drivers. ALSALinux Audio Drivers. ALSA
Linux Audio Drivers. ALSA
 
"Snapdragon Hybrid Computer Vision/Deep Learning Architecture for Imaging App...
"Snapdragon Hybrid Computer Vision/Deep Learning Architecture for Imaging App..."Snapdragon Hybrid Computer Vision/Deep Learning Architecture for Imaging App...
"Snapdragon Hybrid Computer Vision/Deep Learning Architecture for Imaging App...
 
20221021_JP5.0.2-Webinar-JP_Final.pdf
20221021_JP5.0.2-Webinar-JP_Final.pdf20221021_JP5.0.2-Webinar-JP_Final.pdf
20221021_JP5.0.2-Webinar-JP_Final.pdf
 
NEDIA_SNIA_CXL_講演資料.pdf
NEDIA_SNIA_CXL_講演資料.pdfNEDIA_SNIA_CXL_講演資料.pdf
NEDIA_SNIA_CXL_講演資料.pdf
 
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
 
"Learning AOSP" - Android Hardware Abstraction Layer (HAL)
"Learning AOSP" - Android Hardware Abstraction Layer (HAL)"Learning AOSP" - Android Hardware Abstraction Layer (HAL)
"Learning AOSP" - Android Hardware Abstraction Layer (HAL)
 
Tuning Android for low RAM
Tuning Android for low RAMTuning Android for low RAM
Tuning Android for low RAM
 
組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門
 
Introduction to open_sbi
Introduction to open_sbiIntroduction to open_sbi
Introduction to open_sbi
 
いまさら聞けないarmを使ったNEONの基礎と活用事例
いまさら聞けないarmを使ったNEONの基礎と活用事例いまさら聞けないarmを使ったNEONの基礎と活用事例
いまさら聞けないarmを使ったNEONの基礎と活用事例
 
Linux systems - Getting started with setting up and embedded platform
Linux systems - Getting started with setting up and embedded platformLinux systems - Getting started with setting up and embedded platform
Linux systems - Getting started with setting up and embedded platform
 
第 1 回 Jetson ユーザー勉強会
第 1 回 Jetson ユーザー勉強会第 1 回 Jetson ユーザー勉強会
第 1 回 Jetson ユーザー勉強会
 
Embedded Hypervisor for ARM
Embedded Hypervisor for ARMEmbedded Hypervisor for ARM
Embedded Hypervisor for ARM
 
SNAPDRAGON SoC Family and ARM Architecture
SNAPDRAGON SoC Family and ARM Architecture SNAPDRAGON SoC Family and ARM Architecture
SNAPDRAGON SoC Family and ARM Architecture
 
中輟生談教育: 完全用開放原始碼軟體進行 嵌入式系統教學
中輟生談教育: 完全用開放原始碼軟體進行 嵌入式系統教學中輟生談教育: 完全用開放原始碼軟體進行 嵌入式系統教學
中輟生談教育: 完全用開放原始碼軟體進行 嵌入式系統教學
 
Embedded Android : System Development - Part II (Linux device drivers)
Embedded Android : System Development - Part II (Linux device drivers)Embedded Android : System Development - Part II (Linux device drivers)
Embedded Android : System Development - Part II (Linux device drivers)
 
一歩進んだXen仮想化環境構築
一歩進んだXen仮想化環境構築一歩進んだXen仮想化環境構築
一歩進んだXen仮想化環境構築
 
[嵌入式系統] 嵌入式系統進階
[嵌入式系統] 嵌入式系統進階[嵌入式系統] 嵌入式系統進階
[嵌入式系統] 嵌入式系統進階
 
Qemu
QemuQemu
Qemu
 

Similar a Optimize multimedia with Qualcomm Hexagon SDK

Introduction to Software Defined Visualization (SDVis)
Introduction to Software Defined Visualization (SDVis)Introduction to Software Defined Visualization (SDVis)
Introduction to Software Defined Visualization (SDVis)Intel® Software
 
IMAGE CAPTURE, PROCESSING AND TRANSFER VIA ETHERNET UNDER CONTROL OF MATLAB G...
IMAGE CAPTURE, PROCESSING AND TRANSFER VIA ETHERNET UNDER CONTROL OF MATLAB G...IMAGE CAPTURE, PROCESSING AND TRANSFER VIA ETHERNET UNDER CONTROL OF MATLAB G...
IMAGE CAPTURE, PROCESSING AND TRANSFER VIA ETHERNET UNDER CONTROL OF MATLAB G...Christopher Diamantopoulos
 
PT-4052, Introduction to AMD Developer Tools, by Yaki Tebeka and Gordon Selley
PT-4052, Introduction to AMD Developer Tools, by Yaki Tebeka and Gordon SelleyPT-4052, Introduction to AMD Developer Tools, by Yaki Tebeka and Gordon Selley
PT-4052, Introduction to AMD Developer Tools, by Yaki Tebeka and Gordon SelleyAMD Developer Central
 
DCC Labs Company Presentation
DCC Labs Company PresentationDCC Labs Company Presentation
DCC Labs Company PresentationDCC Labs
 
IDF_Eclipse_Plugin_EclipseCon2020_v2.pdf
IDF_Eclipse_Plugin_EclipseCon2020_v2.pdfIDF_Eclipse_Plugin_EclipseCon2020_v2.pdf
IDF_Eclipse_Plugin_EclipseCon2020_v2.pdfKondal Kolipaka
 
Achieving AI @scale on Mobile Devices
Achieving AI @scale on Mobile DevicesAchieving AI @scale on Mobile Devices
Achieving AI @scale on Mobile DevicesQualcomm Research
 
DACHSview++features
DACHSview++featuresDACHSview++features
DACHSview++featuresA. Steinhoff
 
Cockatrice: A Hardware Design Environment with Elixir
Cockatrice: A Hardware Design Environment with ElixirCockatrice: A Hardware Design Environment with Elixir
Cockatrice: A Hardware Design Environment with ElixirHideki Takase
 
Developing new zynq based instruments
Developing new zynq based instrumentsDeveloping new zynq based instruments
Developing new zynq based instrumentsGraham NAYLOR
 
0xdroid -- community-developed Android distribution by 0xlab
0xdroid -- community-developed Android distribution by 0xlab0xdroid -- community-developed Android distribution by 0xlab
0xdroid -- community-developed Android distribution by 0xlabNational Cheng Kung University
 
Software used in Electronics and Communication
Software used in Electronics and CommunicationSoftware used in Electronics and Communication
Software used in Electronics and Communicationashishsoni1505
 

Similar a Optimize multimedia with Qualcomm Hexagon SDK (20)

System Design on Zynq using SDSoC
System Design on Zynq using SDSoCSystem Design on Zynq using SDSoC
System Design on Zynq using SDSoC
 
Introduction to Software Defined Visualization (SDVis)
Introduction to Software Defined Visualization (SDVis)Introduction to Software Defined Visualization (SDVis)
Introduction to Software Defined Visualization (SDVis)
 
IMAGE CAPTURE, PROCESSING AND TRANSFER VIA ETHERNET UNDER CONTROL OF MATLAB G...
IMAGE CAPTURE, PROCESSING AND TRANSFER VIA ETHERNET UNDER CONTROL OF MATLAB G...IMAGE CAPTURE, PROCESSING AND TRANSFER VIA ETHERNET UNDER CONTROL OF MATLAB G...
IMAGE CAPTURE, PROCESSING AND TRANSFER VIA ETHERNET UNDER CONTROL OF MATLAB G...
 
DRIVE PX 2
DRIVE PX 2DRIVE PX 2
DRIVE PX 2
 
PT-4052, Introduction to AMD Developer Tools, by Yaki Tebeka and Gordon Selley
PT-4052, Introduction to AMD Developer Tools, by Yaki Tebeka and Gordon SelleyPT-4052, Introduction to AMD Developer Tools, by Yaki Tebeka and Gordon Selley
PT-4052, Introduction to AMD Developer Tools, by Yaki Tebeka and Gordon Selley
 
DCC Labs Company Presentation
DCC Labs Company PresentationDCC Labs Company Presentation
DCC Labs Company Presentation
 
IDF_Eclipse_Plugin_EclipseCon2020_v2.pdf
IDF_Eclipse_Plugin_EclipseCon2020_v2.pdfIDF_Eclipse_Plugin_EclipseCon2020_v2.pdf
IDF_Eclipse_Plugin_EclipseCon2020_v2.pdf
 
Achieving AI @scale on Mobile Devices
Achieving AI @scale on Mobile DevicesAchieving AI @scale on Mobile Devices
Achieving AI @scale on Mobile Devices
 
DACHSview++features
DACHSview++featuresDACHSview++features
DACHSview++features
 
soc design for dsp applications
soc design for dsp applicationssoc design for dsp applications
soc design for dsp applications
 
Cockatrice: A Hardware Design Environment with Elixir
Cockatrice: A Hardware Design Environment with ElixirCockatrice: A Hardware Design Environment with Elixir
Cockatrice: A Hardware Design Environment with Elixir
 
Embedded system
Embedded systemEmbedded system
Embedded system
 
Bindu_Resume
Bindu_ResumeBindu_Resume
Bindu_Resume
 
Resume
ResumeResume
Resume
 
CV_Arshad_21June16
CV_Arshad_21June16CV_Arshad_21June16
CV_Arshad_21June16
 
Developing new zynq based instruments
Developing new zynq based instrumentsDeveloping new zynq based instruments
Developing new zynq based instruments
 
0xdroid -- community-developed Android distribution by 0xlab
0xdroid -- community-developed Android distribution by 0xlab0xdroid -- community-developed Android distribution by 0xlab
0xdroid -- community-developed Android distribution by 0xlab
 
Rashmi_Resume
Rashmi_ResumeRashmi_Resume
Rashmi_Resume
 
Software used in Electronics and Communication
Software used in Electronics and CommunicationSoftware used in Electronics and Communication
Software used in Electronics and Communication
 
ARM
ARMARM
ARM
 

Más de Qualcomm Developer Network

How to take advantage of XR over 5G: Understanding XR Viewers
How to take advantage of XR over 5G: Understanding XR ViewersHow to take advantage of XR over 5G: Understanding XR Viewers
How to take advantage of XR over 5G: Understanding XR ViewersQualcomm Developer Network
 
Making an on-device personal assistant a reality
Making an on-device personal assistant a realityMaking an on-device personal assistant a reality
Making an on-device personal assistant a realityQualcomm Developer Network
 
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 4
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 4Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 4
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 4Qualcomm Developer Network
 
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 3
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 3Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 3
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 3Qualcomm Developer Network
 
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 2
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 2Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 2
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 2Qualcomm Developer Network
 
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 1
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 1Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 1
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 1Qualcomm Developer Network
 
Connected Lighting: The Next Frontier in the Internet of Everything
Connected Lighting: The Next Frontier in the Internet of EverythingConnected Lighting: The Next Frontier in the Internet of Everything
Connected Lighting: The Next Frontier in the Internet of EverythingQualcomm Developer Network
 
Android Tools for Qualcomm Snapdragon Processors
Android Tools for Qualcomm Snapdragon Processors Android Tools for Qualcomm Snapdragon Processors
Android Tools for Qualcomm Snapdragon Processors Qualcomm Developer Network
 
Qualcomm Snapdragon Processors: A Super Gaming Platform
Qualcomm Snapdragon Processors: A Super Gaming Platform Qualcomm Snapdragon Processors: A Super Gaming Platform
Qualcomm Snapdragon Processors: A Super Gaming Platform Qualcomm Developer Network
 
How to Minimize Your App’s Power Consumption
How to Minimize Your App’s Power Consumption How to Minimize Your App’s Power Consumption
How to Minimize Your App’s Power Consumption Qualcomm Developer Network
 
LTE Broadcast/Multicast for Live Events & More
LTE Broadcast/Multicast for Live Events & More LTE Broadcast/Multicast for Live Events & More
LTE Broadcast/Multicast for Live Events & More Qualcomm Developer Network
 
The Fundamentals of Internet of Everything Connectivity
The Fundamentals of Internet of Everything ConnectivityThe Fundamentals of Internet of Everything Connectivity
The Fundamentals of Internet of Everything ConnectivityQualcomm Developer Network
 
Introduction to Qualcomm Vuforia Mobile Vision Platform: Toy Recognition
Introduction to Qualcomm Vuforia Mobile Vision Platform: Toy Recognition Introduction to Qualcomm Vuforia Mobile Vision Platform: Toy Recognition
Introduction to Qualcomm Vuforia Mobile Vision Platform: Toy Recognition Qualcomm Developer Network
 

Más de Qualcomm Developer Network (20)

How to take advantage of XR over 5G: Understanding XR Viewers
How to take advantage of XR over 5G: Understanding XR ViewersHow to take advantage of XR over 5G: Understanding XR Viewers
How to take advantage of XR over 5G: Understanding XR Viewers
 
Balancing Power & Performance Webinar
Balancing Power & Performance WebinarBalancing Power & Performance Webinar
Balancing Power & Performance Webinar
 
What consumers want in their next XR device
What consumers want in their next XR deviceWhat consumers want in their next XR device
What consumers want in their next XR device
 
More Immersive XR through Split-Rendering
More Immersive XR through Split-RenderingMore Immersive XR through Split-Rendering
More Immersive XR through Split-Rendering
 
Making an on-device personal assistant a reality
Making an on-device personal assistant a realityMaking an on-device personal assistant a reality
Making an on-device personal assistant a reality
 
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 4
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 4Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 4
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 4
 
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 3
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 3Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 3
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 3
 
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 2
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 2Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 2
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 2
 
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 1
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 1Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 1
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 1
 
Connected Lighting: The Next Frontier in the Internet of Everything
Connected Lighting: The Next Frontier in the Internet of EverythingConnected Lighting: The Next Frontier in the Internet of Everything
Connected Lighting: The Next Frontier in the Internet of Everything
 
Bring Out the Best in Embedded Computing
Bring Out the Best in Embedded ComputingBring Out the Best in Embedded Computing
Bring Out the Best in Embedded Computing
 
Android Tools for Qualcomm Snapdragon Processors
Android Tools for Qualcomm Snapdragon Processors Android Tools for Qualcomm Snapdragon Processors
Android Tools for Qualcomm Snapdragon Processors
 
Qualcomm Snapdragon Processors: A Super Gaming Platform
Qualcomm Snapdragon Processors: A Super Gaming Platform Qualcomm Snapdragon Processors: A Super Gaming Platform
Qualcomm Snapdragon Processors: A Super Gaming Platform
 
How to Minimize Your App’s Power Consumption
How to Minimize Your App’s Power Consumption How to Minimize Your App’s Power Consumption
How to Minimize Your App’s Power Consumption
 
LTE Broadcast/Multicast for Live Events & More
LTE Broadcast/Multicast for Live Events & More LTE Broadcast/Multicast for Live Events & More
LTE Broadcast/Multicast for Live Events & More
 
The Fundamentals of Internet of Everything Connectivity
The Fundamentals of Internet of Everything ConnectivityThe Fundamentals of Internet of Everything Connectivity
The Fundamentals of Internet of Everything Connectivity
 
The Future Mobile Security
The Future Mobile Security The Future Mobile Security
The Future Mobile Security
 
Get Educated on Education Apps
Get Educated on Education Apps Get Educated on Education Apps
Get Educated on Education Apps
 
Bringing Mobile Vision to Wearables
Bringing Mobile Vision to Wearables Bringing Mobile Vision to Wearables
Bringing Mobile Vision to Wearables
 
Introduction to Qualcomm Vuforia Mobile Vision Platform: Toy Recognition
Introduction to Qualcomm Vuforia Mobile Vision Platform: Toy Recognition Introduction to Qualcomm Vuforia Mobile Vision Platform: Toy Recognition
Introduction to Qualcomm Vuforia Mobile Vision Platform: Toy Recognition
 

Último

Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024TopCSSGallery
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 

Último (20)

Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 

Optimize multimedia with Qualcomm Hexagon SDK

  • 1. 1
  • 2. Qualcomm® Hexagon™ SDK Optimize Your Multimedia Solutions Jack May, Senior Staff Engineer Qualcomm Technologies, Inc. Qualcomm Hexagon is a product of Qualcomm Technologies, Inc.
  • 4. 4 Designed to easily utilize the capabilities of the Hexagon DSP Uses the ability to dynamically load and execute code on the Hexagon DSP Helps reduce development effort and promotes a rapid development cycle Applications include − General compute − Audio − Voice − Imaging − Computer vision Overview What is the Hexagon SDK?
  • 5. 5 Provide customization of the Hexagon DSP without rebuilding the static image − Remote procedure call mechanism between the HLOS and the Hexagon DSP − Dynamically loadable objects loaded at runtime. − Dynamic module interfaces to the Audio/Voice/.. Frameworks Provide multiple debugging options − USB based debugger − Diagnostic logging Provide unit and system level test frameworks and capabilities Provide both in-simulation and on-target environments Goals What is the Hexagon SDK?
  • 6. 6 Windows installer Installs the SDK components (docs, examples, tools, …) Results in a complete, self-contained development environment Minimizes environment changes that may impact other tools or installations Multiple SDK versions may be installed side by side Downloads 3rd party dependencies No global PATH or environment variable modifications Dependencies are self-contained and local to the SDK − Except − Hexagon Tools − Python Linux support on the roadmap Installation What is the Hexagon SDK?
  • 7. 7 What is in the Hexagon SDK?
  • 8. 8 Fast Remote Procedure Calls (FastRPC) Dynamic loading Remote debugger Eclipse plugin Hardware development platforms Optimized Hexagon libraries Real-time Operation System (RTOS) Comprehensive tool chain Diagnostic logging Notable features What is in the Hexagon SDK?
  • 9. 9 Remote procedure calls between the applications processor and the Hexagon DSP Fast − Synchronous − Zero copy − Cache coherent Functions called on the Hexagon DSP may reside in dynamically loaded code Maintains cache coherency for input and output buffers Calling HLOS threads handled by corresponding threads on the Hexagon DSP Threads are automatically cleaned up when HLOS process exits Notable features: FastRPC What is in the Hexagon SDK?
  • 10. 10 DSPApplications processor Notable features: FastRPC What is in the Hexagon SDK? In-process Transport Application calculator library calculator_skel calculator_sum() #include "calculator.h" int calculator_sum( const int* vec, int vecLen, int64* res) { int ii = 0; *res = 0; for(ii = 0; ii < vecLen; ++ii) { *res = *res + vec[ii]; } return 0; } calculator_sum() calculator_stub calculator_sum() Sample code subject to SDK license agreement. Available at developer.qualcomm.com
  • 11. 11 Notable features: FastRPC: Performance What is in the Hexagon SDK? Size of buffer 8074 in (us) 8074 out (us) 0 62 32 kB 80 90 64 kB 84 94 128 kB 85 106 1 MB 177 211 4 MB 261 212 8 MB 377 303 16 MB 612 538 − Measured with Application and DSP processor clocks at max − 8074 DragonBoard™ from Intrinsyc − No change in data and DSP returns immediately − These are minimum times, and does not include RAM to cache sync times (as if prefetched) Source: Qualcomm Technologies, Inc. internal testing
  • 12. 12 Allows for the addition of code/data into the Hexagon DSP at runtime Faster development cycles, only have to build your shared object Code/data is built into shared object files (.so) − Executable and Linkable Format (ELF) − Stored on the HLOS’s file system and read by the Hexagon DSP when loaded Functions and variables become accessible to the static DSP image once the shared object is loaded Native support for shared objects in the audio and voice frameworks Notable features: Dynamic Loading What is in the Hexagon SDK?
  • 13. 13 lib.so Fxn() Notable features: Dynamic Loading What is in the Hexagon SDK? HLOS File System lib.so Fxn() aDSP Static Image h = dlopen(“lib.so”); pFxn = dlsym(h, “Fxn”); pFxn(); dlclose(h); lib.so Fxn()
  • 14. 14 Easier to create, build, run, test, and debug Hexagon modules Project templates Unit and integration testing Simulator and on-target debugging Syntax aware and highlighting for Hexagon assembly, C/C++, and IDL Custom views − Connected devices − Profiler − Resource analyzer − Audio module database − Logging Notable features: Eclipse IDE plugin What is in the Hexagon SDK?
  • 15. 15 USB based software, no hardware JTAG required Industry standard debug tools (GDB with LLDB on roadmap) Integrated with the Hexagon SDK Eclipse plugin Single or all thread stop debugging Simulator and on-target debugging Notable features: Remote debugger What is in the Hexagon SDK?
  • 16. 16 Quick development cycle from picking up the Hexagon SDK to running your code on-target Affordable hardware based development platforms provided by Intrinsyc Multiple form factors supported − Exposed boards (DragonBoards) − Tablets (MDPs) Hardware support provided by Intrinsyc − http://www.intrinsyc.com/products/qualcomm/dragonboard-development-kits.aspx Notable features: Hardware development platforms What is in the Hexagon SDK?
  • 17. 17 C and Assembly optimized libraries for common operations − FIR, IIR − FFT, IFFT, FHT − Up sampler − Computer vision (FastCV) − feature/object detection − motion & object tracking − color conversion − 3D reconstruction − image processing − Lots more … Notable features: Optimized Hexagon libraries What is in the Hexagon SDK?
  • 18. 18 QuRT™ software: real-time operating system for the Hexagon processor Low overhead both in memory and processing requirements Supports − Priority-based preemptive multithreading − Thread synchronization and communication (mutex, signal, semaphore, barriers, pipes, …) − Timers − Interrupts − Exceptions − Memory management Notable features: RTOS What is in the Hexagon SDK? QuRT is a product of Qualcomm Technologies, Inc.
  • 19. 19 ISO C/C++ compiler Assembler Standard (libc) and processor specific libraries Intrinsics Linker and archiver Debugger (gdb) Profiler (gprof) Misc utilities − ELF viewer − nm − strings − size Notable features: Comprehensive tool chain What is in the Hexagon SDK?
  • 20. 20 Runtime diagnostic logging Viewable in logcat or on host (PC) Integrated with the Hexagon SDK Eclipse plugin Supported in simulation and on-target Notable features: Diagnostic logging What is in the Hexagon SDK?
  • 21. 21 What can you do with the Hexagon SDK?
  • 22. 22 Offload compute tasks from the application processor onto the Hexagon DSP − Lower power − Frees up resources on the application processor − Appears to caller as if calling a local library Easier to do − Define interface in IDL − Use existing C code or optimize with Hexagon DSP assembly − Build using the Hexagon Tools suite − Call via the stub library on the application processor. Moving data between processors is transparent to callers and implementers − Cache coherent − Zero copy Calculator example in the Hexagon SDK General compute What can you do with the Hexagon SDK?
  • 23. 23 Add custom algorithms, encoders, and decoders to the audio framework Dynamically load and unload audio use cases on an as-needed basis − Saves memory Communicate with your audio module at runtime − Tuning − Feature enabling/disabling − User controlled settings Clearly defined interface to implement (APPI or CAPI) − Unit test frameworks to validate that your module is ready to run on the Hexagon DSP Lots of APPI and CAPI examples in the Hexagon SDK Audio What can you do with the Hexagon SDK?
  • 24. 24 Add custom processing algorithms to the voice framework Communicate with your voice module at runtime − tuning − Feature enabling/disabling − User controlled settings Clearly defined interface to implement (CAPI_V2) − Unit test frameworks to validate that your module is ready to run on the Hexagon DSP CAPI_V2 passthru and gain examples in the Hexagon SDK Voice What can you do with the Hexagon SDK?
  • 25. 25 Library of frequently used functions optimized to run on mobile devices − Math / vector operations − Image processing and transformation − Feature and object detection − 3D reconstruction − Color conversion − Clustering and search − Motion and object tracking − Share and drawing − Memory management downscaleBy2 and cornerapp examples in the Hexagon SDK Computer vision What can you do with the Hexagon SDK?
  • 27. 27 developer.qualcomm.com Augmented reality Context awareness Peer to peer Wireless health Graphics & gaming Computer vision Android applications App development SDKs & tools Marketing opportunities Case Studies & Tutorials News & Information Hardware development platforms Forums & technical support Tools & resources to help developers build, integrate, and optimize Qualcomm Developer Network
  • 28. 28 For more information on Qualcomm, visit us at: www.qualcomm.com & www.qualcomm.com/blog Thank you FOLLOW US ON: © 2013-2014 Qualcomm Technologies, Inc. and/or its affiliated companies. All rights reserved. Qualcomm, DragonBoard, and Hexagon are trademarks of Qualcomm Incorporated, registered in the United States and other countries. Uplinq and QuRT are trademarks of Qualcomm Incorporated. All trademarks of Qualcomm Incorporated are used with permission. Other product and brand names may be trademarks or registered trademarks of their respective owners. References in this presentation to “Qualcomm” may mean Qualcomm Incorporated, Qualcomm Technologies, Inc., and/or other subsidiaries or business units within the Qualcomm corporate structure, as applicable. Qualcomm Incorporated includes Qualcomm’s licensing business, QTL, and the vast majority of its patent portfolio. Qualcomm Technologies, Inc., a wholly-owned subsidiary of Qualcomm Incorporated, operates, along with its subsidiaries, substantially all of Qualcomm’s engineering, research and development functions, and substantially all of its product and services businesses, including its semiconductor business, QCT.
  • 30. 30 Notable features: Eclipse IDE plugin: On-target debug What is the Hexagon SDK? Source: Hexagon SDK
  • 31. 31 Notable features: Eclipse IDE plugin: Compute off-load What is the Hexagon SDK? Source: Hexagon SDK
  • 32. 32 Notable features: Eclipse IDE plugin: Custom views What is the Hexagon SDK? AMDB View Identifies the devices (including hot plug), provides the facility to add/remove/configure the audio modules Quick Profile Viewer Displays static/dynamic profiling information for a project, Device Viewer Displays the connected devices and their state, Source: Hexagon SDK