当前位置: 首页 > news >正文

64位精度HPC计算引擎的十年博弈:AMD如何以性价比颠覆NVIDIA霸权?

若期望一款中央处理器(CPU)具备图形处理器(GPU)级别的浮点运算性能,根据CPU发展路线图,大约需等待六年左右。这显然是一段漫长的等待期,这也解释了为何十五年前众多高性能计算(HPC)中心纷纷从CPU转向GPU。不管这一转变是有意还是无意,都为当下GPU计算引擎在人工智能领域的大规模应用奠定了基础。

从多方面来看,X86架构的CPU已演变为具有通用串行计算能力且带有一定并行计算倾向的处理器。它融合了整数运算与向量运算能力,并且,至少在部分英特尔和AMD的CPU中,还集成了诸如加密、哈希运算等特定功能的加速器,以及矩阵运算引擎(至少过去三代至强处理器是如此,即我们现在所说的至强4、至强5和至强6 )。业界曾预期AMD会在某个阶段将矩阵引擎引入霄龙处理器,但截至目前,AMD尚未实施。Arm架构CPU的设计者或许最终也会跟进。

在一定程度上,GPU是一种大规模并行的通用浮点运算引擎,偶尔也具备整数运算能力。如今,它已成为人工智能训练和某些HPC工作负载的首选引擎。这主要得益于其高带宽和不断降低的浮点精度。较低的精度使得人工智能训练所依赖的统计算法能够使用分辨率越来越低的数据,从而提升实际运算性能。然而,正如我们过去所指出的,许多计算任务实际上需要更高而非更低的精度,以提高模拟和模型结果的准确性。虽然人工智能能让我们在数据模糊的情况下仍能识别出“猫”,但有许多应用确实需要双精度(FP64)处理。若条件允许,我们甚至可能探讨128位或256位的FP128或FP256处理(这听起来或许有些超乎想象)。
在这里插入图片描述
长期以来,我们一直认为GPU加速器对低精度运算的关注程度超出了许多HPC中心的期望,而英伟达最新几代GPU更是印证了这一点。GPU价格上涨速度快于FP64性能提升速度,因为“Hopper”H100和H200,以及“Blackwell”B100和B200加速器,都致力于将数据分辨率和计算精度降低至FP8,再到FP4格式,以提高人工智能训练和推理的吞吐量。英伟达一直谨慎地在其GPU计算引擎中保留向量和张量单元,并维持一定的FP64和FP32性能,但FP64性能的性价比却不尽人意。

近期,Elad Raz在《The Next Platform》上发表的《妥协的隐性成本:为何高性能计算仍需要高精度》一文,再次提醒我们HPC模拟和建模对高精度浮点运算的需求。Raz是NextSilicon公司的首席执行官,该公司推出了以HPC为核心的Maverick系列数学加速器。2024年10月,我们曾报道过NextSilicon的Maverick - 1和Maverick - 2可重构数据流引擎。目前,我们虽尚未获取Maverick芯片的详细参数,但掌握了英伟达和AMD GPU,以及英特尔和AMD CPU的FP64性能数据,这些产品在各自的计算细分市场中占据主导地位。

我们极为重视FP64性能,期望那些从事全球最复杂模拟计算的用户,如进行天气和气候建模、材料模拟、湍流气流模拟以及其他数十种绝对依赖FP64浮点运算的关键HPC工作负载的用户,能够从所购买的计算引擎中获得高价值回报。

在深入探讨我们整理和绘制的核心计算引擎向量和张量单元数据之前,我们有以下几点观察。

第一,过去我们常将矩阵运算视为一个通用术语,而实际上矩阵是一种特殊的低维二维张量,向量则是更低维的一维张量。因此,我们在此对比的是计算引擎中向量单元和张量单元独特且不同的性能。并非所有代码都已移植到张量单元,部分代码仍需在向量单元上运行。

第二,大致而言,在当前生成式人工智能革命阶段,英伟达设计的人工智能训练和推理GPU也具备一定的HPC处理能力,而AMD制造的HPC GPU也能进行一些人工智能训练和推理。

