版本記錄
版本號 | 時間 |
---|---|
V1.0 | 2018.06.20 |
前言
我們在做app的時候坠宴,不是做完功能就結(jié)束了蒋歌,很多時候是需要進行檢查和優(yōu)化的歧蕉,而xcode自帶了一個很好的檢查工具侧甫,可以檢測內(nèi)存泄漏珊佣。還可以查看哪一個方法比較耗時蹋宦。還可以檢測離屏渲染等等,隨后的幾篇我們就說一下這個工具的使用咒锻。感興趣的可以看這幾篇冷冗。
1.INSTRUMENTS調(diào)試工具的使用(一)
2.INSTRUMENTS調(diào)試工具的使用(二)
3.INSTRUMENTS調(diào)試工具的使用(三)
4.INSTRUMENTS調(diào)試工具的使用(四)
5.INSTRUMENTS調(diào)試工具的使用(五)
6.INSTRUMENTS調(diào)試工具的使用(六)
7.INSTRUMENTS調(diào)試工具的使用(七)
8.INSTRUMENTS調(diào)試工具的使用(八)
9.INSTRUMENTS調(diào)試工具的使用(九)
10. INSTRUMENTS調(diào)試工具的使用(十)
11. INSTRUMENTS調(diào)試工具的使用(十一) —— 簡介(一)
12. INSTRUMENTS調(diào)試工具的使用(十二) —— 通常任務(wù)之啟動Instruments(一)
13. INSTRUMENTS調(diào)試工具的使用(十三) —— 通常任務(wù)之簡單了解Instruments(二)
14. INSTRUMENTS調(diào)試工具的使用(十四) —— 通常任務(wù)之創(chuàng)建、保存和打開跟蹤文檔(三)
15. INSTRUMENTS調(diào)試工具的使用(十五) —— 通常任務(wù)之指定目標(biāo)應(yīng)用和設(shè)備(四)
16. INSTRUMENTS調(diào)試工具的使用(十六) —— 通常任務(wù)之訪問和使用個別儀器(五)
17. INSTRUMENTS調(diào)試工具的使用(十七) —— 通常任務(wù)之記錄惑艇、暫停和停止跟蹤(六)
18. INSTRUMENTS調(diào)試工具的使用(十八) —— 導(dǎo)航收集的數(shù)據(jù)之關(guān)于數(shù)據(jù)分析(一)
19. INSTRUMENTS調(diào)試工具的使用(十九) —— 導(dǎo)航收集的數(shù)據(jù)之導(dǎo)航時間軸窗格(二)
20. INSTRUMENTS調(diào)試工具的使用(二十) —— 導(dǎo)航收集的數(shù)據(jù)之導(dǎo)航詳細面板(三)
21. INSTRUMENTS調(diào)試工具的使用(二十一) —— 導(dǎo)航收集的數(shù)據(jù)之將數(shù)據(jù)映射到源代碼(四)
22. INSTRUMENTS調(diào)試工具的使用(二十二) —— 導(dǎo)航收集的數(shù)據(jù)之查看您應(yīng)用的源代碼(五)
23. INSTRUMENTS調(diào)試工具的使用(二十三) —— 分析你App的性能之測量CPU使用情況(一)
24. INSTRUMENTS調(diào)試工具的使用(二十四) —— 分析你App的性能之測量圖形性能(二)
25. INSTRUMENTS調(diào)試工具的使用(二十五) —— 分析你App的性能之監(jiān)視網(wǎng)絡(luò)和文件I / O(三)
26. INSTRUMENTS調(diào)試工具的使用(二十六) —— 分析你App的內(nèi)存使用之關(guān)于內(nèi)存分析(一)
27. INSTRUMENTS調(diào)試工具的使用(二十七) —— 分析你App的內(nèi)存使用之檢測內(nèi)存使用(二)
28. INSTRUMENTS調(diào)試工具的使用(二十八) —— 分析你App的內(nèi)存使用之找到廢棄的內(nèi)存(三)
29. INSTRUMENTS調(diào)試工具的使用(二十九) —— 分析你App的內(nèi)存使用之找到內(nèi)存泄露(四)
30. INSTRUMENTS調(diào)試工具的使用(三十) —— 分析你App的內(nèi)存使用之找到僵尸對象(五)
31. INSTRUMENTS調(diào)試工具的使用(三十一) —— 分析你App的能源之測量能源影響(一)
32. INSTRUMENTS調(diào)試工具的使用(三十二) —— 高級任務(wù)之導(dǎo)出和導(dǎo)入跟蹤數(shù)據(jù)(一)
33. INSTRUMENTS調(diào)試工具的使用(三十三) —— 高級任務(wù)之創(chuàng)建自定義Instruments(二)
34. INSTRUMENTS調(diào)試工具的使用(三十四) —— 分析模板和工具之分析模板(一)
35. INSTRUMENTS調(diào)試工具的使用(三十五) —— 分析模板和工具之Activity Monitor工具(二)
36. INSTRUMENTS調(diào)試工具的使用(三十六) —— 分析模板和工具之Allocations工具(三)
37. INSTRUMENTS調(diào)試工具的使用(三十七) —— 分析模板和工具之藍牙開關(guān)日志工具(四)
38. INSTRUMENTS調(diào)試工具的使用(三十八) —— 分析模板和工具之Carbon Events工具(五)
39. INSTRUMENTS調(diào)試工具的使用(三十九) —— 分析模板和工具之Cocoa Events工具(六)
40. INSTRUMENTS調(diào)試工具的使用(四十) —— 分析模板和工具之Connections工具(七)
41. INSTRUMENTS調(diào)試工具的使用(四十一) —— 分析模板和工具之Core Animation工具(八)
42. INSTRUMENTS調(diào)試工具的使用(四十二) —— 分析模板和工具之Core Data Cache Misses工具(九)
43. INSTRUMENTS調(diào)試工具的使用(四十三) —— 分析模板和工具之Core Data Faults工具(十)
44. INSTRUMENTS調(diào)試工具的使用(四十四) —— 分析模板和工具之Core Data Fetches工具(十一)
45. INSTRUMENTS調(diào)試工具的使用(四十五) —— 分析模板和工具之Core Data Saves工具(十二)
46. INSTRUMENTS調(diào)試工具的使用(四十六) —— 分析模板和工具之Counters工具(十三)
47. INSTRUMENTS調(diào)試工具的使用(四十七) —— 分析模板和工具之CPU Activity Log工具(十四)
48. INSTRUMENTS調(diào)試工具的使用(四十八) —— 分析模板和工具之Directory I/O工具(十五)
49. INSTRUMENTS調(diào)試工具的使用(四十九) —— 分析模板和工具之Dispatch工具(十六)
50. INSTRUMENTS調(diào)試工具的使用(五十) —— 分析模板和工具之Display Brightness Log工具(十七)
51. INSTRUMENTS調(diào)試工具的使用(五十一) —— 分析模板和工具之Displayed Surfaces工具(十八)
52. INSTRUMENTS調(diào)試工具的使用(五十二) —— 分析模板和工具之Energy Usage Log工具(十九)
53. INSTRUMENTS調(diào)試工具的使用(五十三) —— 分析模板和工具之GPS On/Off Log工具(二十)
Overview
Instrument Description | Supported Platforms | Related Profiling Templates |
---|---|---|
This instrument samples GPU driver statistics |
iOS蒿辙、OS X |
OpenGL ES Analysis Profiling Template |
Timeline Pane - 時間線窗格
時間軸窗格顯示基于工具Style配置的信息。
Record Settings - 記錄設(shè)置
本instrument
沒有任何可配置的記錄設(shè)置滨巴。
Display Settings - 顯示設(shè)置
單擊檢查器窗格中的顯示設(shè)置按鈕以自定義以下顯示設(shè)置思灌。
1. Sampling Rate - 采樣率
設(shè)置儀器記錄信息的頻率。 該滑塊允許以1/10秒的增量從1/10秒到1秒進行采樣兢卵。 文本字段允許其他1/10增量习瑰。 默認(rèn)值是1/10秒
2. Track Display Settings - 跟蹤顯示設(shè)置
這些設(shè)置控制信息在時間線窗格中的顯示方式
Setting | Description | Options |
---|---|---|
Style |
How information is presented |
Block Graph: Information is presented as a horizontal line until the information changes. The area under the line is filled by the statistic’s designated color |
Detail Pane Columns - 詳細面板列
1. Table Detail Type - 列表詳細類型
以下table列在詳細信息窗格中可用。
Column name | Definition |
---|---|
# |
The sequence number |
Buffer Flip Count |
The total number of buffer slips that the GPU performs |
Buffer Swap Count |
The total number of buffer swaps that the GPU performs |
Client GL Wait Time |
The amount of time, in nanoseconds, that the CPU waits while the client OpenGL driver waits for a hardware time stamp to arrive |
Command 2D Bytes Per Sampl |
The number of bytes sent using 2D graphics contexts during the sample period |
Command Bytes Per Sample |
The number of bytes sent using all graphics contexts during the sample period |
Command GL Bytes Per Sample |
The number of bytes sent using OpenGL contexts during the sample period |
Command Video Bytes Per Sample |
The number of bytes sent using video contexts during the sample period |
Context 2D Count |
The total number of 2D contexts in use on the GPU |
Context 2D Switch Count |
The total number of context switches to a 2D context on the GPU |
Context CL Switch Count |
The total number of switches to an OpenCL context on the GPU |
Context CL Count |
The total number of OpenCL contexts in use on the GPU |
Context GL Count |
The total number of OpenGL contexts in use on the GPU |
Context GL Switch Count |
The total number of switches to an OpenGL context on the GPU |
Context Video Count |
The total number of video contexts in use on the GPU |
Context Video Switch Count |
The total number of switches to a video context on the GPU |
Data Buffer Count |
The total number of extra OpenGL data buffers that have been allocated |
Data Bytes Per Sample |
The total number of bytes used during the sample period |
Finish All 2D Wait Time |
The amount of time, in nanoseconds, that the CPU waits for all GPU operations to complete and then to be idle |
Finish 2D Wait Time |
The amount of time, in nanoseconds, that the CPU waits for all 2D commands issued on a single context to complete |
Finish CL Wait Time |
The amount of time, in nanoseconds, that the CPU waits for all OpenCL commands issued on a single context to complete |
Finish GL Wait Time |
The amount of time, in nanoseconds, that the CPU waits for all OpenGL commands issued on a single context to complete |
Finish Video Wait Time |
The amount of time, in nanoseconds, that the CPU waits for all video commands issued on a single context to complete |
Free Command Buffer 2D Wait Time |
The amount of time, in nanoseconds, that the CPU waits for a 2D command buffer to become available |
Free Command Buffer CL Wait Time |
The amount of time, in nanoseconds, that the CPU waits for an OpenCL command buffer to become available |
Free Command Buffer GLWait Time |
The amount of time, in nanoseconds, that the CPU waits for an OpenGL command buffer to become available |
Free Command Buffer Video Wait Time |
The amount of time, in nanoseconds, that the CPU waits for a video command buffer to become available |
Free Context Buffer 2D Wait Time |
The amount of time, in nanoseconds, that the CPU waits for a 2D context-switching buffer to become available |
Free Context Buffer CL Wait Time |
The amount of time, in nanoseconds, that the CPU waits for an OpenCL context-switching buffer to become available |
Free Context Buffer GL Wait Time |
The amount of time, in nanoseconds, that the CPU waits for an OpenGL context-switching buffer to become available |
Free Context Buffer Video Wait Time |
The amount of time, in nanoseconds, that the CPU waits for a video context-switching buffer to become available |
Free Data Buffer GL Wait Time |
The amount of time, in nanoseconds, that the CPU waits for an OpenGL data buffer to become available |
Free Data Buffer Wait Time |
The amount of time, in nanoseconds, that the CPU waits for a data buffer to become available |
Free Surface Backing Wait Time |
The amount of time, in nanoseconds, that the CPU waits for the back buffer to become available |
Free Surface Swap Buffer Wait Time |
The amount of time, in nanoseconds, that the CPU waits for a surface buffer to become available |
Gart Cache Bytes |
The minimum amount of data, in bytes, that a driver tries to keep mapped into an AGP graphics address remapping table |
Gart Free Bytes |
The total number of free bytes in the AGP graphics address remapping table |
Gart Map In Bytes Per Sample |
The number of bytes that are mapped into the AGP graphics address remapping table during the sample period |
Gart Map Out Bytes Per Sample |
The number of bytes that are unmapped from the AGP graphics address remapping table during the sample period |
Gart Size Bytes |
The total size, in bytes, of the AGP graphics address remapping table |
Gart Used Bytes |
The total number of bytes mapped into the AGP graphics address remapping table |
Hardware Submit Wait Time |
The amount of time, in nanoseconds, that the CPU waits before being able to submit a new batch of commands to the GPU |
Hardware Wait Time |
The amount of time, in nanoseconds, that the CPU stalled while waiting on the GPU for any reason |
IO Surface Page In Bytes Per Sample |
The number of bytes that are mapped to surface pages during the sample period |
IO Surface Page Out Bytes Per Sample |
The number of bytes that are unmapped from surface pages during the sample period |
Orphaned Non Reusable Sys Memory Bytes |
|
Orphaned Non Reusable Sys Memory Count |
|
Orphaned Non Reusable Vid Memory Bytes |
|
Orphaned Non Reusable Vid Memory Count |
|
Orphaned Reusable Sys Memory Bytes |
|
Orphaned Reusable Sys Memory Count |
|
Orphaned Reusable Sys Memory Hit Rate |
|
Orphaned Reusable Vid Memory Bytes |
|
Orphaned Reusable Vid Memory Count |
|
Orphaned Reusable Vid Memory Hit Rate |
|
Recovery Count |
The total number of recovery actions performed |
Remove From GART Wait Time |
The amount of time, in nanoseconds, the CPU waits for the GPU to finish an operation on a buffer that needs to be removed from the graphics address remapping table |
Surface Copy In Wait Time |
The amount of time, in nanoseconds, that the CPU waits for the GPU to become idle so that the CPU can page a surface in to VRAM |
Surface Copy Out Wait Time |
The amount of time, in nanoseconds, that the CPU waits for the GPU to become idle so that the CPU can page a surface out of VRAM |
Surface Count |
The total number of surfaces allocated by the GPU |
Surface Page In Bytes Per Sample |
The number of bytes transferred due to surface page-on transactions during the sample period |
Surface Page Out Bytes Per Sample |
The number of bytes transferred to surface page-off transactions during the sample period |
Surface Read Lock Idle Wait Time |
The amount of time, in nanoseconds, that the CPU waits for the GPU to become idle so that the CPU may read from a surface |
Surface Set Shape Idle Wait Time |
The amount of time, in nanoseconds, that the CPU waits for the GPU to become idle so that the CPU may change the dimensions of a surface |
Surface Write Lock Idle Wait Time |
The amount of time, in nanoseconds, that the CPU waits for the GPU to become idle so that the CPU may write to a surface |
Swap Bytes Per Sample |
The number of bytes sent by the swap command during the sample period |
Swap Complete 2D Wait Time |
The amount of time, in nanoseconds, that the CPU waits for a previously issued 2D buffer swap to complete |
Swap Complete GL Wait Time |
The amount of time, in nanoseconds, that the CPU waits for a previously issued OpenGL buffer swap to complete |
Swap Complete Video Wait Time |
The amount of time, in nanoseconds, that the CPU waits for a previously issued video buffer swap to complete |
Texture Count |
The total number of kernel textures allocated by the GPU |
Texture Page In Bytes Per Sample |
The number of bytes transferred for texture page-ins during the sample. Does not include textures mapped using AGP |
Texture Page In Wait Time |
The amount of time, in nanoseconds, that the CPU waits for a texture upload command to be completed by the GPU |
Texture Page Out Bytes Per Sample |
The number of bytes transferred for texture page-off operations during the sample period |
Texture Page Out Wait Time |
The amount of time, in nanoseconds, that the CPU waits for the GPU to finish an activity |
Texture Wait Time |
The amount of time, in nanoseconds, that the CPU waits for a texture upload to complete before the buffer can be modified |
Volatile Surface Count |
The total number of volatile surfaces allocated by the GPU |
后記
本篇主要講述了
GPU Driver
工具秽荤,感興趣的給個贊或者關(guān)注~~~~