色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用GPU渲染模式分析工具進(jìn)行分析

jf_78858299 ? 來源:北洋洋洋 ? 作者:北洋 ? 2023-02-09 16:47 ? 次閱讀
  • 每個豎條都是一次VSync的時間16.6ms,如果豎條寬度變寬且透明則代表超出16.6ms繪制的幀
  • 每個Vsync信號來臨前都會做工作(Choreographer中的postFrameCallback函數(shù)),按照順序依次處理: 「INPUT 輸入處理」「Animation動畫處理」「Traversal 最終會調(diào)用到perfor的measure,layout,draw方法」
  • 每個豎條中的不同顏色代表的上面每個步驟的處理時間

顏色區(qū)分

圖片

image.png

從下到上說明

INPUT 輸入處理

表示應(yīng)用執(zhí)行輸入事件回調(diào)中的代碼所花的時間。如果此區(qū)段很大,表示應(yīng)用花太多時間處理用戶輸入。不妨考慮將此類處理任務(wù)分流到其他線程。

建議:

其實就是處理輸入事件開始到結(jié)束的時間,如果豎條中此顏色高度過高代表輸入事件應(yīng)放到其他線程去做

Animation動畫處理

表示評估運(yùn)行 「該幀的所有動畫程序所花的時間」 。如果此區(qū)段很大,表示您的應(yīng)用可能在使用性能欠佳的自定義動畫程序,或因更新屬性而導(dǎo)致一些意料之外的工作。

建議:

該幀內(nèi)運(yùn)行的動畫比較多

Measure,Layhout

表示在視圖層次結(jié)構(gòu)中 onLayout 和 onMeasure回調(diào)上所花的時間。大區(qū)段表示處理視圖層次結(jié)構(gòu)需要很長時間。

Measure用來確定View的寬高,當(dāng)View為ViewGroup的時候還需要遍歷子View,Layout在進(jìn)行遍歷擺放到正確的位置,當(dāng)View嵌套層級變多或者自定義View時復(fù)寫這兩個方法時也要考慮這種情況。

Draw

表示用于創(chuàng)建和更新視圖顯示列表的時間。如果豎條的此部分很高,表明可能有許多自定義視圖繪制,或 onDraw 方法執(zhí)行的工作很多。

上篇文章 Vsync信號和View繪制流程的關(guān)系中說到:draw方法其實并沒有進(jìn)行真正的繪制,而是把繪制的內(nèi)容放入到了DisplayList中接著同步到RenderThread中。放入到DisplayList的命令其實就是對canvas的操作轉(zhuǎn)換而來的,該列表命令過多有兩種情況:1.可用的渲染數(shù)據(jù)失效。2.canvas的操作過多

將對Canvas的操作轉(zhuǎn)換成Bitmap同步至GPU

表示將位圖信息上傳到 GPU 所花的時間。大區(qū)段表示應(yīng)用花費(fèi)大量的時間加載大量圖形。

draw方法調(diào)用完成后,會進(jìn)行釋放這塊內(nèi)存區(qū)域并交給RenderThread去處理渲染數(shù)據(jù)。(釋放的操作在native層對應(yīng)的處理是把這塊內(nèi)存區(qū)域變成一個Bitmap交由RenderThread去渲染) 「幀的所有資源都必須位于 GPU 內(nèi)存中才能用來繪制幀」 ,因此需要上傳到GPU中緩存起來

要減小該值,可以采用以下技巧:

  • 確保位圖的分辨率不會比位圖的顯示尺寸大很多。應(yīng)避免將 1024x1024 的圖片顯示為 48x48 的圖片。
  • 利用 prepareToDraw() 在下一個同步階段之前異步預(yù)上傳位圖。

RenderThread進(jìn)行調(diào)用Opengl渲染

這個顯示列表就是DisplayList

表示 Android 的 2D 渲染程序向 OpenGL 發(fā)出繪制和重新繪制顯示列表的命令所花的時間。此豎條的高度與執(zhí)行每個顯示列表所花的時間的總和成正比。顯示列表越多,紅色豎條就越高。

發(fā)出將顯示列表繪制到屏幕上所需的全部命令所需的時間

RenderThread會執(zhí)行一個DrawFrameTask的Task,里面核心方法是DrawFrame。通過OpenGl和一些庫將渲染數(shù)據(jù)通知給SurefaceFliger去做圖層合成。將渲染數(shù)據(jù)放入到阻塞隊列中。

這個和上面的要區(qū)分開,官方文檔我沒看太明白,我以我的理解闡述一下吧:

繪制的耗時不代表對canvas的操作復(fù)雜,可能僅僅是邏輯處理,但是調(diào)用OpenGl渲染反映的是對canvas的操作復(fù)雜,所以一個是說OnDraw復(fù)雜,一個是說對canvas操作的復(fù)雜,在加上其實Android會進(jìn)行緩存。

在某些情況下,滾動、轉(zhuǎn)換或動畫會要求系統(tǒng)重新發(fā)送顯示列表,但不必實際重新構(gòu)建它(即重新捕獲繪制命令)。因此,您可能會看到“發(fā)出命令”條較高,但“繪制命令”條并不高。