2012年至2020年间,英伟达GPU向量单元的FP64理论峰值性能提升了8.3倍(即2012年的“开普勒”K20和2020年的“安培”A100 )。配备“Hopper”H100和H200(两者GPU相同,仅内存带宽不同)后,向量的理论峰值性能提升了3.5倍,达到33.5万亿次浮点运算。在非稀疏矩阵(即密集矩阵)情况下,英伟达GPU张量核心的性能是A100和H100的两倍,分别为19.5万亿次和67万亿次浮点运算。

去年发布并现已量产的“Blackwell”B100,其向量FP64峰值性能仅为30万亿次浮点运算,较HopperGPU的FP64峰值性能下降了10.5%。在张量核心上,FP64性能同样为30千万亿次浮点运算,较HopperGPU张量核心的FP64峰值性能下降了55.2%。当然,BlackwellB200的向量和张量单元的FP64性能均为40万亿次浮点运算,与“Grace”CG100 CPU搭配的GB200,英伟达将其向量和张量的FP64峰值性能提升至45万亿次浮点运算。关键在于,Blackwell系列中,张量FP64性能并非向量FP64的两倍,而且在很多情况下,采用Blackwell系列的客户需花费更多资金,却只能获得比HopperGPU更低的FP64运算能力。

对于需要最高精度计算的HPC工作负载而言,若能获取“二手H100”,这似乎是一个颇具性价比的选择。

近年来GPU市场的积极变化在于,市场中出现了两个有力的供应商,AMD进入该领域并展现出强大的竞争力。自2020年底推出“Arcturus”MI100,以及2021年11月推出“Aldebaran”MI250X后,这种竞争力愈发显著。在橡树岭国家实验室“前沿”超级计算机中使用的MI250X,其向量单元的FP64峰值为47.9万亿次浮点运算,张量单元的峰值为95.7万亿次浮点运算。MI100在向量性能上比Hopper H100/H200高出19%,但没有张量单元。MI250X同时具备向量和张量单元,在FP64峰值运算能力上比Hopper GPU高出近43%。MI300X的向量运算能力达到81.7万亿次浮点运算,张量运算能力达到163.4万亿次浮点运算,相比之下,GB200中使用的Blackwell GPU,其向量和张量的最佳性能仅为45万亿次浮点运算。这意味着MI300X在FP64向量性能上提升了1.8倍,在FP64张量性能上提升了3.6倍。

AMD的产品价格也更具优势。我们预估,GB200中使用的单个BlackwellB200成本约为4万美元,而MI300X仅需约2.25万美元。对比MI300X与B100、B200以及搭配Grace的B200,AMD在FP64运算方面的性价比优势在3.2倍至7.3倍之间。

英伟达拥有庞大的用于HPC和人工智能的CUDA软件堆栈,在低精度浮点运算和运行基础模型的其他技术方面具有优势。但我们在此讨论的是HPC工作负载。毕竟,我们既是“下一个人工智能平台”,也是“下一个高性能计算平台”。

出于研究目的,我们绘制了英特尔至强和AMD霄龙处理器随时间变化的FP64性能图,并计算了这些设备的性价比,将它们与2012年以来英伟达和AMD的GPU进行对比。

需要注意的是,以下图表展示的是向量和张量单元FP64数学运算的理论峰值性能,并非考虑了特定计算引擎架构特性导致无法达到峰值的最高可实现性能,更不是一套HPC应用程序的最高持续性能。我们使用的是基础时钟速度,而非超频速度。

我们旨在描绘FP64计算市场的格局,以及经济效益如何随时间变化。这为NextSilicon的Maverick - 2等新设备,以及上述常见厂商的下一代GPU和CPU,乃至未来可能出现的自主研发的Arm或RISC - V CPU奠定了发展基础。

这是针对当时最高配置、核心数最多的产品,且不考虑英特尔几次使用非标准至强AP封装进行双路插槽的情况。

有些信息在普通图表中一目了然,有些则需要对数图表才能更清晰地展现差异。所以我们制作了两种图表。从图表中可以看出:在图表底部,英特尔和AMD CPU的性能表现几乎难以察觉,但能够清晰看到英伟达如何降低其GPU的张量FP64性能,以及AMD GPU如何实现超越。(图表时间跨度为2012年1月至2025年5月,X轴上的月度数据难以看清,但这并不影响整体分析。)
在这里插入图片描述

