新版PyTorch:AI任务加速与Intel GPU集成

news2025/1/11 7:48:48

--->更多内容,请移步“鲁班秘笈”!!<---

最近的Pytorch 2.4 推出AI任务加速,提供对Intel GPU的支持。为了进一步加速 AI任务,PyTorch 2.4现在为Intel数据中心GPU Max系列提供支持,该系列将Intel GPU和SYCL软件堆栈集成到标准PyTorch堆栈中。<下图为各个组件被引入到pytorch的各个版本信息。小编建议快速浏览,第二章节再仔细理解这些组件的内涵!>

借助Intel GPU支持,读者可以拥有更多GPU选择,并可以使用相同的前后端 GPU编程模型。现在可以在Intel GPU上部署和操作工作负载,几乎不需要额外的编码。为了支持流式处理设备,此版本通用化了PyTorch设备和运行时(设备、流、事件、生成、分配和守护进程)。这种泛化不仅促进了PyTorch在更加广泛的硬件上部署,还促进了更多硬件后端集成。

除了为英特尔数据中心GPU Max系列提供用于训练和推理的关键功能外,Linux*上的PyTorch 2.4版本还保持了与PyTorch支持的其他硬件相同的用户体验。假如从CUDA*迁移代码,则可以在Intel GPU上运行现有应用程序代码,只需对设备名称进行最少的代码更改。​

# CUDA Code tensor = torch.tensor([1.0, 2.0]).to("cuda")  # 只需要改动代号就可以直接迁移至Intel GPU tensor = torch.tensor([1.0, 2.0]).to("xpu")

​PyTorch 2.4和Intel GPU的相关功能如下:

  • 训练和推理工作流。

  • 支持 torch.compile和eager的基本函数。在eager和compile模式下能够完全运行Dynamo Hugging Face* 基准测试。

  • 支持FP32、BF16、FP16 和自动混合精度 (AMP) 等数据类型。

  • 支持在Linux和Intel数据中心GPU Max系列上运行。

附录:看图理解术语

Eager mode and graph mode:

它们是在Pytorch 2.0引入了两种新的操作执行模式。

  • Eager mode: 执行模式,在这种模式下操作会立即执行,而不是等待整个计算图的构建。这种模式更直观,适合调试和开发。

  • Graph mode:执行模式,在这种模式下操作会被记录到一个计算图中,然后整个图会被优化和执行。这种模式通常更高效,适合生产环境。

SYCL:

它是一个跨平台抽象层,允许算法在硬件加速器(如 CPU、GPU 和 FPGA)之间切换,而无需更改任何代码行。SYCL是由Khronos Group开发的免版税开放标准,允许开发人员使用标准 C++ 编写异构架构。此外,其编程模型使用单一源,允许在单个源文件中编写主机和内核代码。

由于各种SYCL实现往往遵循相似的规范,因此无论选择何种实现,代码都应该成功编译和运行。但是它们并非都提供相同的功能,因为它们的开发速度不同,专注于不同的架构,或者与最新的 SYCL 规范有所不同。其实所有实现都支持在具有最流行的现有架构的 CPU 上执行。

Aten operators:

ATen是PyTorch的底层张量计算库,它提供了高效的张量操作和内存管理功能。ATen基于C++编写,因此具有高效和可扩展性。它还提供了与PyTorch API兼容的接口,以便在Python环境中方便地使用。ATen的设计理念是提供易于使用且高效张量计算库,适用于构建大型神经网络模型。

oneAPI Math Kernel Library (oneMKL):

英特尔® oneAPI数学核心函数库 (oneMKL),以前称为英特尔数学核心函数库,是一个针对科学、工程和金融应用的优化数学库。核心数学函数包括BLAS、LAPACK、ScaLAPACK、稀疏求解器、快速傅里叶变换和向量数学。

oneAPI Deep Neural Network Library (oneDNN):

英特尔® oneAPI深度神经网络库 (oneDNN) 提供高度优化的深度学习构建模块实现。借助这个开源的跨平台库,深度学习应用程序和框架开发人员可以对 CPU、GPU 或两者使用相同的 API,从而抽象出指令集和性能优化的其他复杂性。

Triton:

