问题标签 [intel-mkl]

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.

0 投票
1 回答
651 浏览

fft - 某些条件下的 Intel-MKL FFT 性能

我目前正在使用英特尔的 MKL 2D FFT 例程。

我遇到了性能变化 4-5 倍的情况。

我正在做的是使用 FFT 库实现一种带通滤波器。测试结果是正确的,但速度是个问题。

我看到的是正向 FFT 大约 1.3 秒,反向 FFT 大约 1.3 到 6 秒。

我已经将此追踪到我在 FFT 前向传递后应用的权重。权重在 0 到 -1 之间,当我得到 6 秒时,大部分为 0。如果我在应用之前将权重设置为 1,则时间为 1.3 秒。其他测试在不使用权重 1 的情况下显示了这种行为。

我的问题是我应用的价值观如何导致这种放缓?我可以理解执行时间的微小变化,但不能理解这种戏剧性的变化。

谢谢,吉姆K

我不知道这是特定于 FFT 的 MKL 版本还是一般问题。

0 投票
1 回答
961 浏览

fortran - 使用 IMSL 时出现 MKL 错误

我正在使用带有 MKL 的 Intel Virtual Fortran 的 IMSL。我尝试使用 IMSL 的例程。它编译得很好,但是当我尝试执行该文件时,它出现了一个错误:

以下是我正在使用的代码:

我该如何解决这个问题?

在我添加使用 EVCRG_INT 之后

它给出了错误信息:

谢谢。

在 IMSL 用户指南中,它说:

0 投票
1 回答
344 浏览

python - 为什么 scipy 暴露 Lapack pbsv(b 表示带状,例如 linalg.solveh_banded)而不暴露 ptsv(t 表示三对角线)?

查看 scipy.linalg.solveh_banded 的源代码,它只是包装了 Lapack pbsv。我正在为我认为应该由 Lapack ptsv 函数提供的三对角(厄米特,或在我的情况下为实对称)系统寻找更有效的求解器。此外,如果我沿着主对角线的(所有正)值的动态范围太大,即使这不应该是一个实际问题,solveh_banded 也会崩溃(我猜四舍五入会使最小值看起来实际上是负数,所以它是被视为具有负特征值)并且有一些机会特定于三对角线的例程不会遇到这个问题。

根据我对 Lapack 的阅读,似乎 ptsv 应该包含在任何具有 pbsv 的发行版中(文档总是将它们一起列出)。我不确定哪个会更有效(pbsv 假定对称但具有任意带宽,而 ptsv 假定三对角线但不一定是对称的)但似乎值得尝试 ptsv。

不幸的是,ptsv 似乎没有在 scipy 中公开,我相信这在实践中意味着它不包含在 scipy.linalg.flapack 中,因此不能通过 scipy.linalg.get_lapack_funcs(('ptsv',)) 获得。

我意识到与 scipy 的 Fortran/Lapack 链接很复杂,但有人知道为什么 pbsv 和 ptsv 会被区别对待吗?有什么我可以手动编辑的东西来尝试像 pbsv 一样包装 ptsv(不幸的是,flapack 似乎只是作为“.so”提供,所以我遇到了死胡同)?

FWIW 我将 Enthought EPD 与英特尔 MKL 一起使用。但是,鉴于 scipy.linalg (独立于分布)始终包含solveh_banded,但没有三对角求解器,我认为它必须比EPD / MKL问题更深。

0 投票
0 回答
316 浏览

c++ - mkl 随机数生成器和 FLT_MAX

我正在使用 mkl Intel 的准随机数生成器。我创建了自己的 wrappnig 方法以允许定义 rng 的最大和最小界限。但是,当边界值 aer FLT_MIN FLT_MAX 时似乎不起作用。所以我想知道 FLT_MAX 实际上是什么。一个大浮动?一个不可超过的虚构值?不能在 FLT_MIN 和 FLT_MAX 之间进行采样吗?如何处理?

谢谢并恭祝安康。

0 投票
2 回答
3002 浏览

numpy - 为什么大肆宣传的英特尔 MKL Numpy 在我的 PC 上构建比 ATLAS 构建慢?

我“双启动”Ubuntu 11.04、Ubuntu 12.04 和 Windows XP SP3 均已更新至最新版本。PC 是相当旧的 Intel Celeron D CPU 3.06GHz 和 2GB RAM

