区块链技术博客
www.b2bchain.cn

使用Metal调试器查看GPU工作负载求职学习资料

本文介绍了使用Metal调试器查看GPU工作负载求职学习资料,有助于帮助完成毕业设计以及求职,是一篇很好的资料。

对技术面试,学习经验等有一些体会,在此分享。

Viewing Your GPU Workload with the Metal Debugger | Apple Developer Documentation

使用Xcode中的各种Metal工具逐步了解应用程序在GPU上的状态。

使用Metal调试工具详细查看与检查渲染管线中的每一步操作。

翻译术语表

概述

为了了解计算机如何运行你的app或调试问题,通常要使用调试器。传统的调试器是通过暂停一个单独的线程进行工作,但这对于Metal应用程序来说并不友好。Xcode通过其帧捕获工作流(frame capture workflow),专门为Metal提供了一个调试器。

要使用Metal调试器调试一个Metal程序,你要捕获一帧动画,并检查程序生成该帧的命令。

在本文,通过Xcode的Metal调试器运行Using a Render Pipeline to Render Primitives示例,以了解如何在运行时检查Metal应用程序。

在Xcode中启用Metal调试器

在渲染示例中,进入项目的build settings,更改Metal编译器选项,使调试信息包含着色器的源码。设置Debug状态的”Produce debugging information”为”Yes, include source code”。

使用Metal调试器查看GPU工作负载

发给客户的鹰隼程序不应包含调试信息,所以在Release状态设置为No。

捕获画面

Metal调试器与Xcode的Metal的帧捕获功能(frame capture feature)协同工作。要使用Metal调试器,首先你要使用以下步骤捕获一帧。

构建并运行你的项目。在Using a Render Pipeline to Render Primitives的示例中,应用程序会显示一个三角行。

使用Metal调试器查看GPU工作负载

在程序运行时,回到Xcode,然后点击调试工具栏上的相机图标:

使用Metal调试器查看GPU工作负载

检查绘制调用

Using a Render Pipeline to Render Primitives通过drawPrimitives:vertexStart:vertexCount:调用来绘制三角形。Xcode捕获该绘制调用以及在帧中进行的其他函数的调用,在Debug导航器中展示这些调用,如下所示。

使用Metal调试器查看GPU工作负载

如果绘制调用以错误的的颜色或屏幕位置进行渲染,你在捕获的帧中识别它,以获得更多关于原因的信息。

MyRenderEncoder组显示了Metal为创建三角形而执行的命令。Xcode记录了设置视口的调用、渲染管线状态、顶点函数的参数,最后还有一个绘制三角形的命令。点击绘制调用来选择它。

使用Metal调试器查看GPU工作负载

在主视图中,Xcode显示了绘制调用的细节,这些细节被分成几个类别——顶点、片元和附件。

使用Metal调试器查看GPU工作负载

每个都代表了绘制调用的一个阶段。更详细地分析这些阶段以找出问题的原因,如下所示。

在Geometry Viewer中检查顶点

顶点阶段显示对应程序图元(也称为网格或几何体)的顶点集合。要直观地检查这些数据是否存在任何问题,双击Geometry。

使用Metal调试器查看GPU工作负载

Xcode会在Geometry Viewer中渲染顶点阶段输出的线框。下面,Xcode在一个表格中列出了相同的数据。点击线框的一个顶点,Xcode就会在表格中高亮选中对应行。

使用Metal调试器查看GPU工作负载

通过这种方式检查顶点信息,可以确保视觉上和数值上,顶点输出看起来是正确的。

Viewing Your GPU Workload with the Metal Debugger | Apple Developer Documentation

使用Xcode中的各种Metal工具逐步了解应用程序在GPU上的状态。

使用Metal调试工具详细查看与检查渲染管线中的每一步操作。

翻译术语表

概述

为了了解计算机如何运行你的app或调试问题,通常要使用调试器。传统的调试器是通过暂停一个单独的线程进行工作,但这对于Metal应用程序来说并不友好。Xcode通过其帧捕获工作流(frame capture workflow),专门为Metal提供了一个调试器。

要使用Metal调试器调试一个Metal程序,你要捕获一帧动画,并检查程序生成该帧的命令。

在本文,通过Xcode的Metal调试器运行Using a Render Pipeline to Render Primitives示例,以了解如何在运行时检查Metal应用程序。

在Xcode中启用Metal调试器

在渲染示例中,进入项目的build settings,更改Metal编译器选项,使调试信息包含着色器的源码。设置Debug状态的”Produce debugging information”为”Yes, include source code”。

使用Metal调试器查看GPU工作负载

发给客户的鹰隼程序不应包含调试信息,所以在Release状态设置为No。

捕获画面

Metal调试器与Xcode的Metal的帧捕获功能(frame capture feature)协同工作。要使用Metal调试器,首先你要使用以下步骤捕获一帧。

构建并运行你的项目。在Using a Render Pipeline to Render Primitives的示例中,应用程序会显示一个三角行。

使用Metal调试器查看GPU工作负载

在程序运行时,回到Xcode,然后点击调试工具栏上的相机图标:

使用Metal调试器查看GPU工作负载

检查绘制调用

Using a Render Pipeline to Render Primitives通过drawPrimitives:vertexStart:vertexCount:调用来绘制三角形。Xcode捕获该绘制调用以及在帧中进行的其他函数的调用,在Debug导航器中展示这些调用,如下所示。

使用Metal调试器查看GPU工作负载

如果绘制调用以错误的的颜色或屏幕位置进行渲染,你在捕获的帧中识别它,以获得更多关于原因的信息。

MyRenderEncoder组显示了Metal为创建三角形而执行的命令。Xcode记录了设置视口的调用、渲染管线状态、顶点函数的参数,最后还有一个绘制三角形的命令。点击绘制调用来选择它。

使用Metal调试器查看GPU工作负载

在主视图中,Xcode显示了绘制调用的细节,这些细节被分成几个类别——顶点、片元和附件。

使用Metal调试器查看GPU工作负载

每个都代表了绘制调用的一个阶段。更详细地分析这些阶段以找出问题的原因,如下所示。

在Geometry Viewer中检查顶点

顶点阶段显示对应程序图元(也称为网格或几何体)的顶点集合。要直观地检查这些数据是否存在任何问题,双击Geometry。

使用Metal调试器查看GPU工作负载

Xcode会在Geometry Viewer中渲染顶点阶段输出的线框。下面,Xcode在一个表格中列出了相同的数据。点击线框的一个顶点,Xcode就会在表格中高亮选中对应行。

使用Metal调试器查看GPU工作负载

通过这种方式检查顶点信息,可以确保视觉上和数值上,顶点输出看起来是正确的。

Viewing Your GPU Workload with the Metal Debugger | Apple Developer Documentation

使用Xcode中的各种Metal工具逐步了解应用程序在GPU上的状态。

使用Metal调试工具详细查看与检查渲染管线中的每一步操作。

翻译术语表

概述

为了了解计算机如何运行你的app或调试问题,通常要使用调试器。传统的调试器是通过暂停一个单独的线程进行工作,但这对于Metal应用程序来说并不友好。Xcode通过其帧捕获工作流(frame capture workflow),专门为Metal提供了一个调试器。

要使用Metal调试器调试一个Metal程序,你要捕获一帧动画,并检查程序生成该帧的命令。

在本文,通过Xcode的Metal调试器运行Using a Render Pipeline to Render Primitives示例,以了解如何在运行时检查Metal应用程序。

在Xcode中启用Metal调试器

在渲染示例中,进入项目的build settings,更改Metal编译器选项,使调试信息包含着色器的源码。设置Debug状态的”Produce debugging information”为”Yes, include source code”。

使用Metal调试器查看GPU工作负载

发给客户的鹰隼程序不应包含调试信息,所以在Release状态设置为No。

捕获画面

Metal调试器与Xcode的Metal的帧捕获功能(frame capture feature)协同工作。要使用Metal调试器,首先你要使用以下步骤捕获一帧。

构建并运行你的项目。在Using a Render Pipeline to Render Primitives的示例中,应用程序会显示一个三角行。

使用Metal调试器查看GPU工作负载

在程序运行时,回到Xcode,然后点击调试工具栏上的相机图标:

使用Metal调试器查看GPU工作负载

检查绘制调用

Using a Render Pipeline to Render Primitives通过drawPrimitives:vertexStart:vertexCount:调用来绘制三角形。Xcode捕获该绘制调用以及在帧中进行的其他函数的调用,在Debug导航器中展示这些调用,如下所示。

使用Metal调试器查看GPU工作负载

如果绘制调用以错误的的颜色或屏幕位置进行渲染,你在捕获的帧中识别它,以获得更多关于原因的信息。

MyRenderEncoder组显示了Metal为创建三角形而执行的命令。Xcode记录了设置视口的调用、渲染管线状态、顶点函数的参数,最后还有一个绘制三角形的命令。点击绘制调用来选择它。

使用Metal调试器查看GPU工作负载

在主视图中,Xcode显示了绘制调用的细节,这些细节被分成几个类别——顶点、片元和附件。

使用Metal调试器查看GPU工作负载

每个都代表了绘制调用的一个阶段。更详细地分析这些阶段以找出问题的原因,如下所示。

在Geometry Viewer中检查顶点

顶点阶段显示对应程序图元(也称为网格或几何体)的顶点集合。要直观地检查这些数据是否存在任何问题,双击Geometry。

使用Metal调试器查看GPU工作负载

Xcode会在Geometry Viewer中渲染顶点阶段输出的线框。下面,Xcode在一个表格中列出了相同的数据。点击线框的一个顶点,Xcode就会在表格中高亮选中对应行。

使用Metal调试器查看GPU工作负载

通过这种方式检查顶点信息,可以确保视觉上和数值上,顶点输出看起来是正确的。

部分转自互联网,侵权删除联系

赞(0) 打赏
部分文章转自网络,侵权联系删除b2bchain区块链学习技术社区 » 使用Metal调试器查看GPU工作负载求职学习资料
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

b2b链

联系我们联系我们