交換緩沖區(qū)

表示 CPU 等待 GPU 完成其工作的時間。如果此豎條升高,表示應(yīng)用在 GPU 上執(zhí)行太多工作。

當(dāng) Android 將其所有顯示列表提交給 GPU 后,系統(tǒng)會發(fā)出最后一條命令,告訴圖形驅(qū)動程序它已完成當(dāng)前幀的處理。此時,驅(qū)動程序即可將更新后的圖像顯示到屏幕上。

GPU提交數(shù)據(jù)給SuraceFliger讓其顯示,接著CPU在吧數(shù)據(jù)給到GPU進(jìn)行處理,這個區(qū)間就是CPU給到GPU的時間

最后給出官方的解析:

如果 CPU 發(fā)出命令的速度快于 GPU 處理命令的速度,這兩個處理器之間的通信隊列就會被占滿。出現(xiàn)這種情況時,CPU 會阻塞并等待,直到隊列中有位置來放置下一個命令。這種隊列占滿狀態(tài)通常出現(xiàn)在“交換緩沖區(qū)”階段,因為此時已提交了整個幀的命令。緩解此問題的關(guān)鍵是降低 GPU 工作的復(fù)雜度

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • gpu
    gpu
    +關(guān)注

    關(guān)注

    28

    文章

    4900

    瀏覽量

    130559
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4366

    瀏覽量

    64034
  • 渲染
    +關(guān)注

    關(guān)注

    0

    文章

    75

    瀏覽量

    11105
