新聞中心

        EEPW首頁 > 手機與無線通信 > 業界動態 > 深入淺出,帶你了解Qualcomm的圖形圖像優化之道

        深入淺出,帶你了解Qualcomm的圖形圖像優化之道

        作者: 時間:2017-09-07 來源: 收藏

        本文引用地址:http://www.104case.com/article/201709/364028.htm

        隨著我們對移動設備的依賴越來越強,手機游戲、移動應用越來越多的參與到我們的日常生活中,而賦予這些產品精美的UI設計、良好的用戶體驗、炫酷的游戲畫面以及優異的性能表現,都能夠幫助開發者更好地獲取用戶的青睞,為此在2017年8月在深圳、北京、上海舉行了三場“探索移動處理——開發者公開課”,全面向開發者介紹深層次的移動端的優化之道!

        資深產品市場經理溫宵凱:Qualcomm平臺優勢及優化工具.

        會間溫宵凱介紹到,Qualcomm在移動領域已經耕耘了超過三十年了,最早從modem開始,要最早先解決互聯問題,隨著最近智能手機發展,Qualcomm也是非常快地投入了大量的研發精力,放到多媒體處理器的研發上面,所以到現在,可以很自豪地講,Qualcomm是在移動多媒體互聯處理器里邊的世界第一的半導體廠商,特別是在移動互聯方面,是現在的3G、4G 的modem的領軍廠商,同時也同時投入了大量的人力和物力,在進行更新的5G的連接,在wifi方面也是有非常深地積累。

        同時他也介紹到驍龍835處理器是全世界第一顆基于10納米芯片制造技術所制造的半導體芯片,所以你會看到它的尺寸變得非常非常的小,旁邊是一顆我們中國的一元人民幣的硬幣,所以在這樣一個非常小的面積內,它事實上集成了大量的多媒體和modem的處理器件,這個是傳統領域完全想象不到的,同時包括小米的米6,還有中興的nubia Z17,還有像一加的一加5,和HTC的U11,這些優秀的產品都是用了基于Qualcomm的,另外它也被用到了像ODG R8這樣的一款AR眼鏡里面。他同時向在場的開發者介紹了驍龍835處理器的相關技術參數及優勢。

        筆者了解到,基于處理器是專為移動游戲設計的一款處理器。

        具體參數如下:

        ● Qualocmm? Kryo? 280 CPU up to 2.45GHz

        ● Qualocmm? Adreno? 540GPU

        ● OpenGL ES3.2, Vulkan

        ● HDR10 with 60x more color

        ● Gigabit LTE

        ● Tri-band Wi-Fi

        ● Low latency

        ● Qualocmm? Quick Charge? 4.0

        ● 基于10nm制程

          同時Adreno540比上一代產品提升了25%圖形性能,同時支持10bit色,它能夠支持64倍于之前的8bit色的色彩。另外Qualcomm在生態建設方面也是投入了巨大的精力,所以我們跟很多行業界的重點的公司,像重點的引擎提供商,像Unity和ePeak都有非常緊密的合作,來保證它的兼容性,和它最新的特效能夠最早地部署在這樣的高端手機上.

        Qualcomm高級工程師李彩琴:移動平臺圖形技術進化史

        首先她展示了一張在Mobile上渲染的一張特別真實的圖片,同時介紹了渲染出如此逼真圖片所需要的特效。以及在OpenGL的API上的技術及渲染過程。不論從模擬幾何角度、紋理坐標、法向量、顏色,還是到GPU中處理、定義視景體,甚至fragment shader對于像素的處理的過程都做了詳細的介紹。

        其次她介紹到Qualcomm有基于tile的一個rendering的方案,因為考慮到mobile上面,它的帶寬是有限的,而且它是需要考慮到功耗的,不像電腦上面它有帶寬很夠用,然后它的功耗也是,它插電源,不需要考慮功耗的問題。在mobile上的話Qualcomm就需要在這兩方面來考慮一個很好的方案,來實現又有高性能然后又可以盡量少耗功耗的一個效果.

        最后她與會者現場介紹了一些實際的案例。詳細介紹了Qualcomm處理中更多的使用GPU來進行操作,進而減少CPU的工作量同時在節約用電的同時給大家帶來更好的圖形圖像體驗。

        Qualcomm高級資深工程師經理文艷山:次世代圖形圖像API

        首先他介紹了Vulkan的發展史,從2012年的GLcomment,再到2014年AMD的Mantal,再到2016年Vulkan1.0之后其介紹了Vulkan的一些特性。

        ● 首先Vulkan它是一個新的API,不僅包括Graphics也包括Compute,

        ● 然后Vulkan它是為現代的GPU設計的

        ● 是一個跨平臺的設計

        ● 同時支持多種操作系統

        那作為開發者我們為什么要用Vulkan?

        如果你希望你的APP是可以做Bit化的,希望你的APP能夠用到當今多核的優勢,希望你的APP的行為是可預測的,你應該用Vulkan。如果你要全新開發一個游戲,在你選擇游戲引擎的時候,建議比如你要用Unity或者建議用Unity 56以后的版本,從56開始,Unity支持Vulkan。因為可能你在5.5上開發了很久,開發出來,到時候它不支持Vulkan,然后想試Vulkan版本做升級的話,大家都知道游戲引擎上做升級是非常麻煩的一個事情。你需要做很多工作,修很多Bug。Android好像是從UE 4開始支持Vulkan。所以在選擇游戲引擎的時候,你應該先了解下這個游戲引擎是否支持Vulkan。你如果自己寫引擎呢,那你在引擎里面應該考慮加入Vulkan的支持。

        同時文艷山也建議開發者使用Vulkan里面的Pipeline cache,它可以巨大提升你Pipeline創建速度,并且做了詳細的介紹最后他向與會者介紹了Vulkan的memory的部分,VULKAN每個分配memory的函數,你所有的Memory都可以自己分配,因為你自己擁有的分配權,所以你自己就可以管理,這對于開發者來說也是極其有益的。

        Qualcomm高級工程師李娟:基于驍龍Snapdragon Profiler的應用開發性能優化

        Snapdragon Profiler的設計,設計的理念就是希望能很簡單的運用,但是有很多功能,提供同樣的界面便于用戶使用。可以分析CPU上的數據、GPU上的數據和DSP上的數據,可以分析VR的APP、OpenCL也支持。它具有多種功能多種模式,有實時的種模式,有trace的模式,就是靜態的一段到另外一段時間系統所發生的事件。有Frame Capture。主要針對圖形應用,可以抓住這一幀所有的資源,你的API,各種draw call list怎么畫的。

        進而又在此延展進行相關案例的介紹,包括如何去分析它們。

        -Augmented Reality App Realtime

        -Snapchat – Trace

        -Augmented Reality App  – Snapshot

        -Virtual Reality App

        Qualcomm資深工程師杜博:移動應用開發優化精髓

        如何有效的進行移動應用開發的優化呢?

        其間他介紹到,第一個是要盡量減少我們渲染的像素,第二個我們要減少draw call的個數,第三盡量的減少帶寬的使用,第四個是關于VBO使用的優化,然后關于FOB使用的優化,第六個就是我們要去排序的優化,第七個是我們在shader使用過程中,我們對精度的控制,我們建議把默認的精度方式設成中等,在需要提升的情況下,對于你的shader需求,需要提升,我們可以設置成high,但是默認的話,我們都是中等,然后在shader運算的過程中,我們盡量減少參與運算的component的個數,只要夠我們的使用情況,我們不需要把所有的component都加入運算,這也是從性能和功耗上面都有好處的。第九,如果在我們render結束了以后,像這種Depth Buffer, stencil Buffer 我們通過gllnvalidate 把它discard,這樣可以避免不必要的數據拷貝,也是從性能和功耗上面都有好處。后面有三點都是和tessellation相關的,我們在做tessellation的過程中要盡量避免對亞像素三角形的計算,因為這個對于后面光深化的模塊帶來不好的性能。然后是背面三角形的一個剔除,我們要在tessellation階段盡可能的提早的把背面的三角形這種畸形的給它終止掉。然后在tessellation過程中我們對不使用的這種狀態我們也盡量不要把它enable起來,這樣都是在性能和功耗方面得到一些改善。后面我們還有講compute shader和fragment shader的可替換性上,在我們某些應用場景上面,如果我們可以用fragment shader,可以實現相同的compute shader 功能的情況下,我們建議大家就用fragment shader,這樣避免在GPU內部狀態的一個切換。還有就是在我們的compute shader或者向open cl的刻度運行的時候,我們需要對運行的參數進行優化,這里面我們著重講的就是這個workgroup size。Workgroup size這個大小的變化對這種運算,像compute shader, open cl 的這種運算帶來它的性能影響特別大。最后我們會推薦大家用剛才李娟介紹的這個snapdragon profiler 對你的應用做profile,那么可以得到你這個應用的哪些地方的性能還不夠好,我們可以進行進一步的優化。同時對這些優化點逐一進行展開介紹。

        Qualcomm高級工程師李娟:利用驍龍Symphony優化應用功耗

        其間她介紹到這個SDK就是幫助開發者能夠應用SoC上的所有運算資源,包括大小核,GPU和DSP。并且它給應用開發者提供了一些API可以控制功耗。并且指定你的任務是在哪個核上運行,在大核或者小核,或者GPU或者DSP上運行。簡而言之,它能夠幫助用戶并行地利用Soc上各個運算資源,并且提供了一套control API來控制你的功耗,已達到performance和功耗的平衡。

        Symphony是什么呢?它其實是C++應用層的一些API,它提供給用戶一個庫文件,調用庫文件的一些接口,然后編譯到你自己的程序中,就可以實現并行,實現將任務分配到你的mobile設備上,實現power control各個CPU或者GPU的frequency。它是在用戶層的。用戶層可以來control power,這個還是蠻powerful的一個工具。因為,多數來講,要想控制功耗,很多只能從系統層,這個工具在develop.qualcomm.com/ software/symphony-system-manager-sdk可以下載,里面有很詳細的use guide,還有Sample Code。

        同時李娟女士又根據具體的案例進行相關驍龍Symphony的許多優化技巧及介紹

        在這三場活動中,Qualcomm不僅為開發者帶來了真真正正的干貨分享,也帶來了精美的Dragonboard 410C開發板贈送給與會者!

        移動端APP的圖形圖像開發不斷影響著,技術產業的革新與發展,而與此同時Qualcomm也愿與我們的開發者們,共同前行,一起創造美好的未來!

        如您想了解更多本次公開課的細節及詳細資料請點擊這里下載,或點擊這里觀看回顧視頻



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 萨嘎县| 涡阳县| 建平县| 丹寨县| 沁阳市| 当涂县| 潼关县| 老河口市| 东海县| 茂名市| 湘阴县| 天峨县| 麻栗坡县| 乌什县| 扶风县| 锦屏县| 桂东县| 康定县| 金阳县| 武夷山市| 丹阳市| 文安县| 鹿泉市| 苍溪县| 封丘县| 涿州市| 柞水县| 霍林郭勒市| 东阿县| 民勤县| 望江县| 晴隆县| 响水县| 曲靖市| 中超| 依兰县| 鹰潭市| 济南市| 揭东县| 台江县| 大英县|