问题标签 [intel-parallel-studio]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 找不到调试符号和大量空闲 CPU 使用率
我是 VTune Amplifier 的新手,我正在尝试使用一个非常基本的应用程序来分析 OpenCV。按照本指南推荐的编译器选项,我通过 CMake 编译了 OpenCV CMAKE_BUILD_TYPE=RelWithDebInfo
,-DWITH_OPENMP=ON
因此包括-O2
和-g
选项并启用了 OpenMP。我的测试 OpenCV 应用程序是用
通过日食。但是,当我尝试分析我的应用程序时,这是收集日志:
另外,从下图中可以看出,大部分时间CPU使用率处于空闲状态:
这让我觉得这个警告信息很重要,我做错了什么。
netbeans - 如何将英特尔 C/C++ 编译器套件与 Visual Studio 以外的其他 IDE 集成?
我有 C/C++ 兼容的 IDE,例如CODE-BLOCKS、CODELITE和Netbeans,我安装了最新的 Intel Parallel Studio XE 2017,我尝试使用特定 IDE 为 Intel 编译器环境设置编译器设置和链接器设置,但都无法简单编译源文件。
如果有人知道如何使用上述 IDE 之一设置英特尔 C/C++ 编译器,请回复。
我必须遵守特殊规则吗?除了设置编译器选项和链接器设置之外,何时设置英特尔编译器环境?
opencv - icpc 比 gcc 慢?
我正在尝试使用英特尔 C++ 编译器制作优化的opencv SURF并行版本,特别是surf.cpp 。
我正在使用 Intel Advisor 来定位低效且未矢量化的循环。特别是,它建议使用icpc
编译器(而不是gcc
)重建代码,然后使用该xCORE-AVX2
标志,因为它可用于我的硬件。
所以我最初cmake
用于构建 opencv 的方法g++
是:
并构建了使用 SURF 的应用程序g++ ... -O3 -g -fopenmp
改为使用icpc
的是:
(特别注意-DCMAKE_C_COMPILER -DCMAKE_CXX_COMPILER -DCMAKE_CXX_FLAGS
)
并编译了 SURF 应用程序:-g -O3 -ipo -parallel -qopenmp -xCORE-AVX2
和-shared-intel -parallel
用于链接
我认为该icpc
解决方案会比那个更快g++
,但事实并非如此:icpc
需要 0.15 秒,而g++
需要0.12
s (我进行了几次实验,这些数字是可靠的)。
为什么会发生这种情况?我做错了icpc
什么吗?
g++ OpenCV 编译选项(部分由 cmake 生成):
icpc OpenCV 编译选项(部分由 cmake 生成):
我注意到一件事:icpc
我指定的标志不包括在内。理论上以下命令在cmake
:
-DCMAKE_CXX_FLAGS="-debug inline-debug-info -parallel-source-info=2 -ipo -parallel -xCORE-AVX2 -Bdynamic"
应该在运行期间添加所有这些标志,make
但运行VERBOSE=1
它只显示我在icpc OpenCV 编译选项中发布的标志(部分由 cmake 生成)。这也很奇怪,因为cmake
执行已完成,这是报告的其中一行:
正如你所看到的,我包含的优化标志DCMAKE_CXX_FLAGS
出现了,C++ (Debug/Release)
但是当我运行时它们没有出现make VERBOSE=1
,我不知道为什么。
顺便说一句,据我所知,icpc
生成的代码应该总是比g++
(如果他们使用相同的选项,就像在这种情况下)。为什么会发生这种情况?
compilation - Intel Advisor 的编译器和链接器标志
我在使用 OpenMP 的应用程序上的 Xeon Phi Knights Landing (KNL) 上使用 Intel C++ v16 编译器。我正在阅读有关用于Vectorization Advisor、Thread Advisor和最后VTune的编译器和链接器选项。
结合 3 个链接文档中的表格,我得出了这个列表(考虑到 Xeon Phi KNL 支持 AVX512):
但是,我不知道在编译和/或链接期间必须使用哪些标志。其次,我是否缺少任何有用的标志(或者其中一些是多余的)?
顺便说一句,这发生在编译opencv。
parallel-processing - 在远程计算机上使用 Intel Advisor 的正确方法是什么?
英特尔 VTune 放大器可以分析在远程机器上执行的并行应用程序。
Intel Advisor 没有这样的选项。根据此文档,您必须使用 Intel Advisor 的命令行版本:
这使得自动化许多任务以及分析在远程主机上运行的应用程序成为可能
然而,GUI 版本有很多 cl 版本没有提供的功能(比如关于如何解决矢量化/多线程低效率等的建议)。
我尝试advixe-cl
在远程机器上运行,然后在本地复制项目(并产生结果)。它可以工作,但丢失了一些功能。作为最后的机会,我尝试ssh -X
了远程机器和使用advixe-gui
,但似乎我的 Xeon Phi KNL 的主要核心太弱了,无法正常运行这样的图形应用程序。
在这种情况下,英特尔顾问的正确/最佳用途是什么?
python - 英特尔 DAAL python 错误
英特尔数据分析加速库(英特尔 DAAL)已成功安装在我的 ubuntu 上。但是,在运行位于 compilers_and_libraries_2017/linux/daal/examples/python/source/distance 的示例时,出现以下错误。以前有人遇到过这个问题吗?
c++ - 英特尔 DAAL 可能与头文件有关吗?
我在 Mac OS 上安装了 Intel 并行工作室并使用 daal 来构建我的文件。设置变量并运行后,
我收到以下错误
这是否意味着没有找到头文件?
c++ - Intel Advisor 提供了哪些功能?
我正在尝试使用 Intel Advisor 来了解我的应用程序中的热点。
这些是我正在使用的编译和链接器标志:
这是取自本教程的示例图像:
这是我的应用程序的屏幕截图:
我不明白 , 和 之前的所有这些_clone
功能是[stack]
什么。_start
_libc_start_main