标签: profiling

Visual Studio 2008 PRO中的分析

如何在Visual Studio 2008中使用分析器?

我知道配置属性 - >链接器 - >高级 - >配置文件(/ PROFILE)中的构建选项,但我找不到任何有关使用它的任何内容,只有我能够找到的文章似乎只适用于旧版本的Visual Studio(例如,大多数人说要转到Build-> Profile来调出配置文件对话框,但在2008年没有这样的菜单项).

这是因为Visual Studio 2008不包含探查器,如果它在哪里,它的文档在哪里?

c++ profiling visual-studio-2008 visual-studio

19
推荐指数
2
解决办法
2万
查看次数

Java性能提示

我有一个程序,我从C移植到Java.两个应用程序都使用快速排序来订购一些分区数据(基因组坐标).

Java版本运行速度很快,但我想让它更接近C版本.我正在使用Sun JDK v6u14.

显然我无法与C应用程序保持一致,但我想了解我能做些什么来尽可能地提高性能(在环境范围内).

我可以做些什么来测试应用程序的不同部分,内存使用情况等的性能?具体来说,我该怎么办?

另外,我可以实现哪些技巧(通常)来更改类和变量的属性和组织,减少内存使用并提高速度?

编辑:我使用Eclipse,显然更喜欢任何第三方工具的免费选项.谢谢!

java performance profiling

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

在Java VisualVM中看不到我自己的应用程序方法

我正在尝试描述我的java应用程序,只是为了找出花费大部分时间的方法.鉴于TPTP的反应不佳,我以为我会给Java VisualVM一个机会.

这一切似乎都很简单 - 除了我似乎无法从中得到任何一致或有用的东西.

我似乎无法看到任何与我自己的代码有关的内容 - 我得到的是对java.*方法等一大堆调用.

我已经尝试将检测限制在我自己的包中,这似乎减少了检测方法的数量,但我似乎还没有看到自己的方法.

每次运行时,我都会获得不同数量的方法,范围从10到1000.我已经尝试在我的应用程序启动时进入睡眠状态,以确保在应用程序开始执行任何有趣操作之前启动并运行VisualVM,以确保在有趣的内容运行时进行分析.

我有什么必须做的,以确保我的课程得到检验吗?有时间问题吗?.. like,必须等待类加载等?我也尝试过两次运行代码的内核,以确保所有代码都得到了运行...

我刚刚从Eclipse运行一个带有main的应用程序.我尝试使用Eclipse集成,以便在启动应用程序时VisualVM启动 - 结果是相同的.我也尝试将应用程序导出为可运行的应用程序,并从命令行独立运行它,而不是通过Eclipse运行 - 结果相同.

我的应用程序不是一个长期运行的Web应用程序等 - 只是一个主要调用我自己的其他类来进行一些处理,然后退出.

对于我可能做错的任何建议,我将不胜感激!:)

谢谢 !

java profiling

19
推荐指数
2
解决办法
4429
查看次数

使用VS进行性能分析时出错:无法打开探查器驱动程序

我正在运行Windows 8,UAC 完全禁用,这可以通过更改注册表设置(将其设置为"从不通知"在Windows 8中不再完全禁用它)来实现.

当我尝试通过Visual Studio配置C#代码时,我收到以下错误(单击是不能解决问题):

无法打开探查器驱动程序,是否要升级[用户名]的凭据?

运行vsperfcmd /Admin:Driver,START在命令行中说:

错误VSP1449:无法启动VSPerfDrv100.此驱动程序已被阻止加载尝试从高架环境使用VSPerfCmd的/ Admin开关.

我显然使用的是高架环境,因为在UAC完全禁用的情况下,我不再拥有两个安全令牌,而只有管理员安全令牌.

我该如何解决这个问题?

c# profiling visual-studio-2010 windows-8

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

在积极内联的情况下分析C++?

我试图找出我的C++程序花费时间的地方,使用gprof.这是我的困境:如果我使用我用于发布版本的相同优化设置进行编译,几乎所有内容都被内联,并且gprof告诉我,无益的是,我90%的时间花在核心例程中,其中所有内容都是内联的.另一方面,如果我使用内联禁用编译,程序运行速度会慢一个数量级.

我想知道当我的程序编译时启用内联时,从我的核心例程调用的程序花了多少时间.

我在四核Intel机器上运行64位Ubuntu 9.04.我查看了google-perftools,但这似乎不适用于x86_64.在32位计算机上运行不是一种选择.

当启用内联时,是否有人建议如何更有效地配置我的应用程序?

编辑:这是我的问题的一些澄清.如果最初不清楚,我道歉.

我想找到在我的应用程序中花费的时间.分析我的优化构建导致gprof告诉我,大约90%的时间花在main上,其中所有内容都是内联的.在剖析之前我已经知道了!

