面向 Linux 的英特尔 oneAPI 深度学习框架开发人员工具包
按照英特尔® oneAPI DL 框架开发人员工具包的以下步骤操作:
以下说明假设您已经安装了英特尔® oneAPI 软件。 请参阅 英特尔 oneAPI 工具包页面 安装选项。
- 配置您的系统
- 构建并运行为ample 项目使用命令行。
介绍
如果你想使用 oneDNN 和 oneCCLamples,你必须安装 英特尔® oneAPI 基础工具包. 基础套件包含所有英特尔® oneAPI DL 框架开发人员工具套件(DLFD 套件)组件以及所有必需的依赖项。
如果您希望在不尝试提供的 s 的情况下使用 DL DevKit 库amp文件,你只需要安装 DLFD 工具包。 否则,安装 英特尔® oneAPI 基础工具包.
该工具包是一套开发库,可让您快速轻松地构建或优化深度学习框架,从而充分利用最新的英特尔® 处理器的每一丝性能。 该工具包使深度学习框架具有灵活的选项,包括在 CPU 或 GPU 上的最佳性能。
- 英特尔® oneAPI 深度神经网络库
- 英特尔® oneAPI 集体通信库
英特尔® oneAPI 深度神经网络库
英特尔® oneAPI 深度神经网络库是一个用于深度学习应用程序的开源性能库。 该库包括针对英特尔® 架构处理器和英特尔® 处理器显卡优化的神经网络基本构建块。 该库适用于对提高 Intel CPU 和 GPU 上的应用程序性能感兴趣的深度学习应用程序和框架开发人员。 许多流行的深度学习框架都与该库集成。
英特尔® oneAPI 集体通信库
英特尔® oneAPI 集体通信库是一个库,可有效实施深度学习中使用的通信模式。
- 建立在英特尔® MPI 库之上,允许使用其他通信库。
- 优化以推动通信模式的可扩展性。
- 适用于各种互连:英特尔® Omni-Path 架构、InfiniBand* 和以太网
- 支持深度学习框架(Caffe*、Theano*、Torch* 等)的通用 API
- 该软件包包含英特尔® MLSL 软件开发套件 (SDK) 和英特尔® MPI 库运行时组件。
配置您的系统
英特尔® oneAPI 深度学习框架开发人员工具包
运行 samp使用英特尔® oneAPI DPC++/C++ 编译器和英特尔® 线程构建模块的文件,您必须安装 英特尔® oneAPI 基础工具包 在配置您的系统之前。
有关系统要求的完整列表,请参阅 英特尔® oneAPI 深度神经网络库发行说明.
要配置您的系统,您需要:
- 为 CPU/GPU 或 FPGA 设置环境变量
- 对于 GPU 用户,安装 GPU 驱动程序
- 为具有长时间运行的 GPU 计算工作负载的应用程序禁用 Hangcheck
- 对于 GPU 用户,将用户添加到视频组
为 CLI 开发设置环境变量
为了在命令行界面 (CLI) 中工作,oneAPI 工具包中的工具是通过环境变量配置的。 通过获取 setvars 脚本来设置您的 CLI 环境:
选项 1:每个会话一次源 setvars.sh
每次打开一个新的终端窗口时源 setvars.sh:
您可以在 oneAPI 安装的根文件夹中找到 setvars.sh 脚本,对于 sudo 或 root 用户通常是 /opt/intel/oneapi/,如果以普通用户安装,则通常是 ~/intel/oneapi/。
对于 root 或 sudo 安装:
。 /opt/intel/oneapi/setvars.sh
对于普通用户安装:
。 〜/英特尔/oneapi/setvars.sh
选项 2:一次性设置 setvars.sh
要为您的项目自动设置环境,请将命令 source /setvars.sh 包含在将自动调用的启动脚本中(替换为您的 oneAPI 安装位置的路径)。 对于 sudo 或 root 用户,默认安装位置是 /opt/intel/oneapi/;如果作为普通用户安装,则默认安装位置是 ~/intel/oneapi/。
例如amp文件,您可以将 source /setvars.sh 命令添加到您的 ~/.bashrc 或 ~/.bashrc_profile 或者 ~/.profile file. 要使系统上所有帐户的设置永久生效,请在系统的 /etc/pro 中创建单行 .sh 脚本file源 setvars.sh 的 .d 文件夹(有关更多详细信息,请参阅 关于环境变量的 Ubuntu 文档).
笔记
可以使用配置来管理 setvars.sh 脚本 file,如果您需要初始化库或编译器的特定版本,而不是默认为“最新”版本,这将特别有用。
有关详细信息,请参阅 使用配置 File 管理 Setvars.sh。. 如果您需要在非 POSIX shell 中设置环境,请参阅 oneAPI开发环境搭建 更多配置选项。
对于 GPU 用户,安装 GPU 驱动程序
如果您按照安装指南中的说明安装 GPU 驱动程序,则可以跳过此步骤。 如果您尚未安装驱动程序,请按照 安装指南.
GPU:禁用 Hangcheck
本节仅适用于在原生环境中具有长时间运行 GPU 计算工作负载的应用程序。 不建议将其用于虚拟化或 GPU 的其他标准用途,例如游戏。
GPU 硬件执行时间超过四秒的工作负载是长时间运行的工作负载。 默认情况下,有资格作为长时间运行的工作负载的单个线程被视为挂起并终止。
通过禁用 hangcheck 超时时间,您可以避免此问题。
笔记 如果系统重新启动,hangcheck 将自动启用。 您必须在每次重新启动后再次禁用 hangcheck 或按照说明永久禁用 hangcheck(跨多次重新启动)。
要在下次重新启动之前禁用 hangcheck:
sudo sh -c “echo N> /sys/module/i915/parameters/enable_hangcheck”
要在多次重新启动后禁用 hangcheck:
笔记 如果更新了内核,则会自动启用 hangcheck。 每次内核更新后运行以下过程以确保禁用 hangcheck。
- 打开一个终端。
- 打开 grub file 在 /etc/default.
- 在蛴螬 file, 找到 GRUB_CMDLINE_LINUX_DEFAULT=” 行。
在引号 (“”) 之间输入此文本:
i915.enable_hangcheck=0 - 运行以下命令:
sudo 更新 grub - 重启系统。 Hangcheck 保持禁用状态。
GPU:将用户添加到视频组
对于 GPU 计算工作负载,非 root(普通)用户通常无权访问 GPU 设备。 确保将您的普通用户添加到视频组; 否则,为 GPU 设备编译的二进制文件在普通用户执行时会失败。 要解决此问题,请将非根用户添加到视频组:sudo usermod -a -G video
有关最新的要求列表,请参阅 英特尔® oneAPI 集体通信库发行说明.
运行 Samp项目
运行方式ample 项目使用命令行。
运行 Sample 项目使用命令行
英特尔® oneAPI 深度学习框架开发人员工具包
如果你想使用 oneDNN 和 oneCCLamples,你必须安装 英特尔® oneAPI 基础工具包 (BaseKit).
BaseKit 包含所有英特尔® oneAPI DL 框架开发人员工具包组件以及所有必需的依赖项。
安装 BaseKit 后,您可以运行为amp使用中的说明 构建并运行英特尔® oneAPI 深度学习框架开发人员工具包 Samp文件使用命令行.
使用容器
英特尔® oneAPI 深度学习框架开发人员工具包
容器允许您设置和配置用于构建、运行和分析 oneAPI 应用程序的环境,并使用图像分发它们:
- 您可以安装包含预配置了您需要的所有工具的环境的映像,然后在该环境中进行开发。
- 您可以保存环境并使用图像将该环境移动到另一台机器而无需额外设置。
- 您可以根据需要准备具有不同语言和运行时、分析工具或其他工具集的容器。
下载 Docker* 图像
您可以从以下网址下载 Docker* 映像 容器存储库.
笔记 Docker 镜像大约有 5 GB,下载需要大约 15 分钟。 它将需要 25 GB 的磁盘空间。
图片=英特尔/oneapi-dlfdkit
泊坞窗拉“$图像”
通过命令行使用容器
英特尔® oneAPI 深度学习框架开发人员工具包
直接编译并运行容器。
下面使用 –device=/dev/dri(可能在 Linux* VM 或 Windows* 中不可用)启用 GPU(如果可用)。 该命令将以交互模式将您留在容器内的命令提示符下。
图片=英特尔/oneapi-dlfdkit
# –device=/dev/dri 启用 gpu(如果可用)。 在 Linux VM 或 Windows 中可能不可用 docker run –device=/dev/dri -it “$image”
进入容器后,您可以使用 Run a S 与其交互ample 项目使用命令行。
笔记 如果您在代理后面,您可能需要在 -it “$image” 之前包括代理设置:
docker run -e http_proxy=”$http_proxy” -e https_proxy=”$https_proxy” -it “$image”
将英特尔® Advisor、英特尔® Inspector 或 VTune™ 与容器结合使用
使用这些工具时,必须为容器提供额外的功能:
–cap-add=SYS_ADMIN –cap-add=SYS_PTRACE
docker run –cap-add=SYS_ADMIN –cap-add=SYS_PTRACE \
–device=/dev/dri -it “$image”
下一步
英特尔® oneAPI 深度学习框架开发人员工具包
建立自己的项目后,重新view 英特尔® oneAPI 深度学习框架工具包代码 Samp莱斯 了解此工具包的功能。
声明和免责声明
英特尔技术可能需要启用硬件,软件或服务才能激活。
没有任何产品或组件是绝对安全的。
您的费用和结果可能会有所不同。
© 英特尔公司。 英特尔、英特尔徽标和其他英特尔标志是英特尔公司或其子公司的商标。 其他名称和品牌可能会被视为他人的财产。
优化须知
英特尔的编译器可能会或可能不会针对非英特尔微处理器进行相同程度的优化,以实现并非英特尔微处理器独有的优化。 这些优化包括 SSE2、SSE3 和 SSSE3 指令集以及其他优化。 英特尔不保证非英特尔制造的微处理器上的任何优化的可用性、功能或有效性。 本产品中与微处理器相关的优化适用于 Intel 微处理器。 某些不特定于英特尔微体系结构的优化是为英特尔微处理器保留的。 有关本通知涵盖的特定指令集的更多信息,请参阅适用的产品用户和参考指南。
通知修订 #20110804
本文件不授予任何知识产权许可(无论是明示的、暗示的、禁止反言的还是其他方式)。
所述产品可能包含设计缺陷或错误(称为勘误表),这可能导致产品与已发布的规格不符。最新勘误表可应要求提供。
英特尔否认所有明示和默示保证,包括但不限于适销性、特定用途适用性和不侵权的默示保证,以及因履行过程、交易过程或贸易使用产生的任何保证。
文件/资源
![]() |
面向 Linux 的英特尔 oneAPI 深度学习框架开发人员工具包 [pdf] 用户手册 适用于 Linux 的 oneAPI DL 框架开发人员工具包、适用于 Linux 的框架开发人员工具包、适用于 Linux 的开发人员工具包、适用于 Linux 的工具包 |