NVIDIA GPU 持久模式--学习笔记

news/2024/7/5 7:55:51
  1. 必须先运行NVIDIA内核模式驱动程序并将其连接到目标GPU设备,然后才能与该设备进行任何用户交互。驱动程序的行为因操作系统而异。通常,如果内核模式驱动程序尚未运行或尚未连接到目标GPU,则任何尝试与该GPU进行交互的程序的调用都会透明地导致该驱动程序加载和/或初始化GPU。当所有GPU客户端终止时,驱动程序将取消初始化GPU。
  2. 驱动程序加载行为对最终用户而言有两种重要的作用:
    1. 应用启动延迟:由于ECC清理行为,触发GPU初始化的应用程序可能会导致每个GPU短暂(1-3秒的数量级)启动成本。如果GPU已初始化,则不会进行清理。
    2. 保存驱动状态:如果驱动程序取消了GPU的初始化,则与该GPU相关的某些非持久状态将丢失,并在下次初始化GPU时恢复为默认状态。请参阅数据持久性。为了避免这种情况,GPU应该保持初始化状态。
  3. 不同系统设置不同:
    1. windows系统:
      1. 在Windows上,内核模式驱动程序在Windows启动时加载,并保持加载状态,直到Windows关闭。因此,Windows用户通常可以忽略本文档中描述的驱动程序持久性含义。
      2. 注意:驱动程序重载事件(例如由于TDR或安装新的驱动程序)将导致非持久状态复位。
      3. Linux:在默认情况下X在目标GPU上运行的Linux系统下,通常会启用X模式,并启动内核模式驱动程序并使之从计算机启动到关闭都保持活动状态。在无头系统或没有长期存在的类似X的客户端维护目标GPU句柄的情况下,每次目标GPU应用程序启动和停止时,内核模式驱动程序都会初始化和取消初始化目标GPU。在HPC环境中,这种情况非常普遍。由于在这种情况下通常需要使GPU初始化,因此NVIDIA提供了两种更改驱动程序行为的选项: 持久模式(传统)和持久守护程序。
  4. 驱动程序状态:
    1. GPU初始化生命周期:
      1. 从驱动程序初始化GPU到GPU初始化之间,这种状态一直持续。这是最狭窄的生命周期,因为内核驱动程序本身仍处于加载状态,并且可能正在管理其他GPU。如果客户端应用程序尝试访问GPU,则GPU通常会初始化GPU。最后一个客户端退出后,GPU通常会取消初始化。
      2. 状态:
        1. 计算模式,计费模式,持久性模式
        2. 应用程序时钟,应用程序时钟权限设置
        3. 基于SW的功率上限
        4. 易失性ECC错误,待退页
    2. 内核驱动程序生命周期:
      1. 从驱动程序加载到驱动程序卸载(例如rmmod),这种状态一直持续。在大多数环境中,这是整个计算机引导周期。例外包括GPU重置事件和驱动程序安装。
      2. 状态:会计流程数据
    3. GPU开发板生命周期:
      1. 这种类型的状态会在启动周期中持续存在,因为它存储在板子的持久性信息光盘中。在某些情况下,可以明确清除这种状态,但通常认为该状态在整个板子的生命周期中都是持久的-直到用户下一次更改为止。
      2. 状态:
        1. ECC模式,总计ECC错误,已淘汰的页面
        2. GPU操作模式,驱动程序模型


http://lihuaxi.xjx100.cn/news/413481.html

相关文章

【windows】服务端开启 winrm服务

1. 管理员权限打开 powershell 2. 打开 winrm服务查看 winrm service的运行状态, 默认情况没有开启, 执行命令为空 代表没有启动.winrm enumerate winrm/config/listener对 winrm service进行配置winrm quickconfig为 winrm service配置authwinrm set winrm/config/service/aut…

【华为OD机试真题2023 JAVA】关联端口组合并

关联端口组合并 时间限制:1s 空间限制:256MB 限定语言:不限 题目描述: 有M(1<=M<=10)个端口组,每个端口组是长度为N(1<=N<=100)的整数数组,如果端口组间存在2个及以上不同端口相同,则认为这两个端口组互相关联,可以合并。 第一行输入端口组个数M,再输入…

基于Java毕业设计疫情背景下基于web的学生信息日报系统源码+系统+mysql+lw文档+部署软件

基于Java毕业设计疫情背景下基于web的学生信息日报系统源码系统mysqllw文档部署软件 基于Java毕业设计疫情背景下基于web的学生信息日报系统源码系统mysqllw文档部署软件本源码技术栈&#xff1a; 项目架构&#xff1a;B/S架构 开发语言&#xff1a;Java语言 开发软件&#…

Java+MySQL基于SSH的扶贫信息管理系统 开题 毕业设计

扶贫信息管理系统采用了B/S(浏览器/服务器)体系结构,JAVA作为开发语言,MySQL作为数据存储进行开发,Tomcat作为WEB服务器,开发平台windows,开发工具采用比elicpse更好用的myeclipse。系统角色分为用户和管理员,主要模块有&#xff1a;县管理模块、贫困户管理模块、扶贫文件管理模…

Odoo 16 企业版手册 - 采购之三向匹配采购收货和账单

三向匹配采购收货和账单的方式 Odoo 16采购模块中的3向方式匹配采购收货和账单功能将帮助您确保您仅为交付到您地址的产品支付供应商账单。在收到采购订单中订购的产品之前&#xff0c;您可能会收到供应商的供应商账单。但是&#xff0c;您可能希望推迟付款&#xff0c;直到产品…

硬件需知知识 -- 基本元件(电阻)

一、电阻 1.1 贴片电阻 1.1.1 贴片电阻的封装大小是和功率时相关的。 封装大小功率(W)0201120\frac{1}{20}201​0402116\frac{1}{16}161​0603110\frac{1}{10}101​080518\frac{1}{8}81​12060.2518120.5或1201012\frac{1}{2}21​25121或者21.1.2 贴片电阻读数 贴片电阻的读数…

你的代码会说话吗?(下)

篇首语 代码不讲真话的直接后果是所有人被误导了&#xff0c;然后做了一件错误的事情&#xff0c;不自知地将错就错&#xff0c;让错误越陷越深&#xff0c;最后浪费宝贵的时间。可不讲真话&#xff0c;编写代码的人又不是故意的&#xff0c;也万万不可上纲上线&#xff0c;袁…

快速安装swoole php扩展

使用Swoole Compiler Loader 安装助手 对于安装Swoole Loader扩展&#xff0c;提供了安装扩展的帮助脚本&#xff0c;可以检测PHP环境&#xff0c;并提示安装扩展的方法 Loader-Helper的下载页面为http://compiler.swoole-cloud.com/trial/download/ 这个脚本为PHP脚本&…