《张连壮-Luban 青云智算平台HAMi实践.pdf》由会员分享,可在线阅读,更多相关《张连壮-Luban 青云智算平台HAMi实践.pdf(32页珍藏版)》请在三个皮匠报告上搜索。
1、云原生+AI Meetup12/28 广东省广州市海珠区鼎新路 88 号 广州阿里中心13:30-17:30广州站主办方合作伙伴云原生+AI Meetup 广州站Luban 青云智算平台HAMi实践张连壮青云科技 高级研发工程师云原生+AI Meetup 广州站HAMi 介绍HAMi 是一个面向 Kubernetes 的异构设备管理中间件。它可以管理不同类型的异构设备(如 GPU、NPU、MLU、DCU 等),实现异构设备在 Pod 之间的共享,并基于设备拓扑和调度策略做出更优的调度决策。云原生+AI Meetup 广州站HAMi 示例云原生+AI Meetup 广州站HAMi 用户平安证券平
2、安银行新网银行中国移动H3C华为东南大学/东华大学/中国矿业大学科大讯飞云原生+AI Meetup 广州站HAMi 核心解读云原生+AI Meetup 广州站HAMi 架构云原生+AI Meetup 广州站HAMi 架构cuda driver api 的劫持nvidia open kernel云原生+AI Meetup 广州站cuda劫持的核心原理CUresult cuDeviceGet(CUdevice*device,int ordinal)LOG_DEBUG(into cuDeviceGet ordinal=%dn,ordinal);CUresult res=CUDA_OVERRIDE_C
3、ALL(cuda_library_entry,cuDeviceGet,device,ordinal);return res;ld_preload云原生+AI Meetup 广州站运行架构应用层:使用gpu资源的应用,机器学习,深度学习,各种框架,训练,推理等K8S处理层:该层复制处理k8s的内部资源调度K8S资源层:资源层负责GPU的申请,POD的创建云原生+AI Meetup 广州站GPU 虚拟化技术-昇腾云原生+AI Meetup 广州站GPU 虚拟化技术-海光mask 配置文件cu_mask:xxx计算单元mem:yyy 显存云原生+AI Meetup 广州站调度器云原生+AI Meet
4、up 广州站HAMi exportershared mem 的方式提供数据云原生+AI Meetup 广州站远程调用rcuda:是“西班牙瓦伦西亚理工大学”提供的一个项目,该项目提供二进制免费使用,但是不开源。Bitfusion:vmware 的产品,该产品有详细的文档描述,基本上呢就是 远程调用+显存切分。趋动科技:国内最早期提供远程调用的厂商。云原生+AI Meetup 广州站HAMi 开发部署的实践云原生+AI Meetup 广州站HAMi 安装1.kubectl label nodes nodeid gpu=on2.helm repo add hami-charts https:/pr
5、oject-hami.github.io/HAMi/3.helm install hami hami-charts/hami -n kube-system 云原生+AI Meetup 广州站HAMi pod 使用resources:limits: 1 个虚拟 GPU GPU 包含 3000M 显存云原生+AI Meetup 广州站HAMi pod调度策略nodeSchedulerPolicy:binpack尽量往一个node上调度。gpuSchedulerPolicy:spread 尽量往同一个node不同的卡上调度。云原生+AI Meetup 广州站HAMi 显存如何计算int add_ch
6、unk(CUdeviceptr*address,size_t size)add_gpu_device_memory_usage(getpid(),dev,allocsize,2);return 0;云原生+AI Meetup 广州站HAMi 提高显存计算的准确度pod:宿主机:云原生+AI Meetup 广州站HAMi 显存不准确的规避方法devicePlugin.deviceMemoryScaling=0.8预留部分显存修改libvgpu代码,将计算模式更改成获取模式。云原生+AI Meetup 广州站HAMi