一种面向容器的GPU透传方法及系统
本技术涉及gpu资源调度,更具体地,涉及一种面向容器的gpu透传方法及系统。
背景技术:
1、随着人工智能、大数据分析及实时图形渲染等高算力业务的快速发展,gpu已成为核心算力资源。容器技术凭借轻量化、快速部署和弹性伸缩等优势,逐渐成为承载算力业务的主流架构。然而,容器生态原生缺乏对gpu等专用硬件的高效抽象与调度能力,如何在容器环境中实现gpu资源的低损耗接入、安全隔离与弹性复用,成为制约高阶算力业务容器化规模化落地的关键瓶颈。
2、当前主流的容器化gpu资源调度方案主要包括gpu虚拟化切片方案和传统硬件直通方案。gpu虚拟化切片方案依赖虚拟化中间层完成指令转发与资源模拟,虽支持多容器共享,但存在固有算力损耗与传输延迟,通常造成10%~30%的性能下降,难以适配高吞吐、低时延的精密算力任务。传统硬件直通方案虽可保留物理gpu原生性能,但多采用单容器独占单gpu的静态绑定模式,资源调度粒度粗放,无法支持多容器共享复用,导致硬件利用率低下。同时,传统直通方案缺乏内核级资源隔离、精细化配额管控与权限约束机制,多容器并行时易出现算力抢占、显存数据串扰及硬件越权访问等异常,且不支持运行态资源的动态挂载与卸载,对多品牌异构gpu兼容性差,容错自愈能力缺失,整体存在安全性不足、灵活性差、运维适配成本高的技术缺陷。
技术实现思路
1、针对现有技术的至少一个缺陷或改进需求,本技术提供了一种面向容器的gpu透传方法及系统,能够解决上述背景技术中存在的问题至少其中之一。
2、为实现上述目的,按照本技术的第一个方面,提供了一种面向容器的gpu透传方法,该方法包括:
3、宿主机启动后完成pcie总线与gpu底层驱动初始化,禁用系统原生虚拟化与vgpu切片机制,遍历物理gpu设备并校验设备合法性与硬件状态,采集总线地址、显存容量、流处理器数量及中断资源参数,构建全局gpu硬件资源台账;
4、接收容器业务的资源申请参数,基于所述全局gpu硬件资源台账为目标容器分配独立显存寻址区间、算力时间片配额及硬件操作权限,生成唯一资源标识并绑定容器进程标识符;
5、调用内核内存管理单元接口建立物理gpu地址与容器虚拟地址的专属页表映射,锁定映射区间访问权限,在容器内部注册兼容原生驱动的虚拟gpu设备节点,完成gpu硬件透传挂载;
6、持续采集gpu硬件状态数据与容器业务运行数据,根据实时负载动态调整所述算力时间片配额,在监测到异常时分级触发故障隔离与自愈流程;
7、容器任务结束后,解除所述页表映射关系,清空显存数据与任务缓存,重置gpu硬件寄存器与权限配置,回收全部算力与显存资源并重新纳入所述全局gpu硬件资源台账。
8、进一步地,上述面向容器的gpu透传方法,所述构建全局gpu硬件资源台账,具体包括:
9、基于内核pcie总线扫描接口读取目标物理gpu的基地址寄存器地址、显存物理寻址空间、设备识别码、中断号及直接内存访问通道地址,过滤集成显卡与虚拟显卡的无效设备,建立唯一硬件资源台账。
10、进一步地,上述面向容器的gpu透传方法,所述建立物理gpu地址与容器虚拟地址的专属页表映射,具体包括:
11、将物理gpu的显存空间、寄存器操作空间及直接内存访问数据传输空间完整映射至容器独立地址空间,映射过程保留硬件原生寻址规则与传输时序,不执行指令改写与数据模拟操作。
12、进一步地,上述面向容器的gpu透传方法,所述动态调整所述算力时间片配额,具体包括:
13、采用物理显存地址分段锁定技术,将整块gpu物理显存划分为多个独立连续的寻址区间,为各容器分配专属显存分区;
14、通过内核页表权限锁定各分区寻址边界,限制容器仅访问自身绑定的显存地址空间。
15、进一步地,上述面向容器的gpu透传方法,所述动态调整所述算力时间片配额,还包括:
16、基于gpu硬件时钟周期与流处理器调度机制,将运算时钟周期划分为均等时间片;
17、基于容器业务优先级与实时负载权重动态分配算力资源,限制单容器算力占用上限。
18、进一步地,上述面向容器的gpu透传方法,所述在监测到异常时分级触发故障隔离与自愈流程,具体包括:
19、构建内核态与容器用户态双维度数据采集链路,采集显存占用、流处理器使用率、温度、功耗及任务队列长度;
20、建立三级故障判定模型,区分轻微异常、中度阻塞及重度故障;
21、针对重度故障立即隔离故障容器与故障gpu以阻断故障扩散。
22、进一步地,上述面向容器的gpu透传方法,所述在监测到异常时分级触发故障隔离与自愈流程,还包括:
23、针对可自愈类软硬件异常,自动清空无效显存数据、恢复硬件寄存器默认状态、修复异常页表映射并重启本地调度进程,实现无人工干预的故障自愈,同时留存故障日志与自愈记录。
24、按照本技术的第二个方面,还提供了一种面向容器的gpu透传系统,其包括:
25、硬件初始化与设备合规校验模块,用于宿主机启动后完成pcie总线与gpu底层驱动初始化,禁用系统原生虚拟化与vgpu切片机制,遍历物理gpu设备并校验设备合法性与硬件状态,采集总线地址、显存容量、流处理器数量及中断资源参数,构建全局gpu硬件资源台账;
26、资源分区与配额配置模块,用于接收容器业务的资源申请参数,基于所述全局gpu硬件资源台账为目标容器分配独立显存寻址区间、算力时间片配额及硬件操作权限,生成唯一资源标识并绑定容器进程标识符;
27、内核地址映射与虚拟设备注册模块,用于调用内核内存管理单元接口建立物理gpu地址与容器虚拟地址的专属页表映射,锁定映射区间访问权限,在容器内部注册兼容原生驱动的虚拟gpu设备节点,完成gpu硬件透传挂载;
28、实时监控与自适应优化模块,用于持续采集gpu硬件状态数据与容器业务运行数据,根据实时负载动态调整所述算力时间片配额,在监测到异常时分级触发故障隔离与自愈流程;
29、资源卸载与设备重置模块,用于容器任务结束后,解除所述页表映射关系,清空显存数据与任务缓存,重置gpu硬件寄存器与权限配置,回收全部算力与显存资源并重新纳入所述全局gpu硬件资源台账。
30、按照本技术的第三个方面,还提供了一种面向容器的gpu透传设备,其包括至少一个处理单元、以及至少一个存储单元,其中,所述存储单元存储有计算机程序,当所述计算机程序被所述处理单元执行时,使得所述处理单元执行上述任一项所述方法的步骤。
31、按照本技术的第四个方面,还提供了一种存储介质,其存储有可由面向容器的gpu透传设备执行的计算机程序,当所述计算机程序在面向容器的gpu透传设备上运行时,使得所述面向容器的gpu透传设备执行上述任一项所述方法的步骤。
32、总体而言,通过本技术所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
33、本技术实施例提供的面向容器的gpu透传方法,能够摒弃传统虚拟化中间转发层,在保留物理gpu原生算力的前提下,实现多容器安全共享与精细化资源隔离,支持运行态弹性调度与无感知故障自愈,大幅提升gpu硬件资源利用率与集群运行稳定性,降低异构算力环境的部署运维成本。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com