INSTRUMENTS调试工具的使用(五十四) —— 分析模板和工具之GPU Driver工具(二十一)

版本记录

版本号 时间
V1.0 2018.06.20

前言

我们在做app的时候,不是做完功能就结束了,很多时候是需要进行检查和优化的,而xcode自带了一个很好的检查工具,可以检测内存泄漏。还可以查看哪一个方法比较耗时。还可以检测离屏渲染等等,随后的几篇我们就说一下这个工具的使用。感兴趣的可以看这几篇。
1.INSTRUMENTS调试工具的使用(一)
2.INSTRUMENTS调试工具的使用(二)
3.INSTRUMENTS调试工具的使用(三)
4.INSTRUMENTS调试工具的使用(四)
5.INSTRUMENTS调试工具的使用(五)
6.INSTRUMENTS调试工具的使用(六)
7.INSTRUMENTS调试工具的使用(七)
8.INSTRUMENTS调试工具的使用(八)
9.INSTRUMENTS调试工具的使用(九)
10. INSTRUMENTS调试工具的使用(十)
11. INSTRUMENTS调试工具的使用(十一) —— 简介(一)
12. INSTRUMENTS调试工具的使用(十二) —— 通常任务之启动Instruments(一)
13. INSTRUMENTS调试工具的使用(十三) —— 通常任务之简单了解Instruments(二)
14. INSTRUMENTS调试工具的使用(十四) —— 通常任务之创建、保存和打开跟踪文档(三)
15. INSTRUMENTS调试工具的使用(十五) —— 通常任务之指定目标应用和设备(四)
16. INSTRUMENTS调试工具的使用(十六) —— 通常任务之访问和使用个别仪器(五)
17. INSTRUMENTS调试工具的使用(十七) —— 通常任务之记录、暂停和停止跟踪(六)
18. INSTRUMENTS调试工具的使用(十八) —— 导航收集的数据之关于数据分析(一)
19. INSTRUMENTS调试工具的使用(十九) —— 导航收集的数据之导航时间轴窗格(二)
20. INSTRUMENTS调试工具的使用(二十) —— 导航收集的数据之导航详细面板(三)
21. INSTRUMENTS调试工具的使用(二十一) —— 导航收集的数据之将数据映射到源代码(四)
22. INSTRUMENTS调试工具的使用(二十二) —— 导航收集的数据之查看您应用的源代码(五)
23. INSTRUMENTS调试工具的使用(二十三) —— 分析你App的性能之测量CPU使用情况(一)
24. INSTRUMENTS调试工具的使用(二十四) —— 分析你App的性能之测量图形性能(二)
25. INSTRUMENTS调试工具的使用(二十五) —— 分析你App的性能之监视网络和文件I / O(三)
26. INSTRUMENTS调试工具的使用(二十六) —— 分析你App的内存使用之关于内存分析(一)
27. INSTRUMENTS调试工具的使用(二十七) —— 分析你App的内存使用之检测内存使用(二)
28. INSTRUMENTS调试工具的使用(二十八) —— 分析你App的内存使用之找到废弃的内存(三)
29. INSTRUMENTS调试工具的使用(二十九) —— 分析你App的内存使用之找到内存泄露(四)
30. INSTRUMENTS调试工具的使用(三十) —— 分析你App的内存使用之找到僵尸对象(五)
31. INSTRUMENTS调试工具的使用(三十一) —— 分析你App的能源之测量能源影响(一)
32. INSTRUMENTS调试工具的使用(三十二) —— 高级任务之导出和导入跟踪数据(一)
33. INSTRUMENTS调试工具的使用(三十三) —— 高级任务之创建自定义Instruments(二)
34. INSTRUMENTS调试工具的使用(三十四) —— 分析模板和工具之分析模板(一)
35. INSTRUMENTS调试工具的使用(三十五) —— 分析模板和工具之Activity Monitor工具(二)
36. INSTRUMENTS调试工具的使用(三十六) —— 分析模板和工具之Allocations工具(三)
37. INSTRUMENTS调试工具的使用(三十七) —— 分析模板和工具之蓝牙开关日志工具(四)
38. INSTRUMENTS调试工具的使用(三十八) —— 分析模板和工具之Carbon Events工具(五)
39. INSTRUMENTS调试工具的使用(三十九) —— 分析模板和工具之Cocoa Events工具(六)
40. INSTRUMENTS调试工具的使用(四十) —— 分析模板和工具之Connections工具(七)
41. INSTRUMENTS调试工具的使用(四十一) —— 分析模板和工具之Core Animation工具(八)
42. INSTRUMENTS调试工具的使用(四十二) —— 分析模板和工具之Core Data Cache Misses工具(九)
43. INSTRUMENTS调试工具的使用(四十三) —— 分析模板和工具之Core Data Faults工具(十)
44. INSTRUMENTS调试工具的使用(四十四) —— 分析模板和工具之Core Data Fetches工具(十一)
45. INSTRUMENTS调试工具的使用(四十五) —— 分析模板和工具之Core Data Saves工具(十二)
46. INSTRUMENTS调试工具的使用(四十六) —— 分析模板和工具之Counters工具(十三)
47. INSTRUMENTS调试工具的使用(四十七) —— 分析模板和工具之CPU Activity Log工具(十四)
48. INSTRUMENTS调试工具的使用(四十八) —— 分析模板和工具之Directory I/O工具(十五)
49. INSTRUMENTS调试工具的使用(四十九) —— 分析模板和工具之Dispatch工具(十六)
50. INSTRUMENTS调试工具的使用(五十) —— 分析模板和工具之Display Brightness Log工具(十七)
51. INSTRUMENTS调试工具的使用(五十一) —— 分析模板和工具之Displayed Surfaces工具(十八)
52. INSTRUMENTS调试工具的使用(五十二) —— 分析模板和工具之Energy Usage Log工具(十九)
53. INSTRUMENTS调试工具的使用(五十三) —— 分析模板和工具之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 - 记录设置

instrument没有任何可配置的记录设置。


Display Settings - 显示设置

单击检查器窗格中的显示设置按钮以自定义以下显示设置。

1. Sampling Rate - 采样率

设置仪器记录信息的频率。 该滑块允许以1/10秒的增量从1/10秒到1秒进行采样。 文本字段允许其他1/10增量。 默认值是1/10秒

2. Track Display Settings - 跟踪显示设置

这些设置控制信息在时间线窗格中的显示方式

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工具,感兴趣的给个赞或者关注~~~~

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,386评论 6 479
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,939评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,851评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,953评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,971评论 5 369
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,784评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,126评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,765评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,148评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,744评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,858评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,479评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,080评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,053评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,278评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,245评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,590评论 2 343

推荐阅读更多精彩内容