标签: instruments

在Time Profiler,Instruments,OS X中缺少JAVA过程名称

我正在使用Java编写算法实现.在OS X 10.7之前,我使用Shark Profiler来分析我的实现,它的工作非常好.但是,新仪器不再找到程序名称.我已经尝试使用鲨鱼的VM参数运行java应用程序(即-agentlib:Shark),但它们对于10.7是未知的,我找不到这样的工具的agentlib.

有关如何将过程名称附加到Insturments中的符号名称(有些十六进制数字)的任何想法?我正在使用Eclipse Indigo,如果这有任何区别的话.

谢谢!

编辑:到目前为止,OS X Mountain Lion没有任何改变.

编辑#2:来自(?)开发人员的更新通过apple的bug报告者:

dtrace过去一直支持Java堆栈,但老实说我不能说是否支持了这种支持.对于您要测量的内容而言,这可能是一种可行的解决方法 - 此时,这不是性能工具的优先级.您可能希望从/usr/bin/cpu_profiler.d中的D脚本开始并修改它以收集jstack.

编辑#3:好的,经过一些更多的讨论后发现开发人员本身并不知道该脚本的来源.显然,仪器中的时间分析器无论如何都不使用DTrace,因此唯一的选择是编写我们自己的DTrace脚本或仪器.

你是对的,我道歉.我不确定那个脚本来自哪里,当我仔细查看它时,它没有jstack动作,所以它不是你想要的.看起来我能提供的唯一java分析选项是DTrace.DTrace有一个配置文件提供程序,以及一个收集java堆栈的jstack操作.您可以使用"聚合"来确定最重的堆栈跟踪,所有这些都可以从命令行进行.DTrace的文档主要由Sun维护,我会引导您访问任何DTrace教程,因为大多数都涵盖了配置文件提供程序.

尽管人们在网上说,仪器不会将DTrace用于所有内容,特别是时间分析,因此我无法在仪器UI中为您提供快速修复.

java macos profiling dtrace instruments

9
推荐指数
1
解决办法
541
查看次数

使用Instruments分析内存泄漏 - iPhone 4和iOS 5 Simulator之间存在巨大差异

当使用Instruments分析我的应用程序(寻找内存泄漏)时,iOS 5 iPhone模拟器的结果与我运行iOS 5的iPhone 4的结果非常不同.第一张图显示了使用真实设备进行分析的结果,第二个是模拟器:

真实设备:

真实设备


iOS 5模拟器:

模拟器

在这两种情况下,此配置文件都被应用到应用程序中的同一点:在rootViewController的视图生命周期中完成viewDidLoad.我已经在两个中等待总分配内存稳定输出.正如您在设备图中看到的那样,在00:10左右会出现一些极端波动,这些波动在模拟器中不存在.在真实设备上,总分配内存在00:08左右从1MB跳到3.5 MB然后再回到1.5 MB,最后跳到4.74,稳定下来.为模拟器分配的内存更加线性,它稳定地快速攀升到2.35 MB左右,稳定下来.

需要注意的另一件事是设备上存在2.25 MB的已分配内存,但不是来自malloc的模拟器和来自CFNumber的700+ KB.由于我使用仪器和分析相对较新,我不确定这是否正常.一个快速的谷歌搜索没有任何确定性.2.25 MB和700 KB以上弥补了内存分配的差异.为了平衡事物,有更多的malloc条目,模拟器测试中存在不同的内存量,在设备测试中不存在.

此外,我发现当第二个UIViewController被推送到UINavigationController堆栈时,分配的内存在真实设备上跳转到大约8.5-9 MB,但在模拟器上只有大约4.5到4.5 MB的顶部.

我知道可以预期该设备的运行方式与模拟器有很大不同,但是内存分配不应该非常相似,因为在两个设备上运行相同的代码?我会理解这是否是性能分析,但对于内存分配,似乎数字应该非常相似.任何人都可以了解这是否正常?

iphone memory-management instruments ios

9
推荐指数
1
解决办法
3120
查看次数

为什么VM Tracker为空?

我正在使用Allocations模板在iPhone上配置我的应用程序,但VM Tracker始终为空.为什么?如何让它显示数据?

在此输入图像描述

memory instruments ios

9
推荐指数
2
解决办法
896
查看次数

在iOS屏幕上显示FPS(无需仪器)

在WWDC 2012 Session 506中,它们UILabel在应用程序中显示每秒的帧数,而无需使用附加到仪器的Core Animation分析器.我想这样做是为了方便以及让我的团队中的其他成员监控FPS,因为他们在真实场景中使用该应用程序.不幸的是,会话506不包括在WWDC '12示例代码中.

