范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

使用MindStudio进行Pytorch离线推理全流程

  1 MindStudio环境搭建
  本次实验在MindStudio上进行,请先按照教程配置环境,安装MindStudio。
  MindStudio的是一套基于华为自研昇腾AI处理器开发的AI全栈开发工具平台,该IDE上功能很多,涵盖面广,可以进行包括网络模型训练、移植、应用开发、推理运行及自定义算子开发等多种任务。MindStudio除了具有工程管理、编译、调试、运行等一般普通功能外,还能进行性能分析,算子比对,可以有效提高工作人员的开发效率。除此之外,MindStudio具有远端环境,运行任务在远端实现,对于近端的个人设备的要求不高,用户交互体验很好,可以让我们随时随地进行使用。2 VPN安装和配置
  安装好MindStudio后,需要配置远程环境。请按照教程进行VPN客户端的安装与配置。安装好VPN后,可以先在终端用ssh指令测试连接。(这一步是验证网络连接是否可用,也可以跳过)
  3 创建推理工程
  打开MindStudio,点击New Project,进入新建工程界面。选择Ascend APP。填入项目名spnasnet_100。首次新建训练工程时,需要配置CANN的版本。点击Change。
  点击 + 配置远程连接,然后根据选项填入自己服务器的ip地址、端口号、用户名和密码等。
  配置Remote CANN location。该参数需要填入ascend-toolkit在服务器上的路径地址。在这里,我们toolkit的路径如下:/usr/local/Ascend/ascend-toolkit/5.1.RC1。点击finishing进行配置。初次配置时时间稍长,请耐心等待。
  点击Next,选择Pytorch Project。
  点击Finish,完成工程创建,进入工程主界面。4 配置SSH和Deployment
  在MindStudio的远程服务中,定义了SSH 配置和Deployment两个概念。前者SSH 配置类似MobaxTerm中的Session的概念,用户可以保存多个远程服务器的连接配置。后者Deployment管理远程开发时的本地文件与远程文件的同步。配置好Deployment后,我们就可以像使用本地python环境一样去使用远程的python环境了。点击File -> Settings -> Tools,即可看到两个设置的入口,下面分别介绍如何配置他们。
  4.1 配置SSH
  首先点击SSH Configurations,再点击 + 配置远程连接,然后根据选项填入自己服务器的ip地址、端口号、用户名和密码等。测试成功点击Apply即可保存配置,以后就可以一键连接啦!
  4.2 配置Deployment
  Deployment配置能够更精准地连接远程服务,它需要选择一个SSH连接定位远程主机,然后设置本地与远程项目目录的对应关系。如下图所示创建一个新的Deployment。
  如图310是我创建的Deployment名字,首先选择连接哪一个SSH服务,然后测试连接是否可用。
  下一步,设置项目目录映射关系,点击Mappings,然后选择本地的项目目录和远程的项目目录(最好是提前创建好文件夹),接下来跑代码的时候MindStudio会保证这两个目录文件的同步。
  配置好Mappings后,建议配置Excluded Paths,因为MindStudio的默认同步行为会把Mappings对应目录的文件保持完全相同,这意味着只存在于远程的数据集文件夹会被删除(如果本地没有数据集)。在此我配置了几个需要排除的文件夹目录。
  5 配置远程python解释器
  现在,SSH和Deployment的映射关系已经配置好了,但是MindStudio还不知道python解释器的位置。因此,下面将介绍如何配置python解释器。
  点击File -> Project Structure->SDKs可以看到如图所示的界面。点击+号,可以新增python SDK和JDK。这里只演示Python的添加方法。
  点击Add Python SDK后,将弹出下图所示的界面,点击左侧的SSH Interpreter,如下图所示,首先选择使用哪一个Deployment,这是刚刚我们配置过的。然后选择python解释器的路径。图中的路径是MindStudio自动检测出来的,但一般需要自己找自己的Python环境安装目录。如果是conda环境,可以使用which python找到python的安装路径。
  然后点击Project,选择刚才添加到MindStudio中的python解释器,将其作为本项目使用的解释器。
  6 数据集准备6.1 数据预处理
  上传好数据集以后,执行 preprocess_spnasnet_100_pytorch.py脚本,生成数据集预处理后的bin文件。
  第一个参数为原始数据验证集(.jpeg)所在路径,第二个参数为输出的二进制文件(.bin)所在路径。每个图像对应生成一个二进制文件。
  MindStudio会首先上传本地文件到远程服务器,将本地的文件同步到远程这个过程可能很慢,同步完成后开始运行Python代码,MindStudio会实时地在控制台打印输出:
  6.2 生成数据集info文件
  执行get_info.py脚本,生成数据集信息文件。
  第一个参数为模型输入的类型,第二个参数为生成的bin文件路径,第三个为输出的info文件,第四、第五个为宽高信息。执行结果:
  7 模型转换
  本模型基于开源框架PyTorch训练的spnasnet_100进行模型转换。先使用PyTorch将模型权重文件.pth转换为.onnx文件,再使用ATC工具将.onnx文件转为离线推理模型文件.om文件。
  首先获取权重文件。单击Link在PyTorch开源框架获中取经过训练的spnasnet_100权重文件model_best.pth.tar,源码中已提供下载权重文件。7.1 导出onnx文件
  使用pthtar2onnx.py脚本将.pth文件转换为.onnx文件
  7.2 导出om文件
  从onnx转为om需要用atc工具,MindStudio提供了atc工具的窗口化应用,它会根据用户选择自动生成atc指令。Model Converter的入口如图所示:
  选择onnx模型路径,模型输出名称,目标设备,输入格式和batchsize等信息。
  MindStudio自动生成如下atc指令,用户可以在此做最后的校验,点击Finish即可开始进行模型转换。
  模型转换成功:
  8 模型推理
  使用benchmark工具进行推理。这个和前面的python脚本不同,它在MindStudio中属于ACL应用,可以如图所示创建应用:
  点击 + 号,再点击Ascend App:
  然后进行如下配置:
  参数详情请参见《CANN推理benchmark工具用户指南》。推理后的输出默认在当前目录result下。
  执行结果:
  运行出错:error while loading shared libraries: libascendcl.so: cannot open shared object file: No such file or directory.
  这个错误是因为没有配置好环境变量。因为我们在终端运行它时,一般要先执行一下:source /usr/local/Ascend/ascend-toolkit/set_env.sh,这一步操作在MindStudio中可以通过如图所示的方法配置环境变量解决:
  变量内容就是/usr/local/Ascend/ascend-toolkit/set_env.sh的内容,读者可以直接复制使用。
  LD_LIBRARY_PATH=/usr/local/Ascend/ascend-toolkit/latest/lib64:/usr/local/Ascend/ascend-toolkit/latest/lib64/plugin/opskernel:/usr/local/Ascend/ascend-toolkit/latest/lib64/plugin/nnengine:$LD_LIBRARY_PATH;PYTHONPATH=/usr/local/Ascend/ascend-toolkit/latest/python/site-packages:/usr/local/Ascend/ascend-toolkit/latest/opp/op_impl/built-in/ai_core/tbe:$PYTHONPATH;PATH=/usr/local/Ascend/ascend-toolkit/latest/bin:/usr/local/Ascend/ascend-toolkit/latest/compiler/ccec_compiler/bin:$PATH;ASCEND_AICPU_PATH=/usr/local/Ascend/ascend-toolkit/latest;ASCEND_OPP_PATH=/usr/local/Ascend/ascend-toolkit/latest/opp;TOOLCHAIN_HOME=/usr/local/Ascend/ascend-toolkit/latest/toolkit;ASCEND_HOME_PATH=/usr/local/Ascend/ascend-toolkit/latest
  设置变量后,再次启动运行,可以在控制台看到,在执行benchmark前,会首先export环境变量。
  修改后代码运行成功:
  可以获得batch16 310单卡吞吐率为1379.94×4 = 5519.76 fps
  9 精度验证
  调用vision_metric_ImageNet.py脚本与数据集标签val_label.txt比对,可以获得Accuracy Top5数据,结果保存在result.json中。
  第一个参数为生成推理结果所在路径,第二个参数为标签数据,第三个参数为生成结果文件路径,第四个参数为生成结果文件名称。
  获得精度数据如下:310 Top1 accuracy为74.2%,Top5 accuracy为91.94%。

