65得票2回答
使用英特尔编译器时,Windows和Linux之间的性能差异:查看汇编代码

我在Windows和Linux(x86-64)上运行同一个程序。它是使用相同的编译器(Intel Parallel Studio XE 2017)和相同的选项编译的,但Windows版本比Linux版本快3倍。罪魁祸首是对std::erf的调用,该函数在Intel数学库中解析了两个情况(默认情...

18得票1回答
Pthread Mutex:pthread_mutex_unlock() 消耗大量时间

我使用pthread编写了一个多线程程序,使用生产者-消费者模型。 当我使用英特尔VTune分析器来分析我的程序时,我发现生产者和消费者在pthread_mutex_unlock上花费了很长时间。我不明白为什么会出现这种情况。我认为线程可能需要等待很长时间才能获得互斥锁,但释放互斥锁应该很快...

15得票6回答
使用C/Intel汇编,如何最快地测试一个128字节的内存块是否全部为零?

继续我的第一个问题,我正在尝试通过VTune分析64位C程序来优化内存热点。 特别是,我想找到测试128字节内存块是否全为零的最快方法。您可以假设内存块的任何所需内存对齐方式;我使用了64字节的对齐方式。 我正在使用一台安装有Intel Ivy Bridge Core i7 3770处理器...

14得票4回答
如何在C/C++应用程序中分析内存访问所花费的时间?

一个应用程序中的函数耗费的总时间可以分为两个组成部分: 实际计算所花费的时间(Tcomp) 内存访问所花费的时间(Tmem) 通常,性能分析器会提供函数耗费的总时间估计。是否可能根据上述两个部分(Tcomp和Tmem)获得耗费时间的估计值?

10得票2回答
同样的SSE代码在同一函数中为何可能运行几次较慢?

编辑3: 这些图片都是指向完整尺寸版本的链接。很抱歉只提供图片而不是文本表格,因为图形很难复制/粘贴成文本表格。 我有一个使用icc --std=c++14 -qopenmp -axS -O3 -fPIC编译的程序的VTune剖析结果: 在该剖析结果中,汇编视图中突出显示了两个指令...

8得票3回答
VTune对于Delphi开发是否值得考虑?

在运行所有有关分析工具的问题时,我惊讶地发现Intel的VTune之前从未听说过。价格高达700美元,甚至比AQTime还要贵。 但在决定为AQTime付出巨资之前,是否有人使用过Delphi的VTune?如果是这样,您是否认为它有任何优点,可以使它比AQTime和其他可用的Delphi分析...

8得票4回答
需要性能分析帮助

我有一个性能分析的问题 - 假设我有以下代码... void main() { well_written_function(); badly_written_function(); } void well_written_function() { for (a sma...

8得票1回答
VTune Profiler 出现错误:“无法显示数据,因为没有该数据的视图。”

我希望优化我的C++代码,运行在Linux平台上。为此,我使用Intel VTune Performance Analyzer Profiler。当我识别热点时,它会成功运行二进制可执行文件(我指定的路径),然后出现错误:“数据无法显示,没有可用于数据的视点”。请问有人可以帮忙解决这个错误吗?

7得票2回答
优化SSE代码

我正在为一个需要提高性能的Java应用程序开发一个C模块(请参见Improving performance of network coding-encoding),这需要一些性能改进。我尝试使用SSE指令集来优化代码,它比Java版本快了大约20%。然而,它仍然不够快。 不幸的是,我对优化C...