Triton 是一种用于并行编程的语言和编译器。它旨在提供一个基于 Python 的编程环境,用于高效编写能够在现代GPU硬件上以最大吞吐量运行的自定义DNN计算内核。

Kineto:

Kineto是一个性能分析工具,用于监控和分析模型的执行性能。研究人员和工程师经常难以在计算上扩展他们的模型,因为没有意识到工作负载中的性能瓶颈。大型分布式训练作业可能会生成数千个跟踪,其中包含太多数据,人类无法检查。这就是整体分析的作用。

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

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

相关文章

Java答题系统练习模拟考试系统

&#x1f4dd;【学霸秘籍】答题系统模拟考试系统&#xff0c;你的提分神器来啦&#xff01;&#x1f680; &#x1f4da; 开篇引入&#xff1a;学习路上的得力助手 嘿&#xff0c;小伙伴们&#xff01;是不是又在为即将到来的考试焦头烂额&#xff1f;&#x1f623; 是不是觉…

二分查找(多版本)

1.基础版 public class erfenchazhao {public int test(int arr[],int target){int i 0; //定义左指针int j arr.length-1;//定义右指针int m; //定义中间值while(i<j){ //判断条件m (ij)>>>1;if(target < arr[m]){ //目标值在左边j m - 1;}else…

【python】在Python代码中执行Linux命令的详细用法教程

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…

昇思25天学习打卡营第01天|昇思MindSpore大模型基础介绍

昇思MindSpore和华为昇思MindSpore大模型学习打卡系列文章&#xff0c;本文仅供参考~ 文章目录 前言一、昇思MindSpore是什么&#xff1f;二、执行流程三、设计理念四、层次结构五、Huawei昇腾AI全栈 前言 随着计算机大模型的不断发展&#xff0c;Ai这门技术也越来越重要&#…

免费【2024】springboot 宠物领养救助平台的开发与设计

博主介绍&#xff1a;✌CSDN新星计划导师、Java领域优质创作者、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流✌ 技术范围&#xff1a;SpringBoot、Vue、SSM、HTML、Jsp、PHP、Nodejs、Python、爬虫、数据可视化…

Prozyme糖样本检测平台--GlykoPrep® Rapid N-Glycan Preparation with APTS

单克隆抗体已成为生物制药行业具有潜力的新兴蛋白候选药物。其药物研发流程包括一系列精细的控制和评估步骤&#xff0c;需要仔细、严格地监测目标化合物的治疗稳定性及有效性。因此&#xff0c;在商业化前的每个阶段对单克隆抗体进行全面表征是极其有益的。在大量研究成熟的蛋…

用Python打造精彩动画与视频,3.1 安装和设置 MoviePy

第3章 开始你的第一个视频项目 MoviePy 3.1 安装和设置 MoviePy 视频处理在多媒体内容创作中起着至关重要的作用。MoviePy 是一个用于视频编辑的 Python 库&#xff0c;它可以让你轻松地进行视频剪辑、合并、特效添加等操作。通过 MoviePy&#xff0c;你可以用简单的 Python…

基于Java+SpringBoot+Vue的的课程作业管理系统

前言 ✌全网粉丝20W,csdn特邀作者、博客专家、CSDN[新星计划]导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取项目下载方式&#x1f345; 哈喽兄弟们&#xff0c;好久不见哦&#xff5…

IEEE 快刊合集!期刊选的好,JCR1区照样轻松拿下~

【SciencePub学术】今天小编给大家推荐2本计算机领域的SCI&#xff0c;均隶属于IEEE出版社&#xff0c;虽比不上前几日给大家介绍的IEEE-Trans系列的那本期刊优秀&#xff0c;但是放在行业内还是很拿得出手的。 现在提交&#xff0c;可免费预审&#xff0c;预审通过后录用率100…

失业负债女孩,下班后用AI做副业,快速翻身上岸

** - 我们应该把负债看成是成长的助力&#xff0c;而不是搞垮骆驼的稻草。 负债上岸&#xff0c;没有更多的捷径&#xff0c;唯有“开源节流”&#xff0c;节流就是尽可能节约花费&#xff0c;把生活支出减少&#xff0c;开源就是尽可能多的增加自己的副业收入。 负债后的至…

【通俗理解】“多即不同”观念的科学内涵——从对称破缺到科学层次结构的探索

【通俗理解】“多即不同”观念的科学内涵——从对称破缺到科学层次结构的探索 对称破缺与科学层次结构的类比 你可以把对称破缺比作一个“建筑师”&#xff0c;它构建了科学大厦的基础框架。而科学层次结构则是一个“城市规划师”&#xff0c;它规划了这些基础框架如何组合成一…

【附精彩文章合辑】跨界对话:黄仁勋与扎克伯格的“外套交换”与未来展望

跨界对话&#xff1a;黄仁勋与扎克伯格的“外套交换”与未来展望 在科技界的浩瀚星空中&#xff0c;两位璀璨的名字如同双子星般交相辉映——NVIDIA的创始人兼CEO黄仁勋&#xff08;Jensen Huang&#xff09;与Facebook&#xff08;现更名为Meta&#xff09;的掌舵人马克扎克伯…

快速开启react+electron应用,搭建启动问题

注意&#xff1a; React 本地启动在 3000端口Electron 在创建 BrowserWindow 的时候&#xff0c;可以读取本地的文件或者是 url开发环境 读取localhost: 3000生产环境 需要加载本地成型以后的本地文件&#xff0c;打包的时候再考虑 一 react 脚手架 create-react-app 快速搭建…

iTerm2使用手册

iTerm2字体 参考文章&#xff1a;iTerm2 安装 SF Mono 字体 iTerm2默认的字体不太好看&#xff0c;感觉Mac自带的终端的字体看起来很舒服&#xff0c;于是让iTerm2和Mac自带终端保持一致 找到Terminal.app下面的字体 执行 cp *.otf ~/Library/Fonts/ 然后在iTerm2中设置字…

ElementUI,el-input输入框max、min限制最大最小值失效

<el-input type"number" v-model"loadNodesNum" :min"1" :max"5" style"width: 240px;overflow: hidden;"><el-button slot"append" click"handleMaxLoadNum(1)">负载最多的节点TOP</el…

记一次JS到WAF绕过上传

一、前言 某渗透项目中和队友配合挖到一个通用系统漏洞&#xff0c;主要对JS接口进行分析&#xff0c;经历一波绕waf的曲折最终getshell&#xff0c;文笔粗劣&#xff0c;大佬勿喷。 二、JS分析 在看到某系统仅仅一个登陆框&#xff0c;一波弱口令尝试和目录扫描&#xff0c…

PHP教务排课系统小程序源码

教务排课系统&#xff1a;智慧教育的新篇章 &#x1f4da; 开篇&#xff1a;告别手动排课的繁琐时代 在这个信息爆炸的时代&#xff0c;教育领域的每一个细节都在向智能化迈进。你是否还记得&#xff0c;曾经老师们为了编排一张完美的课程表&#xff0c;需要花费多少时间和精…

JMeter接口测试-5.JMeter高级使用

JMeter高级使用 案例&#xff1a; 用户登录后-选择商品-添加购物车-创建订单-验证结果 问题&#xff1a; JMeter测试中&#xff0c;验证结果使用断言&#xff0c;但断言都是固定的内容假如要判断的内容(预期内容)是在变化的, 有时候还是不确定的, 那该怎么办呢? 解决&…

【MySQL】访问mysqld的方式{命令行客户端/vscode-c-api客户端/图形化界面:mysql/navicat}

文章目录 1.访问数据库2.vscode-c-api客户端方法一&#xff1a;重新安装相关数据方法二&#xff1a;直接使用之间安装mysql的附加数据查看mysql文档方式使用c-mysql-api库访问mysqld代码理解mysql_res 3.图形化界面 1.访问数据库 命令行式客户端向mysqld下达指令 网页版 图形化…

ViVim编辑器

文章目录 基本介绍常用的三种模式1. 正常模式2. 插入模式3. 命令行模式 常用快捷键环境参数配置光标移动查找与替换删除复制粘贴模式切换 基本介绍 Linux 系统会内置 vi 文本编辑器 Vi是最早的文本编辑器之一&#xff0c;主要用于Linux和Unix操作系统中的文本编辑。它是一个纯…