OrionX計(jì)算平臺/AI加速器資源池化軟件
共 2516字,需瀏覽 6分鐘
·
2020-11-26 04:25
商品參數(shù)
商品介紹
商品介紹
商品介紹
概述
Orion vGPU軟件是一個(gè)為云或者數(shù)據(jù)中心內(nèi)的AI應(yīng)用,CUDA應(yīng)用提供GPU資源池化,提供GPU虛擬化能力的系統(tǒng)軟件。通過高效的通訊機(jī)制,使得AI應(yīng)用,CUDA應(yīng)用可以運(yùn)行在云或者數(shù)據(jù)中心內(nèi)任何一個(gè)物理機(jī),Container或者VM內(nèi)而無需掛載物理GPU。同時(shí)為這些應(yīng)用程序提供在GPU資源池中的硬件算力。通過這種Orion GPU池化的能力,可以提供多個(gè)優(yōu)點(diǎn):
- 兼容已有的AI應(yīng)用和CUDA應(yīng)用,使其仍然具有使用GPU加速的性能
- 為AI應(yīng)用和CUDA應(yīng)用在云和數(shù)據(jù)中心的部署提供了很大的靈活度。無需受GPU服務(wù)器位置、資源數(shù)量的約束。
- Orion GPU資源隨AI應(yīng)用和CUDA應(yīng)用啟動(dòng)時(shí)分配,隨應(yīng)用程序退出時(shí)自動(dòng)釋放。減少GPU空閑時(shí)間,提高共享GPU的周轉(zhuǎn)率。
- 通過對GPU資源池的管理和優(yōu)化,提高整個(gè)云和數(shù)據(jù)中心GPU的利用率和吞吐率。
- 通過統(tǒng)一管理GPU,減輕GPU的管理復(fù)雜度和成本。
支持列表
處理器
- x8664
操作系統(tǒng)
- 64位 Ubuntu 18.04 LTS,16.04 LTS, 14.04 LTS
- 64位 CentOS 7.x
NVIDIA GPU
- NVIDIA T4, RTX 2080 Series, RTX 6000, RTX 8000
- NVIDIA V100
- NVIDIA P100, P40, P4, GTX 1080 Series, GTX 1060 Series
- Nvidia K80,Nvidia K40
NVIDIA CUDA
- CUDA 10.1
- CUDA 10.0
- CUDA 9.2
- CUDA 9.1
- CUDA 9.0
- CUDNN 7.4.2 及以上
深度學(xué)習(xí)框架
- TensorFlow 2.0, TensorFlow 1.8 - 1.14
- Pytorch 1.0 - 1.3
- PaddlePaddle 1.5.2
- NVCaffe
網(wǎng)絡(luò)
- RoCE v2, Infiniband
- TCP以太網(wǎng)絡(luò)
容器環(huán)境
- Docker 1.13 及以后版本
虛擬化環(huán)境
- QEMU-KVM (QEMU 2.x)
容器框架
- Kubernetes 1.10 及以后版本
已知問題
下面列出當(dāng)前版本不支持的CUDA庫、工具以及使用模式
- 不支持CUDA應(yīng)用程序使用 Unified Memory
- 不支持 nvidia-smi 工具
- 不支持OpenGL相關(guān)接口,不支持圖形渲染相關(guān)接口
- 有限支持CUDA IPC,對部分程序可能不支持。
- 部分應(yīng)用需要從源碼重新編譯以保證動(dòng)態(tài)鏈接 CUDA 庫。
必要組件介紹
Orion Controller
該組件為一個(gè)長運(yùn)行的服務(wù)程序,其負(fù)責(zé)整個(gè)GPU資源池的資源管理。其響應(yīng)Orion Client的vGPU請求,并從GPU資源池中為Orion Client端的CUDA應(yīng)用程序分配并返回Orion vGPU資源。 該組件可以部署在數(shù)據(jù)中心任何網(wǎng)絡(luò)可到達(dá)的系統(tǒng)當(dāng)中。每個(gè)資源池部署一個(gè)該組件。資源池的大小取決于IT管理的需求,可以是整個(gè)數(shù)據(jù)中心的所有GPU作為一個(gè)資源池,也可以每個(gè)GPU服務(wù)器作為一個(gè)獨(dú)立的資源池。
Orion Server
該組件為一個(gè)長運(yùn)行的系統(tǒng)服務(wù),其負(fù)責(zé)GPU資源化的后端服務(wù)程序。Orion Server部署在每一個(gè)CPU以及GPU節(jié)點(diǎn)上,接管本機(jī)內(nèi)的所有物理GPU。通過和Orion Controller的交互把本機(jī)的GPU加入到由Orion Controller管理維護(hù)的GPU資源池當(dāng)中。 當(dāng)Orion Client端應(yīng)用程序運(yùn)行時(shí),通過Orion Controller的資源調(diào)度,建立和Orion Server的連接。Orion Server為其應(yīng)用程序的所有CUDA調(diào)用提供一個(gè)隔離的運(yùn)行環(huán)境以及真實(shí)GPU硬件算力。
Orion Client
該組件為一個(gè)運(yùn)行環(huán)境,其模擬了NVidia CUDA的運(yùn)行庫環(huán)境,為CUDA程序提供了API接口兼容的全新實(shí)現(xiàn)。通過和Orion其他功能組件的配合,為CUDA應(yīng)用程序虛擬化了一定數(shù)量的虛擬GPU(Orion vGPU)。 使用CUDA動(dòng)態(tài)鏈接庫的CUDA應(yīng)用程序可以通過操作系統(tǒng)環(huán)境設(shè)置,使得一個(gè)CUDA應(yīng)用程序在運(yùn)行時(shí)由操作系統(tǒng)負(fù)責(zé)鏈接到Orion Client提供的動(dòng)態(tài)鏈接庫上。由于Orion Client模擬了NVidia CUDA運(yùn)行環(huán)境,因此CUDA應(yīng)用程序可以透明無修改地直接運(yùn)行在Orion vGPU之上。
典型部署架構(gòu)
以下介紹兩種常見的Orion GPU資源池化部署方案。一種是All-in-One的本地GPU虛擬化方案,一種是部署到分布式多臺物理機(jī)的GPU資源池化方案。
Orion GPU資源池化方案
分布式GPU資源池化方案指的是把一臺或者多臺服務(wù)器內(nèi)的GPU作為資源池,通過Orion向局域網(wǎng)內(nèi)任一個(gè)物理機(jī)、Container或者VM內(nèi)的CUDA應(yīng)用程序提供虛擬化GPU的部署方式。 選擇局域網(wǎng)內(nèi)至少一個(gè)Linux服務(wù)器部署Orion Controller。該Controller必須可以被屬于同一個(gè)資源池的其他Orion組件通過網(wǎng)絡(luò)訪問。 每一個(gè)服務(wù)器上部署Orion Server服務(wù),Oiron Server自動(dòng)適配該服務(wù)器是否安裝有GPU,從而開啟不同的功能。 在每一個(gè)需要運(yùn)行CUDA應(yīng)用程序的物理機(jī)、Container和VM里部署Orion Client運(yùn)行庫。 各個(gè)Oiron組件通過Orion Controller的控制功能完成服務(wù)發(fā)現(xiàn),資源調(diào)度等功能。 從邏輯上,以上各個(gè)Orion組件使用了control plane和data plane兩套網(wǎng)絡(luò)。其中control plane用于和Orion Controller組件的通訊。該部分通訊流量不大,對網(wǎng)絡(luò)延遲和帶寬需求不高。data plane用于Orion Client和Orion Server之間執(zhí)行CUDA任務(wù)之間的通訊。該部分對于網(wǎng)絡(luò)的延遲和帶寬有一定需求。建議使用支持RDMA的網(wǎng)絡(luò)。在實(shí)際環(huán)境中,control plane和data plane可以是同一個(gè)物理網(wǎng)絡(luò)。
安裝部署
請聯(lián)系客服
