英伟达 Smi JSON 输出

     2023-03-07     201

关键词:

【中文标题】英伟达 Smi JSON 输出【英文标题】:Nvidia Smi JSON Output 【发布时间】:2017-08-03 19:17:33 【问题描述】:

我想输入有关机器可用 GPU 和状态的系统信息以进行实时监控。 我正在使用XML 输出 GPU 信息

$ nvidia-smi -x -q

此命令将打印输出当前 GPU 状态(如使用情况、温度等)以及格式化的 XML(带有定义的 DTD)。 我的 XML 输出是 here。

没有直接从nvidia-smi输出到json的选项,所以这时候我看到的唯一选择就是将XML从Node.js转换成JSON。

问题是我需要它作为 JSON,所以我试图在我的 Node 应用程序中转换为 JSON。我依次使用了几个 npm 可用模块,如 xml2json、node-xml2js 等,但每个模块都有不同的错误(null、undefined 等)。 在浏览器中使用简单的 DOMParser (window.DOMParser) 可以代替。 这个 XML 似乎是一个错误,因为当我有一个像 here 这样的 GPU 输出时,JSON 转换得很好,如 gist 所示。

我正在使用 node spawn 调用nvdia-smi 命令,然后解析输出如下:

(function() 

var XMLParser = require('./xml2json');

function gpuInfo() 
    var _data='';
    var curl = require('child_process').spawn('nvidia-smi', ['-x','-q']);
    curl.stdout.on('data', function(data)  
        _data+= new Buffer(data,'utf-8').toString();
     );
    curl.stdout.on('end', function(data) 
        var x2js = new XMLParser();
        var json = x2js.xml_str2json( _data );
        console.log(JSON.stringify( json,null,2));
    );
    curl.on('exit', function(code) 
        if (code != 0) 
            console.log('Failed: ' + code);
        
    );


module.exports = 
    gpuInfo:gpuInfo    

在这种情况下,我使用的是 modified 版本的 xml2json 浏览器客户端模块和 xmldom 模块,但它似乎不是一个稳定的解决方案,所以我的解析在这里完成:

this.parseXmlString = function(xmlDocStr) 
            if (xmlDocStr === undefined) 
                return null;
            
            var xmlDoc;
            var DOMParser = require('xmldom').DOMParser;        
            var parsererrorNS = null;
            try 
                xmlDoc = new DOMParser().parseFromString( xmlDocStr, "text/xml" );
                if( parsererrorNS!= null && xmlDoc.getElementsByTagNameNS(parsererrorNS, "parsererror").length > 0) 
                    xmlDoc = null;
                
            
            catch(err) 
                xmlDoc = null;
            
            return xmlDoc;
        ;

离开这里

    以 json 格式获取这些信息的另一种方式? 通过一些强大的 XML/JSON 解析器模块获得更有效的解决方案?

【问题讨论】:

【参考方案1】:

尝试使用https://github.com/Cheedoong/xml2json 它速度更快,可以用作像 jq 这样的二进制工具。 你会这样跑:

nvidia-smi -x -q | xml2json | jq

结果会是这样的:


  "nvidia_smi_log": 
    "timestamp": "Thu Aug 29 13:45:26 2019",
    "driver_version": "387.34",
    "attached_gpus": "9",
    "gpu": [
      
        "@id": "00000000:03:00.0",
        "product_name": "P106-090",
        "product_brand": "GeForce",
        "display_mode": "Disabled",
        "display_active": "Disabled",
        "persistence_mode": "Enabled",
        "accounting_mode": "Disabled",
        "accounting_mode_buffer_size": "1920",
        "driver_model": 
          "current_dm": "N/A",
          "pending_dm": "N/A"
        ,
        "serial": "N/A",
        ...

【讨论】:

查看英伟达显卡对cuda版本的支持

参考技术A选择Pytorch安装版本时,需要确认自己的计算平台是否支持GPU计算,适合哪个版本。cmd里输入nvidia-smi,即可查看本地CUDA版本选择不高于该版本的计算平台 查看详情

英伟达实时3d设计协作和仿真平台已正式发布

导读得益于新的功能和工具,英伟达实时3D设计协作和仿真平台现已正式发布,可供配备RTXGPU的英伟达GeForceStudio创作者使用。英伟达在元宇宙方面的布局又有了新动作。英伟达为元宇宙建立提供基础的模拟和协作平台—... 查看详情

英伟达nvidia论坛

https://forums.developer.nvidia.com/备份一下网址 查看详情

英伟达存在更新或相同版本

参考技术A不用理会。NVIDIA是一家人工智能计算公司,公司创立于1993年。英伟达存在更新或相同版本不用理会,总部位于美国加利福尼亚州圣克拉拉市。 查看详情

英伟达驱动手动安装使用教程

参考技术A英伟达显卡驱动手动安装首先需要下载好相应的驱动包软件,然后用压缩软件解压出来,再在控制面板的设备管理器中找到最后一个“显示适配器”,双击下面未正确识别出来的显卡,选择更新驱动程序--手动安装,再... 查看详情

关于英伟达数字人文章的致歉和说明

大家好,昨天我们发布的一篇英伟达数字人新进展的文章,引发了较大范围的关注和讨论。经过我们的复核及英伟达官方最新确认,这篇文章存在不严谨和失当之处,特此进行说明和致歉。一、说明一下我们的错... 查看详情

英伟达gpu虚拟化---申请英伟达测试license

此文基于全新的License2.0系统,针对vGPULicense的试用申请以及软件下载和License管理进行了详细的说明,方便今后我们申请测试License,快速验证GPU的功能。试用步骤:·      EvaluationLicense 申请· ... 查看详情

准备放弃收购arm?英伟达公司回应:消息不实

...0亿美元的芯片交易案在批准上未取得任何进展,因此英伟达决定放弃收购ARM,当日英伟达股价就大跌4.5%。对于放弃收购ARM的传言,英伟达称该消息子虚乌有,该公司表示正持续在监管文件中表述最详细的观点ÿ... 查看详情

windows系统下有英伟达显卡安装pytorch

...节需要知道,在下载PyTorch的时候,我们需要根据英伟达显卡的版本进行相应的下载,如何查看英伟达显卡版本?下载Anaconda的时候很慢,如何让Anaconda下载很快?在使用Anaconda下载Py 查看详情

windows系统下有英伟达显卡安装pytorch

...节需要知道,在下载PyTorch的时候,我们需要根据英伟达显卡的版本进行相应的下载,如何查看英伟达显卡版本?下载Anaconda的时候很慢,如何让Anaconda下载很快?在使用Anaconda下载Py 查看详情

模型推理英伟达jetson系列边缘盒子硬件参数汇总

 本文详细介绍了英伟达Jetson边缘盒子硬件参数,有助于你的AI部署。 最近手上来了很多AI边缘盒子,其中就英伟达的来说,已基本集齐了Jetson系列的盒子,包括JetsonNano、JetsonTX2NX、JetsonTX2、JetsonXavierNX、JetsonAGXX... 查看详情

Cuda 内核代码驻留在英伟达 GPU 上的啥位置?

】Cuda内核代码驻留在英伟达GPU上的啥位置?【英文标题】:WheredoesCudakernelcoderesideonnvidiaGPU?Cuda内核代码驻留在英伟达GPU上的什么位置?【发布时间】:2011-07-0413:12:04【问题描述】:我已经浏览了Cudaprogrammingguide,但仍然不清楚cud... 查看详情

真假黄仁勋疑云?英伟达推出全球首个元宇宙平台

...】近日,在计算机图形顶级会议ACMSIGGRAPH2021上,英伟达介绍了公司研发的3D仿真模拟和协作平台Omniverse,并详细解释了数字假人黄仁勋的打造过程。难道英伟达今年4月的主题演讲是由“假黄仁勋”主持的?对此... 查看详情

真假黄仁勋疑云?英伟达推出全球首个元宇宙平台

...】近日,在计算机图形顶级会议ACMSIGGRAPH2021上,英伟达介绍了公司研发的3D仿真模拟和协作平台Omniverse,并详细解释了数字假人黄仁勋的打造过程。难道英伟达今年4月的主题演讲是由“假黄仁勋”主持的?对此... 查看详情

英伟达cuda垄断地位难保:pytorch不断拆塔,openai已在偷家

詹士Alex发自凹非寺量子位|公众号QbitAI英伟达的软件护城河正在逐渐消失。随着PyTorch支持更多GPU厂商,再加上OpenAI的Triton搅局,英伟达手中的利器CUDA 逐渐锋芒不再。上述观点来自SemiAnalysis首席分析师DylanPatel,相关... 查看详情

模型推理英伟达jetson系列边缘盒子性能测评

 本文记录了英伟达Jetson系列边缘盒子的性能测评小结。 测评的AIBox是分别来自浪潮、研智、米文,盒子型号包括浪潮JetsonXavierNX、研智JetsonXavierNX、米文JetsonNano、米文JetsonTX2NX、米文JetsonXavierNX、米文JetsonAGXXavier,数据... 查看详情

1050ti都是用英伟达驱动软件吗

...好的。安装472版本的驱动也可以让显卡发挥出最大性能,英伟达新出的两个测试版本不用下载,没有意义。参考技术A1050ti最适合用472.17版本的驱动。最新的是473版本的驱动,但是473版本的驱动兼容性有很大的问题,472版本的驱动的... 查看详情

2d照片变身3d模型,来看英伟达的ai新“魔法”!

...办的计算机视觉和模式识别会议(CVPR)上,英伟达推出了一种名为3DMoMa的AI“魔法”:将静态2D照片转换为可轻松编辑的3D模型。据英伟达介绍,3DMoMa可供建筑师、设计师、艺术家和游戏开发者将图像转换的3D... 查看详情