若切换到对数视图,会发现一些有趣的现象:AMD GPU直到MI250X才拥有张量单元。在此之前,英特尔至强和AMD霄龙CPU在向量FP64吞吐量上,仅比GPU慢约三倍。2020年底,英伟达和AMD大幅提升了GPU向量性能,英伟达还增加了张量核心,CPU和GPU在FP64性能上的差距就此显著拉开。
在这里插入图片描述

另一个值得关注的点是,2016年AMD基于“Vega”架构推出MI25,英特尔推出“Broadwell”至强E5 - 2699 v4 CPU时,它们的FP64性能相同。这更多反映的是Vega架构的情况,而非Broadwell架构。这也表明,过去几年AMD在GPU领域取得了巨大进步。还能看到,“那不勒斯”霄龙6001处理器的性能远超MI25,同期推出的“至强Haswell”处理器也是如此。

这是CPU和GPU性能唯一一次出现重叠的情况,并且可以看到AMD在GPU的FP64吞吐量上迅速赶上英伟达,并持续保持领先。此外,从对数图中可以看出,在CPU的FP64向量吞吐量方面,AMD通常也持续领先于英特尔。

性能固然重要,成本也是关键因素。那么这些设备在FP64计算的性价比方面表现如何呢?

一个显著的现象是,英特尔在性价比提升方面进展迅速,这无疑受到了GPU计算的影响,GPU计算的性价比更高。英特尔的性价比曲线比英伟达的曲线陡峭得多,部分原因是英伟达在架构选择上减少了FP64性能的提升,而AMD和英特尔则持续提升。英特尔还大幅削减了“ Granite Rapids”至强6处理器的价格,使其与AMD都灵Zen 5核心处理器价格更接近,但在FP64向量计算方面,AMD在CPU领域仍比英特尔提供了更高的性价比。
(注:我们未考虑英特尔过去三代至强处理器中的AMX张量单元。目前尚不清楚是否有人将HPC功能卸载到这些张量单元上,但从技术角度而言,这是可行的。)
在这里插入图片描述

切换到对数刻度能更直观地展示英伟达和AMD在GPU FP64计算方面的竞争地位:假设我们的定价准确,AMD在GPU领域显然是性价比的领先者。
在这里插入图片描述

以2022年的英伟达H100为基准,其向量每万亿次浮点运算成本为582美元,张量为291美元。AMD MI250X GPU向量每万亿次浮点运算成本为209美元,张量为104美元。MI300X的GPU价格翻了一倍多,约为2.25万美元,但FP64性能仅提升了1.7倍,所以向量每万亿次浮点运算成本为275美元,张量为138美元。英伟达H200价格比性能相同的H100更高,B100价格更高,峰值性能却更低,尤其是在FP64张量单元上。所以B100的向量或张量单元每万亿次浮点运算成本高达1000美元。B200提升了一些FP64运算能力(提升33%,达到40万亿次浮点运算),但价格约为3.5万美元,向量或张量每万亿次浮点运算成本为875美元。GB200的Blackwell在FP64精度下可达45万亿次浮点运算,价格4万美元,每万亿次浮点运算成本为889美元。

AMD的MI300X有望在HPC领域取得显著的销售成绩,其市场潜力或许超乎想象。这也使得我们推测,其产量可能难以满足众多潜在需求。

同样出于研究兴趣,拥有128个核心的 Granite Rapids至强6 6980P,在进行FP64运算时,向量性能为8.2万亿次浮点运算,每万亿次浮点运算成本为1521美元(几周前降价前为2173美元)。运行频率为2.7GHz、拥有128个核心的AMD霄龙9755,FP64运算能力略超11万亿次浮点运算,每万亿次浮点运算成本为1174美元。这与2018年AMD GPU和2021年英伟达GPU向量单元的每万亿次浮点运算成本相当。 (以上内容来源于nextplatform)