收藏 0人收藏

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    鴻蒙開發(fā)-DevEco Studio Profiler工具進(jìn)行幀率分析

    Frame Profiler概述 DevEco Studio內(nèi)置Profiler分析調(diào)優(yōu)工具,其中Frame分析調(diào)優(yōu)功能,用于錄制GPU數(shù)據(jù)信息,錄制完成展開之后的子泳道對應(yīng)錄制過程中
    發(fā)表于 01-16 19:34

    賽昉科技VisionFiv2上的GPU渲染測試,平均60幀每秒,非常絲滑

    gpu渲染
    xusiwei1236
    發(fā)布于 :2023年12月24日 21:23:11

    使用Trepn Profiler工具分析Dragonboard410c的功耗和性能

    性能圖可以通過圖表顯示,cpu使用情況監(jiān)控配置則可以通過列表顯示等,所有配置都可以通過懸浮疊加顯示。除了這預(yù)設(shè)的六個配置,還可以進(jìn)入高級模式高級模式中,可以對系統(tǒng)性能進(jìn)行分析監(jiān)控,也可
    發(fā)表于 09-25 16:09

    基于OpenHarmony的Graphic標(biāo)準(zhǔn)子系統(tǒng)能力分析

        說明:GPU渲染時,獲取buffer沒有經(jīng)過render service server,而是在client端用skia完成,在用egl做完顯示窗口的初始化動作后,開始繪制圖像。  源碼分析  啟動
    發(fā)表于 03-18 13:45

    基于磁貼的GPU架構(gòu)優(yōu)缺點(diǎn)

    本指南介紹了基于磁貼的GPU架構(gòu)的優(yōu)缺點(diǎn)。它還將ARM馬里基于瓷磚的GPU架構(gòu)設(shè)計與臺式PC或控制臺中常見的更傳統(tǒng)的即時模式GPU進(jìn)行了比較
    發(fā)表于 08-02 12:54

    Mali GPU性能分析工具

    本文檔描述了馬里GPU性能分析工具2.2版中的已知勘誤表。 這是一個貫穿整個產(chǎn)品生命周期的工作文檔,因此,隨著新信息的發(fā)現(xiàn),其內(nèi)容可能會被修改。 本文中包含的信息是ARM有限公司的財產(chǎn),對錯誤或遺漏
    發(fā)表于 09-05 07:08

    什么是強(qiáng)制gpu渲染_強(qiáng)制渲染gpu有什么用

    本文主要介紹了gpu的定義、gpu工作原理、gpu功能作用及手機(jī)的強(qiáng)制進(jìn)行GPU渲染的詳細(xì)解釋,
    發(fā)表于 01-05 17:13 ?8114次閱讀

    手機(jī)要不要強(qiáng)制gpu渲染_強(qiáng)制gpu渲染能省電嗎_長期開著強(qiáng)制gpu渲染影響及利弊分析

    強(qiáng)制進(jìn)行GPU渲染會充分利用手機(jī)的GPU,提高手機(jī)運(yùn)行以及一些應(yīng)用運(yùn)行的流暢度,但是也是提高手機(jī)的功耗。因此我們在沒有一些特殊需求(如:玩游戲、看電影等)的時候,建議還是謹(jǐn)慎選擇,當(dāng)然
    發(fā)表于 01-08 09:54 ?5.7w次閱讀

    GPU原理 GPU渲染流程

    GPU渲染流水線,是硬件真正體現(xiàn)渲染概念的操作過程,也是最終將圖元畫到2D屏幕上的階段。GPU管線涵蓋了渲染流程的幾何階段和光柵化階段,但對
    發(fā)表于 04-27 11:33 ?9750次閱讀
    <b class='flag-5'>GPU</b>原理 <b class='flag-5'>GPU</b><b class='flag-5'>渲染</b>流程

    GPU渲染過程的幾個階段

    GPU渲染流水線的主要任務(wù)是完成3D模型到圖像的渲染工作。常用的圖形學(xué)API編程模型中的渲染過程被分為幾個可以并行處理的階段,分別由GPU
    的頭像 發(fā)表于 02-02 11:38 ?9476次閱讀
    <b class='flag-5'>GPU</b><b class='flag-5'>渲染</b>過程的幾個階段

    一文詳解CPU渲染GPU渲染之間的優(yōu)劣

    CPU 渲染利用計算機(jī)的 CPU 來執(zhí)行場景并將其渲染到接近完美。這也是執(zhí)行渲染的更傳統(tǒng)方式。然而,隨著 GPU 的出現(xiàn),基于 GPU
    的頭像 發(fā)表于 03-08 14:50 ?2901次閱讀

    CPU渲染GPU渲染優(yōu)劣分析

    使用計算機(jī)進(jìn)行渲染時,有兩種流行的系統(tǒng):基于中央處理單元(CPU)或基于圖形處理單元(GPU)。CPU渲染利用計算機(jī)的CPU來執(zhí)行場景并將其渲染
    的頭像 發(fā)表于 05-23 08:27 ?1051次閱讀
    CPU<b class='flag-5'>渲染</b>和<b class='flag-5'>GPU</b><b class='flag-5'>渲染</b>優(yōu)劣<b class='flag-5'>分析</b>

    電動工具的失效模式分析

    常見的失效模式分析
    發(fā)表于 12-30 14:13 ?0次下載

    GPU渲染才是大勢所趨?CPU渲染GPU渲染的現(xiàn)狀與未來

    在3D建模和渲染領(lǐng)域,隨著技術(shù)的發(fā)展,CPU渲染GPU渲染這兩種方法逐漸呈現(xiàn)出各自獨(dú)特的優(yōu)勢,并且在不同的應(yīng)用場景中各有側(cè)重。盡管當(dāng)前我們處在一個CPU
    的頭像 發(fā)表于 02-06 11:04 ?478次閱讀
    <b class='flag-5'>GPU</b><b class='flag-5'>渲染</b>才是大勢所趨?CPU<b class='flag-5'>渲染</b>與<b class='flag-5'>GPU</b><b class='flag-5'>渲染</b>的現(xiàn)狀與未來

    CPU渲染GPU渲染、XPU渲染詳細(xì)對比:哪個渲染最快,哪個效果最好?

    動畫渲染動畫3D渲染技術(shù)需要應(yīng)對復(fù)雜的計算任務(wù)和精細(xì)的圖像處理,作為渲染技術(shù)人員,選擇合適的渲染模式,會直接影響制作效率和成品質(zhì)量。在主流的
    的頭像 發(fā)表于 04-15 09:28 ?228次閱讀
    CPU<b class='flag-5'>渲染</b>、<b class='flag-5'>GPU</b><b class='flag-5'>渲染</b>、XPU<b class='flag-5'>渲染</b>詳細(xì)對比:哪個<b class='flag-5'>渲染</b>最快,哪個效果最好?
    主站蜘蛛池模板: 啦啦啦 中文 中国 免费 高清在线 | 高清日本片免费观看 | 97成人碰碰在线人妻少妇 | 亚洲国产精品一区二区动图 | 激情男女高潮射精AV免费 | 亚洲国产成人爱AV在线播放丿 | 天美传媒在线完整免费观看网站 | 亚洲一区免费看 | 欧洲xxxxx| 99精品亚洲 | 久久这里只精品国产99re66 | 99久久免费热在线精品 | 一级做a爰片久久毛片免费 一级做a爰片久久毛片潮喷动漫 | 美女被爆插 | 第四色播日韩AV第一页 | 国产乱码一区二区三区 | 久久国产综合精品欧美 | 99re久久热在线播放快 | 在线观看国产区 | 亚洲偷偷自拍免费视频在线 | 欧美一区二区三区免费播放 | 视频一区国产第一页 | 老师湿乎乎两半嫩 | 成人a毛片久久免费播放 | 无码AV精品久久一区二区免费 | 竹菊精品久久久久久久99蜜桃 | 金瓶梅 快播 | 无码区国产区在线播放 | 国产特级毛片AAAAAAA高清 | 国产精品成人久久久久A伋 国产精品成人观看视频免费 | 美女被黑人巨大进入 | 亚洲 欧美 中文字幕 在线 | 大香伊人中文字幕精品 | 日韩中文欧美在线视频 | 免费视频精品38 | 亚洲精品婷婷无码成人A片在线 | 岛国片免费看 | 含羞草国产亚洲精品岁国产精品 | 亚洲一区免费在线观看 | 国产精品69人妻无码久久久 | 美国CERANETWORK超清 |

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學(xué)習(xí)
    • 獲取您個性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品