DS-5 Streamline
目录
- DS-5 Streamline
- 1. Introduction
- 2. DS-5 下载安装与license设定
- 2.1 DS-5的下载路径
- 2.2 license设定
- 3. Rebuild kernel and kernel modules
- 4. Build gator driver and get gator daemon
- 5. DS-5 Live Preview
- 6. DS-5 Local Capture
- 7. 使用DS-5遇到的问题及解法办法
DS-5 Streamline
最近在使用DS5分析一些CPU loading的相关事情,整理一下DS5这个tool的用法,以及使用过程中遇到的一些问题及处理办法
1. Introduction
- DS-5 (即ARM Development Studio 5) ,是一款针对 ARM 支持的 Linux 和 Android 平台的全面的端到端软件开发工具套件。ARM DS-5 提供具有跟踪、系统范围性能分析器、实时系统模拟器和编译器的应用程序和内核空间调试器。这些功能包括在定制、功能强大且用户友好的基于 Eclipse 的 IDE 中。借助于该工具套件,可以很轻松地为 ARM 支持的系统开发和优化基于 Linux 的系统,缩短开发和测试周期,并且可帮助工程师创建资源利用效率高的软件。即DS-5 是 ARM 开发的软体套件, 提供编译、链结等工具, 并提供性能调适工具 Streamline
- Streamline:用于分析报告的基于时间的筛选,用于时间测量和快速热点分析的可伸缩、跨部分的标记,独立的共享库分析,以及支持 CPU 热插拔。可以用來监视 ARM CPU 与Mali GPU 负载
2. DS-5 下载安装与license设定
2.1 DS-5的下载路径
https://developer.arm.com/products/software-development-tools/ds-5-development-studio/downloads
- 下载完成,解压,点击 setup.exe安装,选择好对应安装路径后,其他都可选择yes,安装好后,重启电脑。
2.2 license设定
Open Eclipse --> Help --> ARM License Manager --> Add License
--> Use a license file, license server...
--> Use an existing license file or license server address --> License Server
-->Host: alisvr03Port: 8224 // 这两个是得购买搭建服务器才可以的,个人使用的,只能使用其他途径了,或者试用30天 @_@(另一种是选择Licence File,这个可网上可以搜索到patcher.exe的tool即可生成dat档)
-->Select the toolkit that you intend to use --> 选择 DS-5 Ultimate Edition
3. Rebuild kernel and kernel modules
- 需要打开相关设定,才可以让系统可以执行DS-5的相关操作,所以,先要将kernel打开一些config
可以参考下面的kernel config设定
http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0482j/BABECIDJ.html
以DS-5 5.28.1版本为例
进入以上链接后,在左下框中,依次点击,即可入kerenl的config设定
ARM软件开发工具
-> ARM DS-5--> Version 5.28---> ARM Streamline----> Arm Streamline Performance Analyzer User Guide-----> Target Setup------> Required kernel configuration menu options
- 这时想查看一下各核CPU在各个时间点的loading情况,所以打开的config如下所示:
kernel 使用make menuconfig执行后出现界面,再进行如下操作
General Setup -> [*] Profiling Support -> Kernel Performance Events And Counters--> [*] Kernel performance events and counters
Timers subsystem-> [*] High Resolution Timer Support
Kernel Features -> [*] Enable hardware performance counter support for perf events (may not found in menuconfig)
Kernel Hacking-> [*] Tracers --> [*] Trace process context switches and events (may not found in menuconfig)
- 替换kernel & kernel modules
1 替换 kernel 中build出来的arch/arm/boot/zImage(有些平台是Image)
2 替换全部 kernel modules
另一个简化版本,即只替换板子上,执行lsmod中可以看到的modules即可,也可以把lsmod看到的,但你不用到的功能又不会影响系统的module去掉,最后,直接insmod那些lsmod看到的必要部分即可
4. Build gator driver and get gator daemon
- 如果DS-5要在板子上执行起来,还得要一个gator.ko跟gatord一个bin的执行档才可以
- gator.ko如何得到
可以在DS-5的安装路径中去找到gator的source code,然后放到kernel中去build即可。
5. DS-5 Live Preview
- 1)在板子上,将gator.ko跟gatord放到/data下面,权限设置为755,chmod 755 gator*
- 2)分别执行以下两个命令
# insmod /data/gator.ko
# /data/gatord &
- 3)执行以上第二步后,,同时记录一下板子上的IP,此时板子上的操作就已经完成
- 4)在PC机上,打开Streamline这个软件,输入刚刚记录的板子IP,再点击”眼睛按钮”,选择你连接的设备IP,最后点击红色按钮,即可开始录制板子上CPU的情况了
6. DS-5 Local Capture
在以上第5点“DS-5 Live Preview”时,已经说到了使用联网的方式,获取到板子上的CPU情况,但有时板子是在一个封闭的环境中,比如在一个屏蔽箱中时,这时,我们无法用联网的方式去获取板子的CPU情况,这时要怎么办呢?
DS-5已经有考虑到这种情况了,可以让用户在板子上直接使用命令的方式,把录制的档案保存到板子上,再copy出来用Streamline查看即可。
只要在板子上执行以下两步即可得到CPU的录制情况
# insmod /data/gator.ko
# /data/gatord -s /data/session.xml -c /data/configuration.xml -o /data/test_result &
以上命令中的session.xml跟configuration.xml要如何获取到呢?
这个就得参考第5点“DS-5 Live Preview”了,当我们使用联网方式时,会在保存的录制档案中,自动生成session.xml与configuration.xml,当打开生成的目录时,可以看到有session.xml跟chart_configuration.xml.gz, 这时把chart_configuration.xml.gz解压就可以得到configuration.xml了。
最后,只要把这两个xml文件cp到板子上的/data目录下,权限为777即可执行上面的命令录制档案了。
(PS:最好是用你所用版本的两个xml,不然,如果你用从其他版本copy过来的xml,那到时录制的档案,在你的PC机上是打不开的,因为DS-5的版本不一样)
其中的session.xml中的 duration=”60”参数,代表要录制的时间长短,可以随自己要录制的时间设定
7. 使用DS-5遇到的问题及解法办法
- 当本地录制完成后,在板子的/data下面生成一个test_result.apc文档,copy出来后,如何用Streamline打开?
1)先把test_result.apc压缩成zip格式,即为test_result.apc.zip
2)使用Streamline把test_result.apc.zip import进去即可,再右击“test_result”档案,点击Analyze即可查看CPU的情况
(ps: 以上test_result.apc,一定要以.apc结尾,再打包成.apc.zip格式的包,不然,Streamline会import不进去的,切记切记) - 在Streamline查看对应code的办法,当import进入Streamline界面后,在左边栏中,选中要分析的档案,右击,选择“Analyze”,会弹出如下的对话框,然后,点击“Add ElF image”,这样就可以选择对应文件的symbol进行解析,最后,在档案中的”Call Paths”、“Functions”、“Code”中可以直接查看到source code中的哪个函数,哪一行调用。
DS-5 Streamline相关推荐
- 2021年大数据Spark(二十五):SparkSQL的RDD、DF、DS相关操作
目录 RDD.DF.DS相关操作 SparkSQL初体验 SparkSession 应用入口 获取DataFrame/DataSet 使用样例类 指定类型+列名 自定义Schema ...
- DS, ES, SS, DI, SI, BP, SP, IP, FS 寄存器
为什么80%的码农都做不了架构师?>>> DS, ES, SS, DI, SI, BP, SP, IP, FS 寄存器 DS is called data segment re ...
- DSAPI多功能组件编程应用-DS提示气泡
首先下载DSAPI.dll.并在项目中引用. 该功能包括在DSAPI1.0.1.1及更高版本号,DLL请到本人资源里查找. Private Sub Button1_Click(sender As Ob ...
- Windows Server 2012 之配置AD DS
在企业级的局域网络中,通常需要对其网络中的所有计算机统一管理,而传统的方式(用户组处于工作组模式)计算机之间互相不信任(不然会导致很明显的安全问题 总不至于要去信任一个***的电脑吧?) 为此需要一个 ...
- 确认AD DS域是否正常
一.检查DNS服务器内的日志是否完整 1.检查主机日志: 域控dc1.sayms.com已经正确的将其主机名与ip地址注册到DNS服务器内 2.检查SRV日志--使用DNS控制台 数据类型为" ...
- Azure上A/D系列虚拟机到DS系列迁移(2)
11. 该脚本会检测环境,停止虚拟机,拷贝VHD文件,创建磁盘等等,知道出现如下类似画面,他会暂停等待用户操作: 后面这几个步骤非常重要,关系到你后续的创建是否成功: 12. 进入D:\migvm目录 ...
- plspl和oracle,LOL2017LSPL春季死啊DS轻取NON ME逆转GD赢得首胜
LOL2017LSPL春季死啊DS轻取NON ME逆转GD赢得首胜.2月9日,2017<英雄联盟>甲级职业联赛(LSPL)春季常规赛第二周继续进行,在当天的比赛当中,DS在两局比赛中击败N ...
- N-MOS的G-S电容随着DS电压的变化关系
➤ 01 栅极-源极输入电容与DS电压 对于 MOS管 往往存在较大的输入电容.这个电容随着DS的变化关系使得它可以当做一个可变电容来使用. 下面是IRF3710的数据手册的输入电容与DS电压之间的关 ...
- 对Exchange 事件ID 9154 DSACCESS 返回 DS 通知出现的错误“0x80004005”的处理
环境: 1台主DC(2k3,集成DNS)5种操作主机角色都运行在主DC上,一台额外域控. 1台EX2K3 问题1:现EX2k3服务器上出现如下错误日志: 事 ...
- Windows 08 R2_创建AD DS域服务(图文详解)
目录 目录 Active Directory概念 创建第一个AD域控制器 搭建DNS服务器 使用Windows窗口程序创建AD域控制器 AD与LDAP的关系 使用Powershell来创建ADDS域控 ...
最新文章
- 清华通信本硕巨佬秋招经验总结,收割互联网大厂后端 SP/SSP offer,太强了!
- POJ1125 Floyd
- iOS客户端开发流程
- 四大跨平台的APP分析
- vue隐藏和显示元素
- 安装LoadRunner 11时弹窗提示Micosoft Visual C++ 2005 SP1 可再发行组件包(X86):'命令行选项语法错误。键入命令 / ? 可获得帮助信息'。
- XXX集团财务决策支持系统——用友财务系统现有的财务报表(系列四)
- Allwinner ClassA20类库分析
- List转JSON格式方法
- 机器学习思维导图(基于sklearn)
- VISTA 服务详解
- filter-grok,dissect匹配数据
- 阿里云国际站和国内站的区别
- RT_Thread_进程间通讯——邮箱
- 随机森林算法及贝叶斯优化调参Python实践
- 2021年计算机应用基础统考题库,2021年7月计算机应用基础统考题库-网络教育统考计算机应用基础真题...
- 华清远见重庆中心—JS阶段技术总结/个人总结
- 最新版 Office 三国杀,体验式寻找最强电子表格
- C++暴力枚举——三连击(升级版)
- mysql 创建相同数据库_mysql数据库找出相同数据MySQL常用操作