实战精选 | 如何在一台 Linux AI PC 上高效运行 OpenVINO™

点击蓝字

关注我们

作者:Adrian Boguszewski,英特尔 AI 软件布道师

           武卓博士,英特尔 AI 软件布道师

什么是 AI PC,为什么它有一个特殊的名字?

AI PC 是时下 PC 领域的一个热门话题。与普通 PC 不同,AI PC 配备了先进的硬件,例如强大的 GPU,可以超快地运行具有生成式AI或大语言模型等繁重计算要求的 AI 模型推理,更重要的是,它还具有称为神经处理单元 (NPU) 的专用 AI 芯片。NPU 针对低功耗进行了优化,同时保持了高计算性能,这使其在处理特定 AI 工作负载方面表现出色,例如背景模糊、噪声去除等运行连续推理而不会快速耗尽电池电量的AI推理任务。因此,基本上,如果您需要一台能够处理繁重的 AI 工作或能够更有效地管理复杂的多线程 AI 应用的计算机,那么配备了英特尔®酷睿™Ultra处理器的 AI PC  就是为您打造的。有关这款 AI PC 的更多信息,请参阅我们的文章 https://medium.com/openvino-toolkit/ai-is-coming-to-the-pc-ai-pc-essentials-ba2aa8686a59 。

9fc4b35fad4c675a9578c6aabbbaf40f.png

在 OpenVINO™ 中验证设备可用性

OpenVINO™ 是英特尔推出的一款针对AI模型进行优化、推理加速以及快速部署的开源 AI 工具套件。针对配备了英特尔®酷睿™Ultra 处理器的 AI PC ,可以帮助 AI 模型在 CPU、GPU 以及 NPU 上进行快速部署以及推理加速。接下来,我们将利用 OpenVINO™ 来验证AI PC 上这些硬件推理设备的的可用性。在本文中,我们将使用 Ubuntu 24.04,因为这是最新的 Ubuntu LTS 版本。

让我们从全新的 Ubuntu 安装开始。然后,创建一个虚拟环境,并使用以下命令安装 OpenVINO:

python3 -m venv venv
source venv/bin/activate
pip install openvino

在 Python 解释器中运行此代码,以验证哪些设备可供您在AI推理时使用。

import openvino as ov
core = ov.Core()
print(core.available_devices)

此时,你应该只能看到[‘CPU’]这个设备,意味着你目前只能访问 CPU。这个可不是什么好事!毕竟,你的笔记本电脑也有 GPU 和 NPU!那么,让我们解决这个问题。

如何在 Linux 上启用所有设备

