> [Testing Display Performance](https://developer.android.com/intl/zh-cn/training/testing/performance.html#timing-dump)?
> [Speed up your app](http://blog.udinic.com/2015/09/15/speed-up-your-app?from=timeline&isappinstalled=0)
# GPU Monitor能做什么?
分析GPU的性能,實時查看繪制每一幀所花費的時間
# GPU Monitor使用準備
* root 手機
* 開發者選項中的Gpu profile開關打開
* Android Studio 1.4+
# GPU Monitor啟動
在Android Monitor中點擊GPU,就已經打開了該工具,這個時候你在所選App界面中操作的話,面板中就會實時顯示繪制數據:

# GPU Monitor的4類數據
5.1之前的數據只有藍,紅,黃三種顏色,5.1加入了紫色數據
## Draw(藍)
表示View.onDraw()方法的耗時,這部分主要是建立DisplayList對象用的,這些對象將會被轉化成OpenGL命令,GPU只能讀懂OpenGL命令。?
如果這個地方耗時比較大,說明視圖比較復雜。?
藍色區域代表的時間,是創建DisplayList對象的時間。
## Prepare(紫色)
5.1以后將UI Thread線程所做的事分成了2個線程來做:UI Thread和Render Thread。新加的Render Thread線程會將Draw過程生成的DisplayList對象轉化成為OpenGL的命令,然后發送給GPU,這個時候UI Thread可以空閑下來處理下一個frame的數據。如果傳送的資源過多的話這個地方耗時就比較大。
紫色區域代表的時間就是UI Thread傳送數據給Render Thread所用的時間。
## Process(紅)
紅色區域代表創建OpenGL命令的時間
## Execute(黃)
黃色區域代表發送OpenGL命令給GPU所用的時間