赋创(EMPOWER X),作为高性能计算领域的积极探索者,始终致力于技术创新的前沿,密切关注并吸收最新的科技进展。我们专注于提供高效且可靠的计算解决方案,旨在满足多样化的需求。
在这里插入图片描述
想了解更多有关HPC高性能服务器相关的信息,不管是技术问题还是应用规划,欢迎随时联系我们,期待能为您提供有价值的见解与支持。

相关文章:

64位精度HPC计算引擎的十年博弈:AMD如何以性价比颠覆NVIDIA霸权?

若期望一款中央处理器(CPU)具备图形处理器(GPU)级别的浮点运算性能,根据CPU发展路线图,大约需等待六年左右。这显然是一段漫长的等待期,这也解释了为何十五年前众多高性能计算(HPC&a…...

2P4M-ASEMI照明控制专用2P4M

编辑:ll 2P4M外观与基本结构 2P4M 可控硅通常封装在一个小巧的塑料外壳内,从外观上看,它有着几个标志性的引脚。一般为三脚结构,每个引脚都肩负着不同的使命。其内部结构精密复杂,核心是由多层半导体材料交替堆叠而成…...

【工程管理与安全工程方向 EI会议征稿 | EI Compendex、Scopus收录】2025年工程管理与安全工程国际学术会议 (EMSE 2025)

重要信息: 大会官网:www.ic-emse.com【论文投稿】 大会时间:2025年3月21-23日 大会地点:中国-南京 截稿时间:以官网信息为准 出版信息:<...

VMware work station 与Device/Credential Guard不兼容

1.出现如下错误 按 下Windows徽标键R 然后输入msinfo32.exe&#xff0c;会出现系统信息&#xff0c;在系统信息里找到基于虚拟化的安全性&#xff0c;查看是否打开 gpedit.msc 注册表修改...

STM32开发学习(三)----使用STM32CUBEMX创建项目

前言 开始正式接触代码&#xff0c;学习代码开发&#xff0c;先熟悉STM32CUBEMX软件&#xff0c;控制开发板的GPIO。(STM32F103C8T6)。 正式开始 1.打开软件 2.点击ACCESS TO MCU SELECTOR&#xff0c;进入软件选择&#xff0c;可能会弹出更新&#xff0c;等待更新完成即可。…...

smolagents学习笔记系列(七)Examples-Self-correcting Text-to-SQL

这篇文章锁定官网教程中 Examples 章节中的 Self-correcting Text-to-SQL 文章&#xff0c;主要介绍了如何使用 Agent 对数据库进行查找。 官网链接&#xff1a;https://huggingface.co/docs/smolagents/v1.9.2/en/examples/text_to_sql&#xff1b; 【注意事项】&#xff1a…...

ffmpeg常用方法(一)

FFmpeg是一个非常强大的开源项目&#xff0c;提供了一套可以用来录制、转换数字音频、视频&#xff0c;并能将其转换成不同格式的工具和库。它是命令行工具&#xff0c;意味着它没有图形用户界面&#xff0c;但它能够被嵌入到其他应用程序中。它支持多种操作系统&#xff0c;包…...

c++:多态

1.多态 多态就是多种形态的意思。 分为编译时多态&#xff0c;也叫静态多态&#xff0c;通过传递不同参数的方式使同一个函数好像实现了不同的状态。eg&#xff1a;函数模板&#xff0c;函数重载 还有运行时多态&#xff0c;也叫动态多态。通过使用不同的对象调用“同一个函数”…...

Nuxt.js 3【详解】服务器 Server

Nuxt.js 是一个全栈框架&#xff0c;可以在一个项目中&#xff0c;同时完成前端和后端的开发。 服务器架构 Nuxt.js 的服务端由 Nitro 实现&#xff0c;Nitro 由基于 H3 实现。 Nitro 官网 https://nitro.build/guideH3 官网 https://h3.unjs.io/guide 接口路由 基于文件目录自…...

DeepSeek回答:AI时代Go语言学习路线

最近有小伙伴经常会问&#xff1a;**该如何学习入门Go语言&#xff1f;怎样提升Go语言Coding水平&#xff1f;**这篇文章我们就使用DeepSeek来梳理下Go语言在AI时代的学习路线。 向DeepSeek提问的问题原文&#xff1a; 你现在是一名资深的Go语言工程师&#xff0c;精通Go语言并…...

OpenGL 04--GLSL、数据类型、Uniform、着色器类

一、着色器 在 OpenGL 中&#xff0c;着色器&#xff08;Shader&#xff09;是运行在 GPU 上的程序&#xff0c;用于处理图形渲染管线中的不同阶段。 这些小程序为图形渲染管线的某个特定部分而运行。从基本意义上来说&#xff0c;着色器只是一种把输入转化为输出的程序。着色器…...

仅需三分钟,使用Vue3.x版本组件式风格实现一个消息提示组件!

一、前言 在日常的前端项目开发中&#xff0c;我们时常需要使用到“消息提示”&#xff08;以下简称“消息”&#xff09;这个组件来帮助我们更好的给予用户提示&#xff0c;例如常见的“登录成功”、“操作成功”、“服务器异常”等等提示。 尽管市面上已经有一些组件库提供了…...

天猫代运营公司推荐:品融电商

天猫代运营公司推荐&#xff1a;品融电商 在电商行业竞争日益激烈的今天&#xff0c;选择一家专业的天猫代运营公司成为众多品牌商家提升市场竞争力、实现销售增长的关键。在众多代运营公司中&#xff0c;品融电商凭借其专业的团队、丰富的经验和显著的成功案例&#xff0c;脱…...

2025.2.26#Java开发中的鉴权机制详解

1、Java开发中的鉴权机制详解 用户问的是在Java开发中什么是鉴权。首先&#xff0c;我需要明确鉴权的定义。鉴权&#xff0c;也就是认证授权&#xff0c;是确认用户身份和权限的过程。可能用户刚接触安全相关的内容&#xff0c;需要简单明了的解释。 接下来&#xff0c;我应该分…...

AF3 DataPipeline类解读

AlphaFold3 的DataPipeline类处理单链蛋白数据,主要负责从不同数据源(FASTA、PDB、mmCIF、ProteinNet .core 文件等)解析输入序列、MSA、模板匹配、序列嵌入(如 ESM-2)、并将其转换为 AlphaFold3 可用的特征格式。 源代码: class DataPipeline:"""Assem…...

Windows系统PyTorch环境配置

0、前言 深度学习为什么要配置GPU&#xff1f; GPU&#xff08;图形处理单元&#xff09;最初是为图形渲染而设计的&#xff0c;它们擅长处理大量并行计算任务。深度学习模型&#xff0c;特别是卷积神经网络&#xff08;CNN&#xff09;和循环神经网络&#xff08;RNN&#xf…...

策略模式环境类的实现方式对比

文章目录 1、策略模式2、聚合策略类实现方式一3、聚合策略类实现方式二4、对比5、补充&#xff1a;ApplicationContextAware接口 1、策略模式 近期工作中&#xff0c;需要处理4.x和5.x两个版本的数据&#xff0c;所以自然想到的是策略模式&#xff0c;写一个抽象类&#xff0c…...

深入理解JVM的运行时数据区

&#x1f9d1; 博主简介&#xff1a;CSDN博客专家&#xff0c;历代文学网&#xff08;PC端可以访问&#xff1a;https://literature.sinhy.com/#/literature?__c1000&#xff0c;移动端可微信小程序搜索“历代文学”&#xff09;总架构师&#xff0c;15年工作经验&#xff0c;…...

mapbox基础,加载background背景图层

&#x1f468;‍⚕️ 主页&#xff1a; gis分享者 &#x1f468;‍⚕️ 感谢各位大佬 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍⚕️ 收录于专栏&#xff1a;mapbox 从入门到精通 文章目录 一、&#x1f340;前言1.1 ☘️mapboxgl.Map 地图对象…...

14.二叉搜索树

二叉搜索树 1.概念 ⼆叉搜索树⼜称⼆叉排序树&#xff0c;它或者是⼀棵空树&#xff0c;或者是具有以下性质的⼆叉树: *若它的左⼦树不为空&#xff0c;则左⼦树上所有结点的值都⼩于等于根结点的值 *若它的右⼦树不为空&#xff0c;则右⼦树上所有结点的值都⼤于等于根结点…...

javascript-es6 (五)

内置构造函数 在 JavaScript 中 最主要 的数据类型有 6 种&#xff1a; 基本数据类型&#xff1a; 字符串、数值、布尔、undefined、null 引用类型: 对象 但是&#xff0c;我们会发现有些特殊情况&#xff1a; //普通字符串 const str peiqi console.log(str.length) //…...

飞鱼科技游戏策划岗内推

协助策划完成相关工作&#xff0c;包括但不仅限于策划配置&#xff0c;资料搜集&#xff0c;游戏体验&#xff1b; 游戏策划相关作品&#xff1b;游戏大赛经历&#xff1b;游戏demo制作经历&#xff1b;游戏公司策划岗位实习经历优先 内推码 DSZP7YFU...

探索浮点数在内存中的存储(附带快速计算补码转十进制)

目录 一、浮点数在内存中的存储 1、常见的浮点数&#xff1a; 2、浮点数存储规则&#xff1a; 3、内存中无法精确存储&#xff1a; 4、移码与指数位E&#xff1a; 5、指数E的三种情况&#xff1a; 二、快速计算补码转十进制 1、第一种方法讨论&#xff1a; 2、第二种方…...

elfk+zookeeper+kafka​数据流

申请7台部署elfkzookeeperkafka 数据流&#xff1a; filebeat(每台app) ------>【logstash(2) kafka(3)】 -------> logstash(1) -------> 【elasticsearch(3) kibana(1)】...

汽车悬架系统技术演进:从被动到全主动的革新之路(主动悬架类型对比)

在汽车工业的百年发展史中&#xff0c;悬架系统始终是平衡车辆性能与舒适性的关键战场。随着消费者对驾乘体验要求的不断提升&#xff0c;传统被动悬架已难以满足中高端车型的需求&#xff0c;而半主动与全主动悬架技术的崛起&#xff0c;正在重塑行业格局。本文将深入解析三大…...

什么限制了LLM:空间复杂度限制

什么限制了LLM: 空间复杂度限制 空间复杂度是对一个算法在运行过程中临时占用存储空间大小的量度,它描述了算法所需的额外存储空间与输入数据规模之间的增长关系。这里的存储空间主要包括算法执行过程中所使用的变量、数据结构、栈空间等。和时间复杂度类似,空间复杂度通常也…...

Docker02 - 深入理解Docker

深入理解Docker 文章目录 深入理解Docker一&#xff1a;Docker镜像原理1&#xff1a;镜像加载原理1.1&#xff1a;unionFS1.2&#xff1a;加载原理 2&#xff1a;分层理解 二&#xff1a;容器数据卷详解1&#xff1a;什么是容器数据卷2&#xff1a;使用数据卷3&#xff1a;具名…...

深度学习中卷积层(Conv)、BN层(Batch Normalization)和 ReLU层(Rectified Linear Unit)的详细介绍

一、卷积层&#xff08;Conv&#xff09; 定义 卷积层是深度学习中卷积神经网络&#xff08;CNN&#xff09;的核心组成部分。它通过对输入数据&#xff08;如图像&#xff09;进行卷积操作来提取特征。卷积操作是用一个卷积核&#xff08;也称为滤波器&#xff09;在输入数据上…...

二分查找算法的全面解析C++

一、核心原理与特性 二分查找是一种**对数时间复杂度(O(log n))**的高效搜索算法46&#xff0c;需满足两个前提条件&#xff1a; 数据存储在连续内存空间&#xff08;如数组&#xff09;数据按升序/降序有序排列35 算法通过折半比较缩小搜索范围&#xff1a; 初始化左右边界…...

【论文笔记】Splatter Image: Ultra-Fast Single-View 3D Reconstruction

原文链接&#xff1a;https://openaccess.thecvf.com/content/CVPR2024/papers/Szymanowicz_Splatter_Image_Ultra-Fast_Single-View_3D_Reconstruction_CVPR_2024_paper.pdf 简介&#xff1a;本文介绍了Splatter Image这一非常高效的单目3D物体重建方法。基于高斯溅射&#xf…...

【论文解读】《C-Pack: Packed Resources For General Chinese Embeddings》

论文链接&#xff1a;https://arxiv.org/pdf/2309.07597 本论文旨在构建一套通用中文文本嵌入的完整资源包——C-Pack&#xff0c;解决当前中文文本嵌入研究中数据、模型、训练策略与评测基准缺失的问题。论文主要贡献体现在以下几个方面&#xff1a; 大规模训练数据&#xf…...

Python 3 实用工具库

Python 作为一门强大且灵活的编程语言&#xff0c;提供了许多内建库和模块&#xff0c;可以大大简化开发工作&#xff0c;提升开发效率。在日常开发中&#xff0c;使用一些实用的工具库能够帮助你更轻松地完成任务。本文将介绍几款常用且实用的 Python 3 工具库&#xff0c;它们…...

vue+element-dialog:修改关闭icon / 遮罩层不能挡住弹窗 / 遮罩层不能遮挡元素

一、是否显示操作按钮 二、修改dialog默认关闭icon .el-dialog__headerbtn {top: 15px !important;width: 18px;height: 18px;background: url(~assets/img/formworkManagement/close-button.png) left no-repeat;background-size: cover; } .el-dialog__headerbtn i {content…...

深入解析React性能优化三剑客:React.memo、useMemo与useCallback

目录 渲染机制基础 React的渲染流程解析组件重渲染的根本原因性能优化的核心目标 React.memo深度解析 组件级缓存原理浅比较机制详解自定义比较函数实现 useMemo核心技术 值缓存机制剖析引用稳定性控制复杂计算场景实战 useCallback终极指南 函数缓存本质闭包陷阱解决方案事…...

Java高频面试之SE-23

hello啊&#xff0c;各位观众姥爷们&#xff01;&#xff01;&#xff01;本baby今天又来了&#xff01;哈哈哈哈哈嗝&#x1f436; Java 中的 Stream 是 Java 8 引入的一种全新的数据处理方式&#xff0c;它基于函数式编程思想&#xff0c;提供了一种高效、简洁且灵活的方式来…...

SOC-ATF 安全启动BL31流程分析(3)

一、BL31启动流程 与bl1和bl2不同&#xff0c;bl31包含两部分功能&#xff0c;在启动时作为启动流程的一部分&#xff0c;执行软硬件初始化以及启动bl32和bl33镜像。在系统启动完成后&#xff0c;将继续驻留于系统中&#xff0c;并处理来自其它异常等级的smc异常&#xff0c;以…...

计算机三级网络技术备考

#subtotal 1Mbps1024kb128KB12.8M/s #1024B1KB 1024KB1MB 1024MB1GB #路由器的5G信号和平常的波长不同&#xff08;5G的穿墙性能差&#xff09; #局域网LAN&#xff08;一公里内——构成集线机、交换机、同轴电缆&#xff09; #城域网MAN&#xff08;几公里到几十公里——光…...

Linux红帽:RHCSA认证知识讲解(四)修改远程配置文件,取消root禁用,便于使用root身份远程

Linux红帽&#xff1a;RHCSA认证知识讲解&#xff08;四&#xff09;修改远程配置文件&#xff0c;取消root禁用&#xff0c;便于使用root身份远程 前言一、远程连接的用途和原因二、通过 ssh 远程登陆系统三、默认限制及解决方案&#xff08;一&#xff09;非常规方法一&#…...

【笔记ing】每天50个英语词汇

ex- e-out exclude 排外&#xff0c;排除 expect 期待&#xff0c;期望 单词构成&#xff1a; 前缀&#xff08;prefix&#xff09;&#xff1a;情感&#xff08;emotion&#xff09;方向&#xff08;orientation&#xff09; 词根&#xff08;root&#xff09;&#xf…...

Linux 基本开发工具的使用(yum、vim、gcc、g++、gdb、make/makefile)

文章目录 Linux 软件包管理器 - yum理解什么是软件包和yum如何查看/查找软件包如何安装软件如何实现本地机器和云服务器之间的文件互传如何卸载软件 Linux 编辑器 - vim 的使用vim 的基本概念vim 的基本操作vim 命令模式各命令汇总vim 底行模式各命令汇总vim 的简单配置 Linux …...

idea创建第一个springboot程序

说明&#xff1a; 我计划用idea&#xff0c;创建第一个springboot程序&#xff0c;但是作为新手完全不会弄&#xff0c;今天我就亲自尝试一边&#xff0c;并且出一期详细&#xff0c;完美的教程&#xff0c;亲测可以运行 step1. 点击file &#xff0c; 选new&#xff0c; 选…...

python 使用 venv 创建虚拟环境 (VSCode)

Python 自带了一个名为 venv 的模块&#xff0c;可以用来创建虚拟环境。这是 Python 官方推荐的方式&#xff0c;不需要额外安装 Anaconda 或其他工具。 假设项目名为myproject&#xff0c;进入到项目目录 cd myproject 创建虚拟环境 python3 -m venv 虚拟环境名&#xff08…...

组态软件在物联网中的应用

随着物联网的快速发展&#xff0c;组态软件在物联网中的应用也越来越广泛。组态软件是一种用于创建和管理物联网系统的可视化工具&#xff0c;它能够将传感器、设备和网络连接起来&#xff0c;实现数据的采集、分析和可视化。本文将探讨组态软件在物联网中的应用&#xff0c;并…...

字节火山引擎-大模型声音复刻,流式语音合成接口

字节火山引擎-大模型声音复刻&#xff0c;流式语音合成接口 参考文档&#xff1a;火山引擎-大模型声音复刻文档 官网给出的示例代码有bug&#xff0c;这里已经修改了 创建应用 声音复刻大模型页面查看应用&#xff0c;获取接口调用需要的参数 注意调用tts接口时候需要三个参数…...

QT:Graphics View的坐标系介绍

在 Qt 的 Graphics View 框架中&#xff0c;存在三种不同的坐标系&#xff0c;分别是 物品坐标系&#xff08;Item Coordinates&#xff09;、场景坐标系&#xff08;Scene Coordinates&#xff09; 和 视图坐标系&#xff08;View Coordinates&#xff09;。这三种坐标系在图形…...

轻松搭建:使用Anaconda创建虚拟环境并在PyCharm中配置

一、使用Anaconda创建虚拟环境 1. 安装Anaconda 2..conda常用的命令 3. 创建虚拟环境-以搭建MachineVision为例 4. 激活虚拟环境 5. 安装依赖包 二、PyCharm配置环境 在进行Python项目开发时&#xff0c;合理的环境管理是必不可少的&#xff0c;特别是当你在多个项目中…...

Unity TMPro显示中文字体

TMP默认的字体只能显示英语&#xff0c;那么怎么显示中文呢 1、找到支持中文的字体文件 在c盘搜索Fonts文件夹有很多支持中文的字体文件 我这里选择雅黑 PS.双击打开发现里面有粗体细体普通三个版本&#xff0c;也可以只导入一个版本进去 2、将其拖入到unity Assets里面 3…...

【嵌入式原理设计】实验五:远程控制翻盖设计

目录 一、实验目的 二、实验环境 三、实验内容 四、实验记录及处理 五、实验小结 六、成果文件提取链接 一、实验目的 熟悉和掌握舵机及串口控制方式 二、实验环境 Win10ESP32实验开发板 三、实验内容 1、熟悉舵机的控制方式&#xff1b; 2、用串口发…...

矩阵乘积态简介

定义 矩阵乘积态&#xff08;Matrix Product State, MPS&#xff09;是一种用于表示量子多体系统的强大工具&#xff0c;特别是在一维系统中。MPS 是一种张量网络状态&#xff0c;它通过将全局量子态分解为一系列局部张量的乘积来有效地表示量子态。 注释&#xff1a; 量子态表…...

国自然面上项目|基于肺癌精准靶向治疗的基因影像组学研究|基金申请·25-02-26

小罗碎碎念 今天和大家分享一个国自然面上项目&#xff0c;执行年限为2019.01&#xff5e;2022.12&#xff0c;直接费用为57万元。 项目旨在解决肺癌靶向治疗耐药问题&#xff0c;通过整合多组学和影像组学技术构建预测模型。 研究期间&#xff0c;对非小细胞肺癌 CT 影像组学…...