我们将从 GPU 开始。第一步是安装所有驱动程序和必要的软件包。为此,您应该添加一个使用 GPG 密钥签名的 Intel 软件包存储库。还有其他方法(您可以在https://dgpu-docs.intel.com/driver/client/overview.html查看它们),但这种方法对于安装和未来更新来说是最简单的。

sudo apt update
sudo apt install -y gpg-agent wget
wget -qO - https://repositories.intel.com/gpu/intel-graphics.key | sudo gpg --yes --dearmor --output /usr/share/keyrings/intel-graphics.gpg
echo "deb [arch=amd64,i386 signed-by=/usr/share/keyrings/intel-graphics.gpg] https://repositories.intel.com/gpu/ubuntu jammy client" | sudo tee /etc/apt/sources.list.d/intel-gpu-jammy.list
sudo apt update

好的,是时候安装 GPU 推理所需的一切了。

sudo apt install -y \intel-opencl-icd intel-level-zero-gpu level-zero \intel-media-va-driver-non-free libmfx1 libmfxgen1 libvpl2 \libegl-mesa0 libegl1-mesa libegl1-mesa-dev libgbm1 libgl1-mesa-dev libgl1-mesa-dri \libglapi-mesa libgles2-mesa-dev libglx-mesa0 libigdgmm12 libxatracker2 mesa-va-drivers \mesa-vdpau-drivers mesa-vulkan-drivers va-driver-all vainfo hwinfo clinfo

完成此步骤后重新启动。

sudo reboot

让我们再次运行下面的 Python 代码。

import openvino as ov
core = ov.Core()
print(core.available_devices)

您现在应该看到的是 CPU 和 GPU。因此,唯一缺少的设备是 NPU。oneTBB 是 intel-driver-compiler-npu 的依赖项,因此必须先安装。

sudo apt install libtbb12

之后,我们需要下载并安装 NPU 驱动程序和所有相关软件包。

wget https://github.com/intel/linux-npu-driver/releases/download/v1.5.0/intel-driver-compiler-npu_1.5.0.20240619-9582784383_ubuntu22.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.5.0/intel-fw-npu_1.5.0.20240619-9582784383_ubuntu22.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.5.0/intel-level-zero-npu_1.5.0.20240619-9582784383_ubuntu22.04_amd64.deb
wget https://github.com/oneapi-src/level-zero/releases/download/v1.17.2/level-zero_1.17.2+u22.04_amd64.deb

sudo dpkg -i *.deb

我们还需要为我们的加速器(NPU)分配正确的组和权限,并将我们的用户添加到渲染组中(请将<your-user-name>替换为您的用户名)。

sudo bash -c "echo 'SUBSYSTEM==\"accel\", KERNEL==\"accel*\", GROUP=\"render\", MODE=\"0660\"' > /etc/udev/rules.d/10-intel-vpu.rules"
sudo usermod -a -G render <your-user-name>

最后一次重新启动以应用所有更改...

sudo reboot

让我们再次检查可用的设备。

import openvino as ov
core = ov.Core()
print(core.available_devices)

CPU、GPU 和 NPU 现在应该可见了!可以开始愉快地用所有设备运行AI推理了!

如果对 NPU 可见性有任何问题,请访问此https://github.com/intel/linux-npu-driver/releases/tag/v1.5.0.

通知及免责声明

性能因使用情况、配置和其它因素而异。如需了解详情,请访问https://edc.intel.com/content/www/us/en/products/performance/benchmarks/overview/。

性能结果基于截至配置中显示的日期的测试,可能无法反映所有公开可用的更新。有关配置详细信息,请参阅备份。没有任何产品或组件可以绝对安全。您的成本和结果可能会有所不同。英特尔技术可能需要支持的硬件、软件或服务激活。

© 英特尔公司。英特尔、英特尔徽标和其他英特尔标志是英特尔公司或其子公司的商标。

---------------------------------------

*OpenVINO and the OpenVINO logo are trademarks of Intel Corporation or its subsidiaries.

-----------------------------

 OpenVINO 中文社区 

微信号 : openvinodev

B站:OpenVINO中文社区

“开放、开源、共创”

致力于通过定期举办线上与线下的沙龙、动手实践及开发者交流大会等活动,促进人工智能开发者之间的交流学习。

○ 点击 “ 在看 ”,让更多人看见

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/44931.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI绘画Stable Diffusion超现实风格电商场景,五个电商专用LoRA分享,制作电商场景变现教程!

前言 本次教程将使用AI绘画工具 Stable Diffusion 进行讲解&#xff0c;如还未安装SD的小伙伴可以看我往期入门教程2024最新超强AI绘画Stable Diffusion整合包安装教程&#xff0c;一键教你本地部署&#xff01;&#xff0c;安装包请扫描免费获取哦https://blog.csdn.net/z199…

招采全流程电子化优势及重要功能环节(数智化招采系统)

招投标全流程电子化&#xff0c;是加速招标采购领域数字化转型、创新招标采购交易机制的重要举措。它在构建高效规范、公平竞争、充分开放的大市场环境中起着至关重要的作用。 招采电子化历史沿革 2013年2月&#xff0c;国家发展改革委等八部门发布了《电子招标投标办法》&am…

七款好用的电脑监控软件推荐|电脑屏幕监控软件最新整理!

电脑监控软件在家庭和企业环境中变得越来越重要。它们帮助父母监督孩子的在线活动&#xff0c;也帮助企业确保员工在工作时间内的生产力和数据安全。以下是七款优秀的电脑监控软件推荐&#xff0c;希望能帮助您选择。 固信软件https://www.gooxion.com/ 固信软件 固信软件提供…

Java基础-组件及事件处理(下)

(创作不易&#xff0c;感谢有你&#xff0c;你的支持&#xff0c;就是我前行的最大动力&#xff0c;如果看完对你有帮助&#xff0c;请留下您的足迹&#xff09; 目录 面板组件 说明 常见组件 JScrollPane常用构造方法 JScrollPane设置面板滚动策略的方法 JScrollPane滚…

为什么广告需要教育视频

教育视频作为一种广告工具越来越受欢迎&#xff0c;因为它们能够有效地传达信息并吸引观众的注意力。以下是需要此类视频的几个关键原因&#xff1a; 提高参与度 互动性&#xff1a;教育视频吸引注意力&#xff0c;让观众长时间参与&#xff0c;并让他们参与学习过程。产品演…

测试用例设计思路与常用方法

作为测试人员&#xff0c;测试用例设计在工作中的占比是很高的&#xff0c;而且是非常重要的一步&#xff0c;测试用例设计的好坏关系到测试执行过程中的场景覆盖是否完全&#xff0c;最后体现到测试质量是否有保障&#xff0c;所以在这一步做好了不仅能够提高测试效率&#xf…

Windows中安装部署MinIo文件系统,在Spring Boot中引入MinIo依赖实现上传文件到MinIo文件系统中

minio安装部署可以看这篇教程&#xff1a;https://blog.csdn.net/qq_43108153/article/details/134016896 创建桶 将私有设置成公开 导入依赖 <!-- minio --> <dependency><groupId>io.minio</groupId><artifactId>minio</artifactId>…

【后端开发实习】用Nodejs操作mongodb结合Mongoose实现数据库操作

用Nodejs操作mongodb结合Schema实现数据库操作 Mongoose创建Schema定义Schema对象并映射到数据库Model的使用创建文档内容删除文档内容修改文档内容查询文档内容 Document的使用创建并保存将文档对象转换为JSON对象 模块化数据库连接模型初始化 项目部署路由定义后端操作定义启…

如何评价《沧浪之水》这本书?

1、我一辈子的经验就是不要做瞎子&#xff0c;要把事情看清楚&#xff0c;也不能做聋子&#xff0c;该听到的信息要听到&#xff0c;但是要做哑巴&#xff0c;看到了听到了心中有数就行了&#xff0c;可千万别张口说什么。 2、说是人人平等&#xff0c;那是安慰小人物的神话&am…

基于MATLAB的PEF湍流风场生成器模拟与仿真

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 5.完整工程文件 1.课题概述 基于MATLAB的PEF湍流风场生成器模拟与仿真。PEF&#xff08;Primitive Equations Formulation&#xff09;湍流风场模型&#xff0c;是大气科学和气象学中用来描述大气流动和气…

使用django-haystack+whoosh实现全文搜索

前言 好像是上个星期在写代码的时候遇到了一些问题&#xff0c;这个问题似乎我之前也遇到过&#xff0c;印象中好像也写博客进行记录了的&#xff0c;于是就想在我的博客系统中“查找”&#xff08;表示很无奈居然没有搜索功能&#x1f979;&#x1f979;&#xff09;&#xff…

Redis 主从复制,、哨兵与集群

目录 一.redis主从复制 1.redis 主从复制架构 2.主从复制特点 3.主从复制的基本原理 4.命令行配置 5.实现主从复制 6.删除主从复制 7.主从复制故障恢复 8.主从复制完整过程 9.主从同步优化配置 二.哨兵模式&#xff08;Sentinel&#xff09; 1.主要组件和概念 2.哨…

[240711] OpenSSF Scorecard - 自动评估开源项目安全风险的工具

目录 OpenSSF Scorecard - 自动评估开源项目安全风险的工具功能特点使用场景安装和使用竞品和相关项目进一步探索 OpenSSF Scorecard - 自动评估开源项目安全风险的工具 OpenSSF Scorecard 是一个由开源安全基金会&#xff08;Open Source Security Foundation&#xff0c;Ope…

初学SpringMVC之 RestFul 风格、重定向和转发

RestFul 风格改变 URL 形式 比如之前是&#xff1a;http://localhost:8080/add?a1&b2 现在是&#xff1a;http://localhost:8080/add/a/b&#xff08;全是斜杠&#xff09; package com.demo.controller;import org.springframework.stereotype.Controller; import org…

odoo细分权限(根据业务需求)

odoo原生权限编写方式: 根据用户组分配权限 id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink access_sale_order,sale.order,model_sale_order,sales_team.group_sale_salesman,1,1, 1,0 access_sale_order_manager,sale.order.manager,model_…

kaggle提交csv文件

使用colab完成实验后 将要提交的csv文件拖到kaggle网站自己加入的competition就行 如果kaggle网站无法注册&#xff0c;往往是人机验证问题&#xff1a; kaggle网站验证

邮票孔是什么?和V割有什么区别?

邮票孔&#xff0c;也称为安装孔或通孔&#xff0c;是 PCB 中的圆形或非圆形开口&#xff0c;旨在允许将组件或 PCB 本身连接到支撑结构上。这些孔通常从顶面到底部钻穿或冲穿 PCB 层&#xff0c;形成连续的通道。冲压孔有各种尺寸和形状&#xff0c; 取决于 PCB 及其所容纳组件…

餐饮渠道年销4.2亿盒,光明look 30亿的极致大单品是如何策划的?

餐饮渠道年销4.2亿盒&#xff0c;光明look 30亿的极致大单品是如何策划的&#xff1f; 红酒代理业务下滑&#xff0c;从餐饮渠道主攻奶品类 雨帆食品集团&#xff0c;自2002年起是湖北地区红酒代理商&#xff0c;同时兼任光明乳业湖北荆州代理商。然而&#xff0c;到了2011年&a…

python--实验 9 类和对象

知识点 面向对象编程思想 面向对象编程是一种编程范式&#xff0c;它使用“对象”来设计软件&#xff0c;这些对象可以包含数据和代码&#xff0c;即属性和方法。 面向对象的程序设计的核心是对象,世间存在的万物皆为对象&#xff08;上帝式思维&#xff09; 面向对象&#xf…

TomCat服务器安装和配置教程

1.TomCat下载路径 TomCat官方网站&#xff1a;http://tomcat.apache.org 前往该网站下载安装tomcat&#xff0c;tar.gz文件是Linux操作系统的安装版本&#xff0c;zip文件是 windows操纵系统的压缩版本 打开后是如下网站&#xff0c;请下载匹配的操作系统的文件并且选择合适的…