有谁知道如何做到这一点?我知道Cocos2D具有这种功能CCDirector,但他们的方法似乎特定于Cocos2D渲染的工作原理.它不必是公共API,因为我不会将此代码发送给客户.

frame-rate instruments ios

9
推荐指数
1
解决办法
1万
查看次数

Xcode Instruments跟踪比较

有没有办法比较用Instruments保存的跟踪文件.如何对应用程序的连续实现构建进行任何比较.

以免我说我在2个月内发布iPhone应用程序1.0版1.1.什么是最好的必须在内存和时间方面进行分析比较?

comparison xcode instruments ios

9
推荐指数
1
解决办法
1721
查看次数

UILabel(CALayer)正在使用大量虚拟内存

Xcode and Instruments我看到UILabel (CALayer)使用大量的虚拟内存(匿名VM).我看到每个大约235 KB的虚拟内存UILabel.

我认为这可能是iOS 7.1或7.1.1的新问题.

这是预期的吗?

我创建了一个简单的程序,创建500 UILabelsInstruments显示115MB的内存使用.在大约1500个标签处,应用程序由OS终止.

for (int i = 0; i < 500; i++)
{
    index = (int)[self.items count];
    index++;

    frame = CGRectMake(10.0, 20, 300.0, 50.0);

    UILabel *newLabel = [[UILabel alloc] initWithFrame:frame];
    newLabel.text = [NSString stringWithFormat:@"This is text for label: %d", index];
    newLabel.backgroundColor = [UIColor whiteColor];
    [self.view addSubview:newLabel];

    [self.items setObject:newLabel forKey:[NSNumber numberWithInteger:index]];
}
Run Code Online (Sandbox Code Playgroud)

思考?

xcode anonymous virtual-machine instruments ios

9
推荐指数
2
解决办法
3508
查看次数

Xcode Instruments,Time Profiler - "View as value"代表什么?

我在我的应用程序中分析关键循环,我在时间分析器设置中看到有趣的选项:

"视为价值观"

在此输入图像描述

当我选择它时,我会看到带有'x'后缀而不是标准百分比值的数字.

作为示例,请参阅附加的屏幕截图(汇编代码视图): and指令具有442x价值.对于这样简单的汇编指令而言,这个btw似乎很重,并且与循环中的其他指令相比.

这些数字是什么意思?这些是否以某种方式指代给定代码行的CPU周期?

iphone xcode profiling instruments ios

9
推荐指数
0
解决办法
207
查看次数

该设备目前不在线上

我想使用Instruments Version 7.1(7B91b)来分析我的应用程序.但是当我启动Allocations Instruments时,录制按钮被禁用.我连接了我的iPhone设备(iPhone 6 plus和iOS版本9.1),设备可以使用Xcode进行调试,没有任何问题. 该设备目前不在线上

它只是仪器漏洞吗?

allocation instruments xcode7 ios9.1

9
推荐指数
1
解决办法
2022
查看次数

了解iPhone OpenGL分析

我的应用已启动并正在运行,现在我正在寻求提高渲染性能.使用'仪器'我收集了一些数据.我正在使用旧的iPhone 3G作为最糟糕的情况.

时间分析器:

-30%    CopyVertexElementsMultipleSequential
-11%    mach_msg_trap
-4%     _semwait_signal
-2%     ValidateState
Run Code Online (Sandbox Code Playgroud)

但是,使用Open GL ES驱动程序,采样器读取:

-70%    _semwait_signal
-24%    CopyVertexElementsMultipleSequential
-0.7%   mach_msg_trap
Run Code Online (Sandbox Code Playgroud)

浏览文档我无法得出OpenGL ES Sampler和Timer Profiler之间的区别.任何人都可以开导我吗?

iphone opengl-es instruments

8
推荐指数
1
解决办法
3197
查看次数

Xcode Instrument的拆卸时间分析的可靠性

我使用Instrument的时间分析器来描述我的代码,并放大到反汇编,这里是结果的片段:

仪器截图

我不希望一条mov指令占23.3%的时间,而div指令几乎什么也没做.这让我相信这些结果是不可靠的.这是真的吗?或者我只是遇到了仪器错误?或者我是否需要使用一些选项来获得可靠的结果?

这个问题是否有任何参考?

x86 xcode profiling instruments intel-pmu

8
推荐指数
1
解决办法
266
查看次数