Tool之ProfileScope
2023-03-14 22:44:38 时间
欢迎关注VxWorks567
如转发 请标明出处!
ScopeTools里还有个成员叫做ProfileScope,从Vx67开始,改名为Performance Profiler
使用这个工具能看到
- CPU在哪里做了什么
- 正在调用哪些函数
- 每个函数又依次调用了哪些函数
- 整个调用栈中,每一级占用CPU的百分比 它提供了三个视图
- System view,使用树形结构展示完整的调用栈
- Function view,每个线程的函数调用列表
- Process view,进程视图
还是跑个例子,就知道它怎么用了,例如这个代码,加到VxWorks 6里
/*
* 公众号 VxWorks567
*/
#include <stdlib.h>
#include <taskLib.h>
int profileDelay = 1;
static int result;
static int duplicate(int number)
{
int counter,useless=0;
for(counter=0; counter<=(number * 40000); counter++)
{
useless++;
}
return (2 * number);
}
static int halve(int number)
{
int counter,useless=0;
for(counter=0; counter<=(number * 10000); counter++)
{
useless++;
}
return (number/2);
}
static int calculation(int number)
{
int toBeReturned;
if(number%2)
toBeReturned = duplicate(number);
else
toBeReturned = halve(number);
return(toBeReturned);
}
void testProfile()
{
for(;;)
{
result = calculation(rand());
taskDelay(profileDelay);
}
return;
}
代码很简单,为了避免被编译器优化掉,建议在工程属性中将优化选项关闭
然后启动VxWorks 6,在WorkBench里连接Target Connection,并右击选择Attach Performance Profiler
在WorkBench中央位置就会打开它的窗口。这时启动应用程序,几秒钟之后,就可以看到程序里CPU的使用情况了
可以看到例子testProfile()中duplicate()占用的CPU明显多于halve(),右击选择View Source还可以跳转到相应的源码语句
非常强大的工具,VxWorks卖的贵,是有原因滴
我是泰山 专注VX好多年!
一起学习 共同进步!
相关文章
- RISC-V杀向服务器市场!5nm制程、最高192核,性能超AMD EPYC 7763!
- 提升先进封装可靠性,杜邦推出全新乾膜式感光型介电质材料
- Soitec 新加坡晶圆厂扩建项目破土动工,进一步提升全球产能
- RISC-V全球出货突破100亿个,会员同比增长26%
- 三星晶圆代工营收首次超越闪存业务,但与台积电差距仍在扩大
- ASML CEO质疑美国要求荷兰跟进对华新规:我们已经做出了牺牲!
- 日本Rapidus与IBM达成合作协议,目标2027年量产2nm芯片
- 传苹果已要求鸿海等代工厂将印度产能提升3倍
- Synopsys年营收突破50亿美元!预计2023财年将继续增长14-15%
- 投资70亿元!广州增芯12英寸晶圆制造产线开工
- 华润微电子发布40多款车规级系列新品
- Marvell全线产品涨价10%,2023年1月1日生效
- 中资多起半导体并购遭欧洲阻挠!中方回应:滥用国家安全概念
- CAD2023中文版下载安装破解教程:文件破解方式
- 欧洲先进半导体制造还有多少家底?
- 什么是代理IP?选择代理IP和使用代理IP的说明
- 工程监测仪器振弦模拟信号采集仪VTN的ADC接口与DAC 接口
- Parallels Desktop 18.1.1虚拟机
- XnViewMP for Mac(看图软件)
- au2023更新了什么:Au2023中文版最新功能和特性