场均4。3分,被状元郎隔扣!日本天才遭冷落,真要离开NBA?日本天才遭冷落中国球员上一次出现在NBA赛场上,应该还是休斯顿火箭的周琦,至于说上一次NBA赛场上的中国德比之战,那更是得追溯到姚明易建联时期。NBA作为世界水平最高的篮球联赛,似贝尔首发球队惨败,贝尔踢比赛隐形到球迷要报失踪贝尔转会到美职联踢比赛都要被球迷批评?因为加利斯贝尔在当地时间周五首次以主力首发身份代表洛杉矶FC披甲上场,不过球队却是最终14大败。贝尔虽然投奔转会到美职联后,贝尔(Gareth美媒评选202223赛季25岁以下,最好的25名年轻球员,谁被高估了202122赛季不少年轻球员展示了自己出色的天赋,我们可以看到进入202223赛季的时候,有不少年轻球员将成为自家球队的核心人物。为此,美媒也是评选出202223赛季25岁以下,最不应该啊!防守出色,三分命中率39,这样的球员NBA没人要不应该啊,这样的球员没人要一个球员,防守出色,曾两次入选最佳防守阵容,他不一定能够成为球队眼中的香饽饽,如果再加上赛季场均39的投篮命中率,那么这个球员一定会吸引很多球队的目光。可同时留队!杜兰特二选一逼宫失败的背后,纳什仍可能随时下课21年季后赛,经历过跟腱大伤的杜兰特,复出后非但没有出现严重下滑趋势,反倒在季后赛中打出了场均34。3分9。3板4。4助,51。4投篮命中率的超神表现。并且还在哈登欧文先后受伤的前篮网湖人竞争盖帽王杜兰特指定特纳打首发步行者索要两个选秀权纽约邮报布莱恩刘易斯最新报道,篮网队正在和湖人队争夺迈尔斯特纳,并且提供了初步交易方案,步行者提出索要两个首轮选秀权的要求。凯文杜兰特决定留队,篮网队需要在训练营之前完成阵容调整,HICOOL2022全球创业大赛奖项揭晓分子之心获一等奖新京报贝壳财经讯(记者程子姣)8月26日,HICOOL2022全球创业大赛终极奖项揭晓,分子之心自主研发的基于AI(人工智能)的蛋白分子发现优化与设计平台从全球众多优秀创业项目中脱7个月430亿,高通英特尔猝不及防,外媒意料之中文C君科讯排版C君科讯头条号原创文章,禁止抄袭,违者必究7个月430亿,高通英特尔猝不及防,外媒意料之中在2019年之后,伴随着芯片规则的改变,让我们认识到了芯片等技术的重要性,在8月26日区块链资讯汇总(五)1931报告南非加密货币拥有率为10金色财经报道,最新的Finder报告称,南非的加密货币拥有率为10,即400万人,在26个加密货币采用国家中排名第18位。该报告还指出,南非加密系统升级能让手机变流畅?答案苹果做不到,华为和谷歌也做不到一个老生常谈的问题,手机越用越卡和系统升级能让手机变流畅吗?其实这两个问题,都不难理解。对于厂商来说,它们肯定是会有一个默认的报废计划,当手机使用一定年限以后,它们就不会再收到发官完了,这些良心国产App,全要被凉凉小雷作为多年智能手机用户,对于App近十年来的发展,还算是有个清晰的了解。用户需求市场发展和厂商竞争等因素,导致了国内外的App生态极其割裂,说是平行宇宙都不过分。最为典型的,莫过
南北朝时期,宋孝武帝对刘氏藩王的分割策略及影响根据历史的记载,周武王姬发建立周朝后大肆分封,左传其兄弟之国者十一有五人,姬姓之国者四十人,皆举亲也。在当时,周武王通过分封家族兄弟的方式控制天下,的确扩大了周王室的统治力和影响力安徽与河南的区划变动,河南省220个村庄,为何划入了安徽省?在之前的文章中,作者和大家聊了一系列关于我国河南省与周边各省区划变迁的故事,例如河南省与河北省河南省与山东省之间的区划变迁。今天,我们聊聊河南省与安徽省之间的区划变迁。河南省安徽省智行盒子新能源整车项目牵手河南大河报豫视频记者祁驿1月28日正月初七,在河南省第七期三个一批项目建设活动上,盒子汽车正式与河南省达成签约,总投资达50亿元。盒子汽车致力于打造中国原创的全民出行车。针对B端网约车新闻特写丨K546列车上的紧急救助今天(31日)上午,在成都开往哈尔滨方向的K546次列车上,一名旅客突发疾病,危急关头,列车工作人员展开了紧急施救。上午九点半左右,当K546次列车行驶在四川江油至广元区间,正在车表情包10狂飙男神张译喜欢个关注,持续更新表情包头像文案,百粉后更新壁纸背景一定有你喜欢的,你想要的类型私信我,mmhh为你找搞笑短故事医生正在抢救位将军,旁边的护士突然掏出一把刀捅向了医生,在场的每一新春走基层只争朝夕绘宏图新春佳节,人们纷纷选购瓜果肉类海鲜等年货,制作美味佳肴,招待来客。从原产地到家中冰箱,食物历经千山万水,却依旧新鲜早早囤好的果蔬,拿出来还很可口这些都有赖于食物冷链保鲜技术。图说保河北港口集团秦皇岛港九公司夜幕下,海水拍打着渤海湾的海岸。晚上6时30分,程宝刚迈着轻快的步伐,走进河北港口集团秦皇岛港九公司集控中心。这个春节,作为集控中心乙班值班主任,程宝刚丝毫不敢懈怠,与班组的10名专家第2轮感染高峰或在3到5月,又媒体坑专家,专家坑大家?据媒体报道,1月31日下午3时,华中科技大学同济医学院附属同济医院感染科主任医师邢铭友教授在某公益科普直播中,给出预测第二轮感染高峰可能会在35月到来,但这次高峰民众可能感觉不那么五年实现三大国家战略跨越提升山东矢志推进现代化强省建设岁末年初,新旧更迭,山东交出过去五年亮眼成绩单矢志推进强省建设,取得了实施黄河重大国家战略获得重大进展加快新旧动能转换取得重大成效绿色低碳高质量发展先行区实现重大突破等三大标志性成一次性纸杯的由来是什么?安全性如何?大家应该都用过一次性纸杯,它在很多场合都经常出现。很多人使用一次性纸杯时,内心都是拒绝的,尤其是喝热水热饮品时。图片来源pexles那么你有没有想过,一次性纸杯是什么,安全吗,它是卯兔闹元宵,盐田社区组织长者做手工元宵节将至,为了让盐田社区老人度过一个更有传统味道的节日,1月31日,盐田社区文明实践站联合金港华庭长者服务点共同举办了卯兔闹元宵快乐幸福年手工制作活动。吸引了10多位老年人前来参