CUDA实践指南(三十四)

简介:

可修改的状态:
ECC模式
启用和禁用ECC报告。
ECC重置
清除单位和双位ECC错误计数。 计算模式指示计算进程是否可以在GPU上运行,以及它们是否运行
完全或同时与其他计算过程。
持久性模式指示当没有应用程序连接到GPU时,NVIDIA驱动程序是否保持加载状态。 在大多数情况下最好启用此选项。
GPU重置
通过辅助总线重置重新初始化GPU硬件和软件状态。

NVML:
NVIDIA管理库(NVML)是一个基于C的界面,可以直接访问通过nvidia-smi公开的查询和命令,作为构建第三方系统管理应用程序的平台。 NVML API可通过NVIDIA开发人员网站作为Tesla Deployment Kit的一部分通过单个头文件提供,并附有PDF文档,存根库和示例应用程序; 请参阅http://developer.nvidia.com/tesla-deployment-kit。 每个新版本的NVML都是向后兼容的。
为NVML API提供了一组额外的Perl和Python绑定。 这些绑定公开了与基于C的接口相同的功能,并提供向后兼容性。 Perl绑定通过CPAN提供,并通过PyPI提供Python绑定。
所有这些产品(nvidia-smi,NVML和NVML语言绑定)都随每个新的CUDA版本而更新,并提供大致相同的功能。 有关更多信息,请参见http://developer.nvidia.com/nvidia-management-library-nvml
群集管理工具:
管理您的GPU集群将有助于实现最大的GPU利用率,并帮助您和您的用户获得最佳性能。 许多业界最受欢迎的集群管理工具现在都通过NVML支持CUDA GPU。 有关这些工具的列表,请参阅http://developer.nvidia.com/cluster-management
编译器JIT高速缓存管理工具:
应用程序在运行时加载的任何PTX设备代码都将由设备驱动程序进一步编译为二进制代码。 这就是所谓的即时编译(JIT)。 即时编译增加了应用程序加载时间,但允许应用程序从最新的编译器改进中受益。 它也是应用程序在编译应用程序时不存在的设备上运行的唯一方式。
当使用PTX设备代码的JIT编译时,NVIDIA驱动程序将产生的二进制代码缓存在磁盘上。 此行为的某些方面(如缓存位置和最大缓存大小)可以通过使用环境变量进行控制; 请参阅CUDA C编程指南的即时编译。
CUDA_VISIBLE_DEVICES:
通过CUDA_VISIBLE_DEVICES环境变量,可以重新排列安装的CUDA设备的集合,这些设备将在CUDA应用程序启动之前被CUDA应用程序显示并枚举。
对于应用程序可见的设备应该按照可枚举设备的系统范围列表包含在逗号分隔列表中。 例如,要仅使用来自系统范围设备列表的设备0和2,请在启动应用程序之前设置CUDA_VISIBLE_DEVICES = 0,2。 然后,应用程序将分别将这些设备列为设备0和设备1

相关实践学习
在云上部署ChatGLM2-6B大模型(GPU版)
ChatGLM2-6B是由智谱AI及清华KEG实验室于2023年6月发布的中英双语对话开源大模型。通过本实验,可以学习如何配置AIGC开发环境,如何部署ChatGLM2-6B大模型。
目录
相关文章
|
JavaScript
VUE element-ui之table表格全选框(复选框)隐藏
VUE element-ui之table表格全选框(复选框)隐藏
2002 0
VUE element-ui之table表格全选框(复选框)隐藏
|
Linux BI 网络架构
mtr网络监测工具
mtr网络监测工具
1199 2
mtr网络监测工具
|
存储 算法 Android开发
Jetpack-Compose 学习笔记(三)—— Compose 的自定义“View”(下)
Jetpack-Compose 学习笔记(三)—— Compose 的自定义“View”(下)
315 0
|
存储 机器学习/深度学习 并行计算
GPU通信互联技术:GPUDirect、NVLink与RDMA
在高性能计算和深度学习领域,GPU已成为关键工具。然而,随着模型复杂度和数据量的增加,单个GPU难以满足需求,多GPU甚至多服务器协同工作成为常态。本文探讨了三种主要的GPU通信互联技术:GPUDirect、NVLink和RDMA。GPUDirect通过绕过CPU实现GPU与设备直接通信;NVLink提供高速点对点连接和支持内存共享;RDMA则在网络层面实现直接内存访问,降低延迟。这些技术各有优势,适用于不同场景,为AI和高性能计算提供了强大支持。
|
数据采集 监控 数据安全/隐私保护
掌握Selenium爬虫的日志管理:调整–log-level选项的用法
在Selenium Web数据采集时,日志管理至关重要。通过调整`–log-level`参数可优化日志详细度,如设置为`INFO`记录一般操作信息。结合代理IP、Cookie及user-agent配置,不仅能提高采集成功率,还能规避反爬机制。合理选择日志级别有助于调试与性能平衡,在复杂的数据采集任务中保持程序稳定与可控。
418 1
掌握Selenium爬虫的日志管理:调整–log-level选项的用法
|
存储 缓存 Linux
GlusterFs分布式文件系统
GlusterFs分布式文件系统
298 8
|
API 异构计算 并行计算
PyTorch 2.2 中文官方教程(九)(4)
PyTorch 2.2 中文官方教程(九)
248 1
PyTorch 2.2 中文官方教程(九)(4)
|
存储 算法 Java
趣味算法:滑动窗口算法的理解与应用
前言 在编程和数据结构中,滑动窗口算法是一种常见的解决问题的方法。它主要用于处理涉及连续或固定长度子数组、子序列或子字符串的问题。本文将深入探讨滑动窗口算法,包括其基本概念、应用场景、基本步骤以及具体的Java代码实践。
917 0
|
Linux
数据流转的艺术:深度解析tee命令的应用技巧
数据流转的艺术:深度解析tee命令的应用技巧
258 0
|
缓存 监控 Java
这些年背过的面试题——SpringCloud篇
本文是技术人面试系列SpringCloud篇,面试中关于SpringCloud都需要了解哪些基础?一文带你详细了解,欢迎收藏!