标题:
使用streamline快速构建Mali GPU性能分析环境
[打印本页]
作者:
look_w
时间:
2018-1-24 20:38
标题:
使用streamline快速构建Mali GPU性能分析环境
1. Streamline
介绍
Streamline
是
ARM DS-5
工具中十分重要的性能分析工具,既支持
CPU
的性能分析,又支持
GPU
的性能分析。
Streamline
以丰富的图形化界面为用户提供
Timeline
,
Call Paths
,
Function
,
Code
,
Log
等
5种
视图,简单、直观、易用。
Streamline版本和ARM DS-5工具一起发布,最新的版本为v5.24,下载地址请参阅 [0],
关于
streamline
的详细介绍,请参阅
[1]。首先
让我们一起了解一下
streamline
的实现机制。
2. Streamline
实现概述
从架构上讲,可以把
Streamline
分为
Host
端和
target
端。在
Host
端(
PC
端)运行
streamline
的
GUI
,在
target
端运行一个代理程序,我们称之为
Gator
。
Host
和
Gator
两端遵循
streamline
定义的协议,称为
Target-Host Protocol (
该协议基于
TCP/IP)
。目前
Gator
实现有两种形式,一种称为
user space gator
,即运行在用户态的一个应用程序
gator daemon
,另一种形式需要
gator driver
的支持,即用户态的
gator daemon
和内核态的
gator driver
协同工作,两者都需要
target
上运行
Linux Kernel
,支持
perf
接口。那么如果要对
GPU
进行性能分析,需要使用第二种形式,即使用
Gator Driver
,同时需要
Mali DDK Driver
的支持。下图是Target上运行的Gator的工作机制。
Gator
工作原理
3.
准备工作
目前,要使用
streamline
对
Mali GPU
进行性能分析,需要准备
Gator daemon
和
Gator driver
。根据实际运行的平台(
Linux
或者
Android
)进行对应的编译工作,生成相应的
binary
。
Gator Daemon
的编译,请参阅
[2]
Gator Driver
的编译,请参阅
[3]
Mali Driver
的编译,请参阅相应
Mali GPU
的
Driver Development Kit (DDK)
文档
注意:建议将
Mali Driver
编译进内核,原因有两点:
新版本的
android
有可能不让加载模块
有效避免
Linux kernel 3.15
版本和之后的版本中关于
trace point
的问题
验证
gator driver
是否
build
成功
ls -l /dev/gator/events/ARM_Mali*
该命令应该列出多个以
”ARM_Mali_”
开头的
GPU counter
。
4.
读取
GPU Counter
打开
counter configuration:
选取感兴趣的
Counter:
供选择的
GPU counter
(一)
供选择的
GPU counter
(二)
点击
”save”,
开始
“
capture
”:
点击
“
Stop Capture
”停止数据捕获
停止
capture
之后,
streamline
会自动分析抓到的数据,显示抓取的结果:
Timeline
关于
GPU counter
的视图
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0