在 Ubuntu 11.04 中,我使用 ATLAS 编译了 Numpy(ATLAS 从源代码编译)
在 Ubuntu 12.04 中,我使用最新可用的 MKL、icc、ifort 构建了 Numpy
在 Windows XP 中,我使用 MKL 构建了 Numpy(来自 Christoph Gohlke 提供的 Python 包)
更多详细信息在这里:http ://pastebin.com/raw.php?i=wxuFbyVg

我试过很简单:
%timeit np.dot(np.ones((1000,1000)), np.ones((1000,1000)))

并得到了这个结果:

我认为上面是一个不好的例子,我搜索了许多可用比较中的一个,即第一个谷歌点击:http ://dpinte.wordpress.com/2010/01/15/numpy-performance-improvement-with-the-mkl/

我测试了相同的功能:

所以 ATLAS 编译的 Numpy 出于某种原因有最好的结果。
有谁知道可能是什么问题?

0 投票
1 回答
1087 浏览

c++ - MKL Intel C++ 和准随机数生成器

我正在使用 MKL Intel 进行随机数计算。我使用准随机算法。此外,在我看来,生成的数字根本不是随机的。我知道准随机算法将提供最大化空间占用的采样点。因此,它们不需要完全出乎意料和随机,而只是为了适当地覆盖空间。

我想以随机方式使用这个数字,而不是让它们以预期的方式排序,以便在使用这些“随机”点之前,我对它们进行置换。

我没有正确使用 MKL 库吗?还是听起来很正常,因为正如我所提到的,点是为了覆盖整个空间,而不是完全随机?

如果一些 MKL 或准随机生成。有用户,欢迎指教。

问候。

0 投票
1 回答
1856 浏览

dynamic-linking - 在 Linux 英特尔编译器 (icc) 中面临与 mkl 的链接问题

这是linux中的命令行:

运行此命令后:我得到了一长串未定义的参考错误。我也在 eclipse 中尝试过,但也无法解决那里的链接问题。如果有人帮助我运行这样的小代码,我会很高兴:

我的服务器

已安装 ICC 64 位。

提前致谢。

0 投票
1 回答
1877 浏览

python - 无法在 ubuntu 12.04 上使用 mkl 构建 scipy

我正在尝试使用 Intel MKL 在 64 位 Ubuntu 12.04 上构建 numpy 和 scipy。

我已经安装了所有的先决条件。INTEL C++ 编译器和 Fortran 编译器版本都是 2011 sp1 10.319,MKL 是其中的版本。

我正在按照INTEL 网站上的安装说明进行操作。

我已经成功构建并安装了 numpy。

在构建 scipy 时,我遇到了如下问题:

当我尝试将 sudo 放在安装行的前面时,我得到了:

有人可以帮我吗?

谢谢!

0 投票
1 回答
3149 浏览

c++ - 具有 double、float 和 int 数据类型的英特尔 MKL 矩阵产品性能

我正在尝试使用英特尔 MKL 库使用它们提供的 Boost::uBLAS 接口(包括 mkl_boost_ublas_matrix_prod.hpp)执行矩阵乘法。我的数据只是整数,所以我尝试将我的矩阵模板类型更改为 int 并且性能下降了,这主要是由于代码只使用了一个 CPU 内核而不是我可用的 12 个内核。我在 MKL 文档中找不到任何东西来解释为什么整数没有使用 MKL 的 OpenMP 多线程功能(我猜他们根本没有使用 MKL?)。

此外,与浮点数相比,我看到双打的性能下降了 50%。

问题:

  1. 为什么浮点数和双精度数之间存在差异?
  2. 为什么我不能使用整数?

以下是我从以下代码得出的结果:

使用的代码(根据需要替换两个 matrix< type > 行):

编译:

处理器:

MKL 不使用超线程,因为他们说这对任何事情都没有帮助,所以我有 12 个线程可用,而不是 24 个。

0 投票
3 回答
982 浏览

python - Enthought Python 中的线程化 FFT

Numpy/SciPy 中的快速傅里叶变换 (FFT) 没有线程化。Enthought Python 附带英特尔 MKL 数值库,该库能够进行线程 FFT。如何访问这些例程?