我想知道的是内联函数花了多少时间,最好不要在我的构建选项中禁用优化或内联.在使用内联禁用进行性能分析时,应用程序的速度会慢一个数量级.这种执行时间的差异是一个方便的问题,但是,我不确定使用内联禁用构建的程序的性能配置文件是否与使用内联启用的程序的性能配置文件强烈对应.

简而言之:有没有办法在不禁用优化或内联的情况下获得有关C++程序的有用的性能分析信息?

c++ profiling

18
推荐指数
2
解决办法
1463
查看次数

在Visual Studio 2010 Professional中进行概要分析

看起来好像分析工具仅在Visual Studio 2010的Premium和Ultimate版本中可用.

有合理的替代方案是免费的吗?

profiling visual-studio-2010

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

在Java应用程序中查找线程创建源

我正在研究一个有线程问题的Java应用程序.

在附加Netbeans Profiler的情况下使用应用程序一段时间后,我可以看到创建了几个线程.他们中的大多数都完成了一些.5 seconds.我只能找到应用程序中使用的SwingWorkers.

此外,分析器显示的大多数线程是普通线程而不是SwingWorkers.除非这些线程是间接由SwingWorker创建的,我怀疑,应用程序使用的某些库正在创建它们.

现在我想删除这个问题.但我找不到确定线程创建源的方法.如果你能建议一些其他的探查器/工具,我可以通过它找到线程创建的源(方法).

java multithreading profiling

18
推荐指数
2
解决办法
3803
查看次数

为什么取消的Clojure期货继续使用CPU?

我有很多Java字节码的例子,我想从Clojure执行所有这些例子.每个字节码序列可能包含一个无限循环,在这种情况下,我想在几秒钟后停止运行它.我一直在期待将期货作为一种手段.在寻找几个实现后,我尝试了这两个代码:

(deref (future (loop[a 1] (recur a)) :done!) 1000 :impatient!)
Run Code Online (Sandbox Code Playgroud)

......以及https://gist.github.com/3124000上的代码

在这两种情况下,循环似乎都是适当的超时(在后一种情况下,未来报告已经完成和取消),但我看到我的CPU使用率上升到99%左右并保持在那里.我还看到每次运行此代码时,我的Java进程都会获得额外的线程.

在我看来,未来正在取消,但代码仍在运行.在我的程序中,我将需要运行和超时,一些非常紧密的无限循环(例如,相当于"20 PRINT GOTO 10"的Java字节码),我没有选择修改我正在运行的代码.

任何想法为什么我看到这种行为; 我能做些什么来阻止它; 还是替代方法让我实现运行和超时这样的代码的目标?

cpu profiling timeout future clojure

18
推荐指数
2
解决办法
2099
查看次数

Chrome Dev Tools API和Selenium WebDriver

我正在尝试使用Selenium Web Driver来自动化我的浏览器集成测试.我看到Chrome Dev Tools附带了一个控制台API,用于从JavaScript内部调用某些开发工具功能.

理想情况下,从我的Java/JUnit集成测试中,我可以启动Chrome Dev Tool内存分析器(可能还有其他一些工具),运行我的WebDriver测试(实例化Chrome浏览器实例,操作DOM元素等),然后停止探查器,然后检查探查器的结果,看看是否有任何内存泄漏.

这个概念是否可行,还是我出去吃午饭?为什么/为什么不呢?

似乎API已经有了console.profile()启动分析会话,并且a console.profileEnd().所以理论上我可以让WebDriver调用这两个方法并在它们之间运行测试.

我认为缺失的链接然后以编程方式与分析会话的结果进行交互...

integration-testing profiling memory-leak-detector google-chrome-devtools selenium-webdriver

18
推荐指数
2
解决办法
7908
查看次数

我如何使用line_profiler(来自Robert Kern)?

我尝试使用line_profiler模块获取Python文件的逐行配置文件.这是我到目前为止所做的:

1)使用.exe文件(我在WinXP和Win7上)从pypi安装line_profiler .只需单击安装向导即可.

2)写了一小段代码(类似于此处另一个回答问题中提到的代码).

from line_profiler import LineProfiler
def do_stuff(numbers):
    print numbers

numbers = 2
profile = LineProfiler(do_stuff(numbers))
profile.print_stats()
Run Code Online (Sandbox Code Playgroud)

3)运行IDLE/PyScripter中的代码.我只得到了时间.

Timer unit: 4.17188e-10 s
Run Code Online (Sandbox Code Playgroud)

如何在我执行的代码上获得完整的逐行配置文件?我从未使用任何高级Python功能,如装饰器,所以我很难理解如何使用这里这里的几个帖子提供的指南.

python profiling python-2.7 line-profiler

18
推荐指数
4
解决办法
3万
查看次数