如何以正确的方式使用英特尔 oneAPI?

Posted

技术标签:

【中文标题】如何以正确的方式使用英特尔 oneAPI?【英文标题】:How to use Intel oneAPI in right way? 【发布时间】:2021-12-30 16:29:27 【问题描述】:

今天我想知道oneAPI中的Conda和Anaconda中的Conda有什么区别以及如何以正确的方式使用oneAPI以获得最大的使用量最新的英特尔酷睿第 12 代。

安装 oneAPI 后,它们还包含 conda。但是,在以下情况下,我不能将其用作正常情况:

-它不包含 conda-build 和像 Anaconda 中的普通 conda 一样的几个包。

-不能从 Conda OneAPI 的“基础”创建和克隆其他环境。如果我将“base”克隆到新的conda create --name new_env --clone base,然后激活“new_env”,我将无法再使用 Conda,它会警告我,就像 conda 不存在一样。警告如下。

'conda' is not recognized as an internal or external command.
operable program or batch file.

但是,在 conda oneAPI 上训练任何 DNN 模型都比在 Anaconda 中的 conda 上快 30%,并且在数据预处理任务中也有更好的性能。我真的很想在 Conda OneAPI 环境中始终使用 Python 的优势,就像在 Anaconda 中的普通 Conda 一样。那么,如何将它们合二为一,使其更易于使用,或者如何解决oneAPI工具包的Conda环境问题

【问题讨论】:

我对 oneAPI 一无所知,但该错误消息表明您没有 conda 可执行文件,因此此处似乎配置错​​误。 【参考方案1】:

一个 api 中的 Conda 可执行文件不支持所有功能 由 anaconda 中的 conda 支持。

一个 api 中的 Conda 可执行文件可用于下载两个英特尔 优化包以及 anaconda 包。

一个 API 中的 Conda 可执行文件提高了英特尔的性能 优化包。

由于 setvars 不是来源,您会收到此警告

      'conda' is not recognized as an internal or external command.
   operable program or batch file.
   

将 Intel Conda 包与 Continuum 的 Python 一起使用如果您想将 Intel 包安装到具有 Continuum 的环境中 python,不要将“intel”通道添加到您的配置文件中 因为这将导致您的所有 Continuum 软件包被替换 与英特尔构建(如果可用)。而是指定“intel”频道 在命令行上使用“-c intel”参数和 “--no-update-deps”标志以避免切换其他包,例如 python 本身,英特尔的构建。

使用以下命令安装英特尔优化包 一个 api 中的 conda 可执行文件:

conda install "Package_name" -c intel --no-update-deps here Package_name can be(mkl,numpy..)

可在此处查看可用的 Intel 软件包:https://anaconda.org/intel/packages

英特尔优化的 numpy 包的示例安装:

conda install numpy -c intel --no-update-deps

【讨论】:

【参考方案2】:

我也遇到了这个问题,在 oneAPI 中克隆基础环境后,conda 从 Windows 10 的路径中消失,调用 setvars.bat 也无济于事。尝试打开 Intel 64 for Visual Studio 2019 的 Intel oneAPI 命令提示符(或与 oneAPI 一起安装的其他适当 cmd)并手动添加 conda 的路径(确保您在下面的目录中有 conda.exe)

set PATH=%PATH%;"C:\Program Files (x86)\Intel\oneAPI\intelpython\python3.9\Scripts"

然后运行conda init 并重新打开相同的命令提示符。

如果您计划克隆环境或安装软件包,另一个建议是以管理员身份打开 oneAPI 命令提示符。

【讨论】:

以上是关于如何以正确的方式使用英特尔 oneAPI?的主要内容,如果未能解决你的问题,请参考以下文章

神经网络性能提升两倍,英特尔®深度学习加速技术和oneAPI推动大型强子对撞机研究

将英特尔 OneAPI 与 Anaconda 结合使用

英特尔携手中科院计算所建立中国首个 oneAPI 卓越中心

赋能开发者,英特尔发布oneAPI 2022工具包

如何修复 oneAPI 代码上的编译错误

英特尔首推异构编程神器 oneAPI,可让程序员少加班!