基于A(yíng)M57x的OpenCL的加速性能測試

發(fā)布時(shí)間:2018-7-3 17:41    發(fā)布者:zhiwing
關(guān)鍵詞: AM5728 , OpenCL , 加速性能 , DSP , 嵌入式
1  實(shí)驗說(shuō)明
本例程測試功能:讀取指定的圖像數據,然后對圖像進(jìn)行灰度轉換和Canny算法處理,計算處理過(guò)程所耗的時(shí)間,并將處理后的圖像保存到當前目錄下。
本例程主要是測試OpenCL是否對這兩種算法有優(yōu)化效果,分別從禁用OpenCL和使能OpenCL兩種情況來(lái)計算處理圖像數據所用的時(shí)間,將測試的結果與官方提供的測試結果進(jìn)行對比和驗證。
file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image001.gif  例程源碼路徑:光盤(pán)“Demo/OpenCL/OpenCL_performance_test/src”
file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image001.gif  可執行文件以及測試腳本路徑:光盤(pán)“Demo/OpenCL/OpenCL_performance_test/bin”
file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image001.gif  測試使用的圖片路徑:光盤(pán)“Demo/OpenCL/OpenCL_performance_test/data”
file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image001.gif  測試平臺:廣州創(chuàng )龍TL5728-IDK開(kāi)發(fā)板
開(kāi)發(fā)板簡(jiǎn)介:
Ø 基于TI AM5728浮點(diǎn)雙DSPC66x+雙ARMCortex-A15工業(yè)控制及高性能音視頻處理器;
Ø 強勁的視頻編解碼能力,支持1路1080P60或2路720P60或4路720P30視頻硬件編解碼,支持H.265視頻軟解碼;
Ø 雙核PRU-ICSS工業(yè)實(shí)時(shí)控制子系統,支持EtherCAT、EtherNet/IP、PROFIBUS等工業(yè)協(xié)議;
Ø 外設接口豐富,GPMC、USB 2.0、UART、SPI、QSPI、I2C、DCAN等工業(yè)控制總線(xiàn)和接口,支持高速接口PCle Gen2、USB 3.0、SATA 2.0;
Ø 應用于工業(yè) PC&HMI、工業(yè)機器人、機器視覺(jué)、 醫療影像、電力自動(dòng)化等領(lǐng)域。
2  例程編譯
將光盤(pán)資料“Demo/OpenCL/OpenCL_performance_test/src”例程源碼拷貝到Ubuntu任意目錄,進(jìn)入該源碼目錄執行以下命令對源碼進(jìn)行編譯:
Host#    cdAM57xx/OpenCL_performance_test/src/
Host#    make SDK_INSTALL_PATH=/home/tronlong/ti-processor-sdk-linux-am57xx-evm-03.01.00.06
編譯完成之后會(huì )在當前目錄下生成可執行文件canny,將其拷貝到開(kāi)發(fā)板文件系統的“/home/root/”目錄下。
將光盤(pán)資料“Demo/OpenCL/OpenCL_performance_test”下的bin文件夾以及data文件夾拷貝到開(kāi)發(fā)板文件系統的“/home/root/”目錄下。bin文件夾下包含opencl_off.sh和opencl_on.sh測試腳本,data文件夾下是兩張大小和格式不同的圖片文件TL5728_1080p.jpg和lena.png。
3  例程測試
以下分別從禁用OpenCL功能和使能OpenCL功能來(lái)進(jìn)行對比測試,分別采用data文件夾下的圖片TL5728_1080p.jpg和lena.png來(lái)測試。
3.1    禁用OpenCL
執行以下命令進(jìn)行測試,先禁止運行OpenCL功能,然后清理緩存再進(jìn)行測試,重復清理緩存和測試的步驟5次,如下圖所示:
Target#      sourcebin/opencl_off.sh
Target#      sync;echo 3 >/proc/sys/vm/drop_caches
Target#      ./cannydata/TL5728_1080p.jpg
取以上5次測試結果的平均值:
Ø  BGR2GRAY tdiff=55.01ms
Ø  Canny tdiff=95.50ms
3.2    使能OpenCL
執行以下命令進(jìn)行測試,先使能OpenCL功能,然后清理緩存再進(jìn)行測試,重復清理緩存和測試的步驟6次,如下圖所示:
Target#      sourcebin/opencl_on.sh
Target#      sync;echo 3 >/proc/sys/vm/drop_caches
Target#      ./cannydata/TL5728_1080p.jpg
如上一共測試了6次,每一次測試之前記得先將系統內核緩存清理干凈,否則測試結果有誤。因為第一次運行時(shí),內核在A(yíng)M57xx上編譯,OpenCL使能時(shí)會(huì )有額外的延遲,延遲時(shí)間大約為幾十秒,所以第一次測試結果不作為參考。官方解釋如下:
Please note that the first run, with OpenCL on, hasadditional delay of ~1min, due to kernel compilation on AM57xx. This isconstrained to first run only, if "TI_OCL_CACHE_KERNELS" environemntvariable is set.
由以上6次的測試結果,取最后5次測試結果的平均值:
Ø  BGR2GRAY tdiff=185.38ms
Ø  Canny tdiff=17.71ms
3.3    測試結果對比
同理,按照如上操作步驟在分別禁用OpenCL和使能OpenCL的情況下,計算處理lena.png圖片所用的時(shí)間,并對5次測試的數據取平均值。對比以上測試結果,如下表所示:

作用率=禁用OpenCL計算處理圖像數據所用的時(shí)間/使能OpenCL計算處理圖像數據所用的時(shí)間。
以下是官方的測試數據:
BGR2GRAY作用率=0.345
Canny作用率=1.690
從測試結果可以看出來(lái),本次測試與官方測試結論是一致的:OpenCL對BRG2GRAY算法不但沒(méi)有性能上的提升反而存在著(zhù)負面的效果;而對Canny算法則有著(zhù)非常明顯的提升效果,與官方的作用率進(jìn)行對比,本次測試得出的作用率要大于官方提供的作用率數據,這與待測試的圖像文件有一定的關(guān)系。
官方提供的其他OpenCL內核的測試數據:
鏈接:http://processors.wiki.ti.com/index.php/OpenCV

本文地址:http://selenalain.com/thread-528418-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页