总结
豆包 AI 助手文章总结

大模型与AI底层技术揭秘(23)抽象派的小黑子

絕刀狂花
发布: 2025-04-26 13:34:21
原创
990人浏览过

小h在学习了本专题后,开始思考一个问题:

人的大脑相当于什么级别的CPU和GPU呢?

小H仔细思考后,发现自己在计算这个问题:

将48331804981分解为两个质数的积

远比计算机CPU慢很多倍。

然而,当他看到这张图时,却能立即进行渲染(脑补)并识别出图中的人:

大模型与AI底层技术揭秘(23)抽象派的小黑子这让他觉得自己的大脑似乎能与NVidia H100集群一较高下。

方老师发现了小H的想法,嘲笑他:你怎么也学小学生的恶趣味呢?

小H尴尬地回到座位,继续研究上期遗留的问题。

在上期,我们留下了另一个问题:在ARM Cortex-A体系架构下,如何让虚拟机的操作系统能够访问到PCI-E设备的配置空间、IO BAR空间和DMA缓冲区?

我们先来看看在Intel体系架构下是如何解决这一问题的。

在Intel的32位(x86)或64位(x64)模式下,PCI-E配置空间实际上是一段位于系统内存区域的地址,访问这段地址应使用普通的基址变址指令,而不需要使用用于系统IO端口访问的input/output指令。

大模型与AI底层技术揭秘(23)抽象派的小黑子如图所示,在PCI-E配置空间的第16字节到第40字节,是所谓的BAR(Base Address Register),它是这些PCI-E设备本身的工作寄存器(如网卡的MAC寄存器、Phy寄存器等)地址段的起始地址和偏移量。这部分地址的访问方式与配置空间类似,也通过普通基址变址指令来访问,替代传统实模式下的input/output指令。

此外,操作系统在初始化PCI-E设备硬件时,会为PCI-E设备硬件分配自己可直接使用的DMA内存空间,硬件会直接对这部分空间进行数据的读写,因此CPU可以和其他PCI-E设备通过DMA内存地址空间,使用共享存储器的方式进行大批量数据的互通。

在物理机上,这些硬件直接看到的地址(物理机总线上可以通过逻辑分析仪抓到的地址,我们称为宿主机物理地址(HPA,Host Physical Address))。而程序指令中访问的地址为虚拟地址(HVA,Host Virtual Address),HVA是HPA通过MMU映射的结果,二者之间的映射表保存在MMU(Memory Management Unit)维护的TLB(Translation Lookaside Buffer)表中。对于多核处理器,大家共用一个MMU和TLB。

在存在虚拟机的情况下,问题变得复杂化。虚拟机上程序指令发出的地址被称为GVA(Guest Virtual Address)。问题在于,两台虚拟机有可能使用重叠的GVA,但实际上对应的HVA和HPA都不一样。那么,如何对二者进行区分呢?

Intel的方案是,采用EPT(extended page table),在MMU中的TLB增加虚拟机ID的字段,通过虚拟机ID和GVA的组合,来翻译得到HPA。

在ARM体系架构下,也有SMMU来实现这一翻译功能。

大模型与AI底层技术揭秘(23)抽象派的小黑子如图所示,在ARM下,地址翻译类似于Intel,也分为两个阶段:

第一阶段,从虚拟机内部的虚拟地址(VA)到虚拟机认为的物理地址(IPA,Intermediate Physical Address);

第二阶段,根据虚拟机的ID,以及IPA,翻译得到真实物理地址(PA)。

对于PCI-E设备直通给虚拟机,我们需要将PCI-E设备的配置空间地址、IO BAR地址和DMA空间地址都通过SMMU进行转换成为VA后,虚拟机操作系统内的驱动程序就可以访问PCI-E设备的硬件了。

解决了PCI-E直通问题后,我们就可以在虚拟机中使用GPU了,也可以将一台服务器上的多个GPU通过虚拟机分配的方式,给不同的租户使用,并通过云计算平台按时长等方式进行收费。

然而,正所谓按下葫芦浮起瓢。这种GPU算力调度方式又遇到了新的问题——云原生。

请看下期分解。

以上就是大模型与AI底层技术揭秘(23)抽象派的小黑子的详细内容,更多请关注php中文网其它相关文章!

豆包AI编程
豆包AI编程

智能代码生成与优化,高效提升开发速度与质量!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
豆包 AI 助手文章总结
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号