相关疑难解决方法(0)

Visual Studio 2008,C++的Profiler?

是否有任何好的,免费的(或至少相当便宜的)至少可以与Visual Studio 2008 Professional集成的本机C++的分析器?

我查看了DevPartner社区版,但它们似乎只支持Visual Studio 2003和Visual Studio 2005.

如果没有那么好的免费/便宜的剖析器,我可以与VS一起工作,相对较小的摩擦力?

c++ profiler visual-studio-2008

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

您如何描述和优化CUDA内核?

我对CUDA视觉分析器和占用电子表格有点熟悉,尽管我可能没有尽可能地利用它们.分析和优化CUDA代码与分析和优化在CPU上运行的代码不同.所以我希望从您的经验中学习如何充分利用我的代码.

最近有一篇文章寻找最快的代码来识别自己的数字,我提供了一个CUDA实现.我不满意这段代码尽可能快,但是我不知道要找出正确的问题是什么以及我能从哪些工具中得到答案.

您如何确定使CUDA内核执行速度更快的方法?

optimization profiling cuda

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

是否有任何KCacheGrind替代Mac Os X outta吗?

我正在寻找一个KCacheGrind替代品,或者至少是Mac OS X的二进制包?

我将使用KCacheGrind与XDebug for PHP,但Mac Os X在这里是正确的环境......

谢谢

编辑:我知道我可以使用MacPort,但我正在寻找这种痛苦安装的替代方案.

也许是"在mac方式"的东西

php profiling xdebug kcachegrind

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

寻找最接近的斐波纳契数

我试图解决一个更大的问题,我认为该程序的一个重要部分是花在低效计算上.

我需要计算给定数N,区间[P,Q],其中P是<=到N的最大斐波纳契数,而Q是> =到N的最小斐波纳契数.

目前,我正在使用地图来记录斐波纳契数的值.查询通常涉及搜索最多为N的所有斐波纳契数,并且它不是非常节省时间,因为它涉及大量的比较.

这种类型的查询将在我的程序中经常出现,我对可以改进查找的方式感兴趣,最好是使用子线性复杂性.

c++ algorithm math complexity-theory discrete-mathematics

16
推荐指数
3
解决办法
6770
查看次数

如何在Mac OS X上从命令行进行配置?

我试图使用命令行工具在Mac OS X配置文件的C/C++代码,我使用-pg与选项gcc来运行gprof在Linux上,但我似乎无法找到gprof在Mac上,即使我有这个页面的说明:其他命令行工具(iOS)其他命令行工具(mac).

gprof:Produces execution profiles based on an execution analysis of a program.
Run Code Online (Sandbox Code Playgroud)

我安装的命令行工具,所以其他的命令行工具,如otoolatos可用.我用谷歌搜索这个页面(https://apple.stackexchange.com/questions/154289/installing-gprof-on-mac),说不gprof支持,但我不确定我什么时候有一个描述该工具的Apple doc ; 无论如何,我试图用来brew下载gprof,但它没有用.

我发现尝试在Mac上使用带有C++代码的gprof,但我没有输出instruments -t.我还在mac os x上发现了profiling c ++,但我不想打开Instruments,因为我想自动化一些进程并尝试保持跨平台系统.

  • 如何在Mac OS X上使用gprof?我使用OS X 10.10.
  • 如何在命令行中进行配置,无论是否有gprof

c c++ macos profiling gprof

16
推荐指数
3
解决办法
6833
查看次数

基准测试和分析之间的区别

我看到术语软件基准测试分析有时可以互换,但据我的理解,这是一个微妙的差异.

两者都是按时间连接的.但是,虽然基准测试主要是确定可以与其他应用程序进行比较的特定速度分数,但分析可以为您提供有关应用程序在大部分时间(或周期数)上花费的确切信息.

对我来说,它总是如下:集成测试是基准测试和单元测试对应的分析测试的对应物.但微基准测试如何适用于此?

有人在这里说:

分析和基准测试是相同硬币的另一面,分析可帮助您缩小到最有用的优化位置,基准测试可让您轻松隔离优化并对它们进行交叉比较.

另一个人在这里谈到分析:

分析在不同时间意味着不同的东西.有时它意味着衡量绩效.有时它意味着诊断内存泄漏.有时它意味着可以了解多线程或其他低级别活动.

那么,这些技术在概念上是不同的还是不是那种黑白?

benchmarking profiling

16
推荐指数
2
解决办法
3885
查看次数

.NET代码分析工具

有没有人对代码分析有任何好的建议?我希望能够查看系统堆,内存使用情况,垃圾收集状态等...

.net profiling

15
推荐指数
4
解决办法
6377
查看次数

Java性能分析,性能调优和内存分析练习

我即将使用JProfilerEclipse Tptp进行java应用程序的研讨会分析,性能调优,内存分析,内存泄漏检测等. 我需要一些练习,我可以提供给参与者,他们可以:使用工具来分析发现问题:瓶颈,内存泄漏,次优代码等.我相信有丰富的经验和现实生活中的例子.

  • 解决问题并实现优化代码
  • 通过执行另一个分析会话来演示解决方案
  • 理想情况下,编写演示性能增益的单元测试

问题和解决方案不应过于复杂; 应该可以在几分钟内解决它们,最坏的情况是几小时.一些有趣的锻炼领域:

  • 解决内存泄漏问题
  • 优化循环
  • 优化对象创建和管理
  • 优化字符串操作
  • 解决因并发性和并发性瓶颈而加剧的问题

理想情况下,练习应包括样本未优化代码和解决方案代码.

java optimization performance profiling memory-leaks

15
推荐指数
1
解决办法
3767
查看次数

if和switch语句的函数数组的性能

我正在编写一个非常重要的性能代码部分,我有一个关于用函数指针数组替换case语句(或if语句)的疯狂想法.

让我来证明一下; 这是正常版本:

while(statement)
{
    /* 'option' changes on every iteration */

    switch(option)
    {
        case 0: /* simple task */ break;
        case 1: /* simple task */ break;
        case 2: /* simple task */ break;
        case 3: /* simple task */ break;
    }
}
Run Code Online (Sandbox Code Playgroud)

这里是"回调函数"版本:

void task0(void) {
    /* simple task */
}

void task1(void) {
    /* simple task */
}

void task2(void) {
    /* simple task */
}

void task3(void) {
    /* simple task */
}

void (*task[4]) (void); …
Run Code Online (Sandbox Code Playgroud)

c optimization if-statement callback switch-statement

15
推荐指数
1
解决办法
8758
查看次数

如何使用 VSCode 分析和测量 C#/C++/Java 代码性能?

我在 VSCode 扩展、插件、google 中进行了一些搜索,但似乎没有给我提供与标准 VS 提供的类似工具。

有一个针对大型 VS 的完整代码分析器列表(仅 .NET 和托管 C++)。

使用“真正的”VisualStudio,您可以拥有非常先进的分析工具,支持 MSVS 支持的多种语言。

但我无法获得 VSCode 的任何信息。(是的,我找到了这个答案,但在我看来太复杂了。如果有任何带有 GUI 的东西,类似于 JavaScript 内置分析器,那就太棒了:)

请问有人知道 C#/C++/Java 的这种可能性吗?

目标:Linux 服务器,嵌入式 Linux,但我也可以在 Windows 上运行(仅 C# 代码)。

c# c++ performance-testing memory-profiling visual-studio-code

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