一、HVX簡介
HVX(“Hexagon矢量擴展”,Hexagon-六邊形、Vector-矢量、Extensions-擴展)是Hexagon 680 DSP的典型特性,能夠在執行圖像處理應用中的計算負載當中發揮重要作用,比如虛擬現實、增強現實、圖像處理、視頻處理、計算視覺等。此前這些任務均是由CPU或GPU來執行,如今交給Hexagon 680 DSP,能夠達到更加高效、功耗更低的效果。
HVX之所以這么重要是因為它能比CPU處理像素的速度更快,CPU只能在同一時間處理1個或2個像素。但有了HVX,能夠在同一時間處理超過100個像素,這種並行算法結合先進的HVX指令體系,創造了一種在處理相機圖片時,比CPU更加快速高效的效率及更低的功耗。根據高通數據,Hexagon 680 DSP相比於以前只有NEON優化的情況下,性能可提升1到3倍,而功耗可降低到原來的1/18到1/4。而支持HVX的Hexagon 680 DSP能夠比直接通過CPU處理,達到更快的處理速度——其能夠完成原本需要CPU來完成的工作,並且無需喚醒,全時間待命,更高效、效果更好。
通過集成HVX,Hexagon 680 DSP中添加了對於視頻即時處理的支持,搭載驍龍820和驍龍821處理器的手機拍攝視頻時,也能運用自適應增量功能,視頻中過暗的部分可以自動進行增亮。當DSP察覺到畫面較暗的區域,會自動將這些區域調亮,搭載Hexagon 680 DSP的驍龍820和驍龍821在處理這些內容時,處理速度相比上一代技術快3倍,而功耗卻僅有此前的10%。
二、HVX調試
1.HVX簽名方法
舊方法:
1、安裝windows_qualcomm_hexagon_sdk_3_3_x,eclipse和mini sdk必須安裝
2、D:\Qualcomm\Hexagon_SDK\3.x.x目前下執行“setup_sdk_env.cmd”
3、D:\Qualcomm\Hexagon_SDK\3.x.x\examples\compute\benchmark_v65目錄下執行“python benchmark_v65_walkthrough.py -T sdm845”
4、中間點擊yes
5、執行demo
新方法(推薦):
1、adb shell cat /sys/devices/soc0/serial_number,轉為16進制
2、python2 D:\software\Qualcomm\Hexagon_SDK\3.4.3\tools\elfsigner\elfsigner.py -t 0xBB6AB849 (serial_number的16進制)
3、adb push output\testsig-0xbb6ab849.so (第二步生成的文件) /vendor/lib/rfsa/adsp/
注:3.4.3版本 benchmark_v65_walkthrough.py 在 \examples\common\benchmark_v65\ 目錄下。
2.抓取HVX log
1) 工具路徑:D:\Qualcomm\Hexagon_SDK\3.4.3\tools\debug\mini-dm\WinNT_Debug
2) mini-dm.exe --comport com4 > msg.txt(看具體接口com,從設備管理器-端口-HS_USB(com))
3) 操作手機,hvx log即保存在msg.txt文件中。