Nvidianvidia 高级特性MIG详细介绍
Posted 从善若水
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nvidianvidia 高级特性MIG详细介绍相关的知识,希望对你有一定的参考价值。
博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持!
博主链接
本人就职于国际知名终端厂商,负责modem芯片研发。
在5G早期负责终端数据业务层、核心网相关的开发工作,目前牵头6G算力网络技术标准研究。
博客内容主要围绕:
5G/6G协议讲解
算力网络讲解(云计算,边缘计算,端计算)
高级C语言讲解
Rust语言讲解
文章目录
nvidia 高级特性MIG详细介绍(三)
本篇博文我们使用命令创建几个具体的GI。可以使用NVIDIA Management Library (NVML)APIs或其命令行接口nvidia-smi以编程方式管理MIG。请注意,为简洁起见,下面示例中的一些nvidia-smi输出可能会被裁剪,以展示感兴趣的相关部分。
有关MIG命令的更多信息,请参阅nvidia-smi手册页或nvidia-smi MIG --help
。有关MIG管理API的信息,请参阅CUDA工具包中的NVML头文件(NVML.h) ,其位于/usr/local/cuda/include/nvml.h下,可以使用自动化工具来配置MIG,请参阅NVIDIA MIG分区编辑器(或mig-parted)工具。
一、开启MIG特性
默认情况下,GPU未开启MIG模式。例如,运行nvidia-smi,显示未启用MIG模式:
$ nvidia-smi -i 0
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 450.80.02 Driver Version: 450.80.02 CUDA Version: 11.0 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 A100-SXM4-40GB Off | 00000000:36:00.0 Off | 0 |
| N/A 29C P0 62W / 400W | 0MiB / 40537MiB | 6% Default |
| | | Disabled |
+-------------------------------+----------------------+----------------------+
可以使用以下命令在每个GPU上启用MIG模式:nvidia-smi -i <GPU IDs> -mig 1
。可以使用GPU索引、PCI总线ID或UUID来选择GPU,多个GPU之间使用逗号分隔。如果没有指定GPU ID,那么MIG模式将应用于系统上的所有GPU。
当在GPU上启用MIG时,根据GPU产品的不同,驱动程序将尝试重置GPU,以便MIG模式可以生效。
$ sudo nvidia-smi -i 0 -mig 1
Enabled MIG Mode for GPU 00000000:36:00.0
All done.
$ nvidia-smi -i 0 --query-gpu=pci.bus_id,mig.mode.current --format=csv
pci.bus_id, mig.mode.current
00000000:36:00.0, Enabled
二、查询当前MIG配置文件
NVIDIA驱动程序提供了许多配置文件,用户可以在A100中配置MIG功能时选择加入。profile文件是用户可以创建的GPU实例的大小和功能。驱动程序还提供了可以创建的实例的类型和数量信息。
$ nvidia-smi mig -lgip
+-----------------------------------------------------------------------------+
| GPU instance profiles: |
| GPU Name ID Instances Memory P2P SM DEC ENC |
| Free/Total GiB CE JPEG OFA |
|=============================================================================|
| 0 MIG 1g.5gb 19 7/7 4.75 No 14 0 0 |
| 1 0 0 |
+-----------------------------------------------------------------------------+
| 0 MIG 1g.5gb+me 20 1/1 4.75 No 14 1 0 |
| 1 1 1 |
+-----------------------------------------------------------------------------+
| 0 MIG 1g.10gb 15 4/4 9.62 No 14 1 0 |
| 1 0 0 |
+-----------------------------------------------------------------------------+
| 0 MIG 2g.10gb 14 3/3 9.62 No 28 1 0 |
| 2 0 0 |
+-----------------------------------------------------------------------------+
| 0 MIG 3g.20gb 9 2/2 19.50 No 42 2 0 |
| 3 0 0 |
+-----------------------------------------------------------------------------+
| 0 MIG 4g.20gb 5 1/1 19.50 No 56 2 0 |
| 4 0 0 |
+-----------------------------------------------------------------------------+
| 0 MIG 7g.40gb 0 1/1 39.25 No 98 5 0 |
| 7 1 1 |
+-----------------------------------------------------------------------------+
使用下面的命令列出可用的布局。布局的语法是<index>:<GPU Slice Count>
,并显示实例在GPU上的位置。所示的位置索引表示了profile文件如何映射到GPU上。
$ nvidia-smi mig -lgipp
GPU 0 Profile ID 19 Placements: 0,1,2,3,4,5,6:1
GPU 0 Profile ID 20 Placements: 0,1,2,3,4,5,6:1
GPU 0 Profile ID 15 Placements: 0,2,4,6:2
GPU 0 Profile ID 14 Placements: 0,2,4:2
GPU 0 Profile ID 9 Placements: 0,4:4
GPU 0 Profile ID 5 Placement : 0:4
GPU 0 Profile ID 0 Placement : 0:8
说明用户可以创建两个3g.20gb类型的示例,对应的profile ID是9,或者7个1g.5gb示例,对应的profile ID是19。
三、创建GI和CI
在开始使用MIG之前,用户需要使用-cgi
选项创建GPU实例。有三个选项可以用来指定要创建实例的profile文件:
- Profile ID(例如,9、14、5);
- profile文件的缩写(例如,3g.20gb);
- 示例的完整profile文件名称(例如,MIG 3g.20gb);
一旦创建了GPU实例,就需要创建相应的计算实例(CI)。通过使用-C
参数,nvidia-smi可以创建这些实例。
下面的例子展示了用户如何创建GPU实例(以及相应的计算实例)。在这个例子中,用户可以创建两个GPU实例(类型为3g.20gb),每个GPU实例拥有可用计算和内存容量的一半。在这个例子中,我们有意使用profile ID和短名的profile名称来展示如何使用这两个选项:
$ sudo nvidia-smi mig -cgi 9,3g.20gb -C
Successfully created GPU instance ID 2 on GPU 0 using profile MIG 3g.20gb (ID 9)
Successfully created compute instance ID 0 on GPU 0 GPU instance ID 2 using profile MIG 3g.20gb (ID 2)
Successfully created GPU instance ID 1 on GPU 0 using profile MIG 3g.20gb (ID 9)
Successfully created compute instance ID 0 on GPU 0 GPU instance ID 1 using profile MIG 3g.20gb (ID 2)
现在列出可用的GPU实例:
$ sudo nvidia-smi mig -lgi
+----------------------------------------------------+
| GPU instances: |
| GPU Name Profile Instance Placement |
| ID ID Start:Size |
|====================================================|
| 0 MIG 3g.20gb 9 1 4:4 |
+----------------------------------------------------+
| 0 MIG 3g.20gb 9 2 0:4 |
+----------------------------------------------------+
现在,验证GIs和相应的CIs是否已经创建:
$ nvidia-smi
+-----------------------------------------------------------------------------+
| MIG devices: |
+------------------+----------------------+-----------+-----------------------+
| GPU GI CI MIG | Memory-Usage | Vol| Shared |
| ID ID Dev | | SM Unc| CE ENC DEC OFA JPG|
| | | ECC| |
|==================+======================+===========+=======================|
| 0 1 0 0 | 11MiB / 20224MiB | 42 0 | 3 0 2 0 0 |
+------------------+----------------------+-----------+-----------------------+
| 0 2 0 1 | 11MiB / 20096MiB | 42 0 | 3 0 2 0 0 |
+------------------+----------------------+-----------+-----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------+
四、销毁GI和CI
一旦GPU处于MIG模式,就可以动态配置GIs和CIs。下面的例子展示了如何销毁前面例子中创建的CIs和GIs。
4.1 销毁全部CIs和GIs
$ sudo nvidia-smi mig -dci && sudo nvidia-smi mig -dgi
Successfully destroyed compute instance ID 0 from GPU 0 GPU instance ID 1
Successfully destroyed compute instance ID 1 from GPU 0 GPU instance ID 1
Successfully destroyed compute instance ID 2 from GPU 0 GPU instance ID 1
Successfully destroyed GPU instance ID 1 from GPU 0
Successfully destroyed GPU instance ID 2 from GPU 0
4.2 销毁某个GI下的CIs
$ sudo nvidia-smi mig -dci -gi 1 -ci 0,1,2
Successfully destroyed compute instance ID 0 from GPU 0 GPU instance ID 1
Successfully destroyed compute instance ID 1 from GPU 0 GPU instance ID 1
Successfully destroyed compute instance ID 2 from GPU 0 GPU instance ID 1
可以验证CI设备现在已经在GPU上销毁了:
$ nvidia-smi
+-----------------------------------------------------------------------------+
| MIG devices: |
+------------------+----------------------+-----------+-----------------------+
| GPU GI CI MIG | Memory-Usage | Vol| Shared |
| ID ID Dev | | SM Unc| CE ENC DEC OFA JPG|
| | | ECC| |
|==================+======================+===========+=======================|
| No MIG devices found |
+-----------------------------------------------------------------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------+
4.3 销毁GIs
$ sudo nvidia-smi mig -dgi
Successfully destroyed GPU instance ID 1 from GPU 0
Successfully destroyed GPU instance ID 2 from GPU 0
感谢大家的阅读,这里是从善若水的博客!
MIG09-资讯推荐算法高级工程师-T3.1及以上-腾讯-深圳-30-60万
只要你有梦想,只要你有足够的实力,不是机会挑你,而是你挑机会
I WANT YOU
畅未来
谈梦想
招聘须知
1
岗位要求
学历要求:本科及以上
工作年限:3年以上
性别要求:不限
年龄要求:35岁以内
语言要求:无
证书要求:无
需精通技能:无
面试流程:多次来公司进行面试
2
职位描述
工作职责:
1.负责浏览器资讯用户画像的优化工作;
2.负责基于hadoop,spark集群CTR预估、用户分群模型构建; 3.负责浏览器个性化推荐系统的设计与开发工作;
4.负责浏览器内容筛选、推荐列表排序的相关开发及优化工作;
5.负责业务各应用场景下的推荐效果数据分析;
6.负责以效果为目标的算法策略设计和优化迭代。
任职资格:
1.本科及以上学历;
2.熟练掌握C/C++,scala,shell中的一种或多种语言;
3.深入理解常见机器学习或数据挖掘类的算法原理,熟悉常见的统计原理及方法;
4.有大数据分析工具相关的使用经验,比如Hadoop生态中的Map-Reduce,hivesql,pig及spark;
5.良好的数据意识,能结合产品通过数据分析发现有价值信息;
6.有LSTM等网络在NLP应用经验者(如在caffe,tensorflow等框架下实现)优先。
7.有ctr预估常用算法经验优先(LR/GBDT/FM/FFM)
公司知多少
介绍:
深圳市腾讯计算机系统有限公司成立于1998年11月,由马化腾、张志东、许晨晔、陈一丹、曾李青五位创始人共同创立。 是中国最大的互联网综合服务提供商之一,也是中国服务用户最多的互联网企业之一。腾讯多元化的服务包括:社交和通信服务QQ及微信/WeChat、社交网络平台QQ空间、腾讯游戏旗下QQ游戏平台、门户网站腾讯网、腾讯新闻客户端和网络视频服务腾讯视频等。
datazhao
更多资讯早知道
以上是关于Nvidianvidia 高级特性MIG详细介绍的主要内容,如果未能解决你的问题,请参考以下文章
MIG09-资讯推荐算法高级工程师-T3.1及以上-腾讯-深圳-30-60万