• [Atlas300] 【昇腾310】【量化模型转离线模型】使用resnet50量化模型完成后只能使用deploy的权重和模型么?没人回复的嘛
    resnet量化后生成的可在昇腾AI处理器部署的模型文件和权重文件、可在Caffe环境进行精度仿真模型文件和权重文件,我想知道这种两种权重和模型,只有前者能转离线生成.om么??后面的这种是不能么????????????我用了后面的这种权重和模型文件转离线就会报错,有没有人来给解释一下的
  • [问题求助] 【昇腾310】【量化模型转离线模型】使用resnet50量化模型完成后只能使用deploy的权重和模型么?
    resnet量化后生成的可在昇腾AI处理器部署的模型文件和权重文件、可在Caffe环境进行精度仿真模型文件和权重文件,我想知道这种两种权重和模型,只有前者能转离线生成.om么??后面的这种是不能么????????????我用了后面的这种权重和模型文件转离线就会报错
  • [热门活动] #活动已结束,中奖名单已公布#华为全联接2020 | 华为扫地僧&人气博主主带你看展啦!
    【直播简介】9月23-26日,一年一度华为全联接2020即将迎来一群神秘人,他们常年穿梭于全球各地,个个身怀绝技,在很多领域都堪称顶级技术“大牛”,却甘于平淡,过着低调的生活,俗称“扫地僧”,据最新探报,此次前来的华为扫地僧阵容,相当“豪华”,我们派出95后美少女程序媛、多平台博主Christina,将与华为扫地僧来一波火热碰撞! 【直播时间】2020年9月25日13:00-18:00【直播链接】https://live.huawei.com/huaweiconnect/live/cn/6021.html【直播议程】 【直播看点】据最新探报,此次前来的华为扫地僧阵容相当“豪华”,会与一大波开发者人气博主组成CP,9.23-26现场直播ModelArts、HiLens、KubeEdge、Volcano、openGauss、openEuler、openLooKeng、MindSpore、DevCloud、ROMA、IoT、鲲鹏、昇腾、云原生、云数据库等硬核内容,精彩不容错过!【互动方式】直播后您可以在本帖留言反馈建议和心得,观看直播回放。直播结束后我们会对参与互动回帖的用户进行抽奖,从中评选出优秀互动幸运奖(开发者T恤)。 【互动规则】1.互动截止时间为是2020年9月27号,活动结束后,在所有参与回帖留言互动的用户中,随机评选出10名互动幸运奖(开发者T恤)。2.获奖结果将在互动结束后3个工作日内进行公示,请获奖者在公示后3个工作日内邮件反馈您的邮寄信息至zhangpeipei@huawei.com,所有奖品将在活动结束后15个工作日内发放。4.为防止有恶意发帖行为,同一ID回帖不得超过5条,若超过将取消获奖资格。5.每个ID只能参与一次评选,同一ID不可重复中奖。6.本次回帖内容需满足华为云论坛发帖规范https://bbs.huaweicloud.com/forum/thread-23077-1-1.html 【获奖公示】中奖名单已公布,名单上的10位幸运用户请在公示后3个工作日内邮件反馈您的邮寄信息至zhangpeipei@huawei.com,所有奖品将在活动结束后15个工作日内发放,逾期视为放弃!中奖用户-论坛昵称奖品andyleung开发者T恤问道十年树木linzhuofeng帕加尼风之子8866扶摇直上神的孩子全跳舞张辉Flower_MaHuahua_1   
  • [Atlas300] 【昇腾310】【caffe模型转离线】转离线会报错
    转离线报以下的错误,请问这是啥情况2020-09-24 09:45:28  ATC start working now, please wait for a moment.2020-09-24 09:45:28  [EVENT] GE(10743,atc):2020-09-24-09:45:28.613.031 [framework/domi/init/gelib.cc:55]10743 Initialize:[GEPERFTRACE] GE Init Start2020-09-24 09:45:28  [EVENT] GE(10743,atc):2020-09-24-09:45:28.613.297 [framework/domi/init/gelib.cc:92]10743 InnerInitialize:[GEPERFTRACE] The time cost of InnerInitialize::SystemInitialize is [197] micro second.2020-09-24 09:45:28  [EVENT] GE(10743,atc):2020-09-24-09:45:28.615.398 [framework/domi/init/gelib.cc:102]10743 InnerInitialize:[GEPERFTRACE] The time cost of InnerInitialize::EngineInitialize is [2075] micro second.2020-09-24 09:45:31  [EVENT] FE(10743,atc):2020-09-24-09:45:31.210.750 [fusion_engine/fusion_manager/fusion_manager.cpp:252]Initialize:"[FE_PERFORMANCE]The time cost of FusionManager::Initialize is [2406283] micro second."2020-09-24 09:45:31  [EVENT] GE(10743,atc):2020-09-24-09:45:31.631.866 [framework/domi/init/gelib.cc:112]10743 InnerInitialize:[GEPERFTRACE] The time cost of InnerInitialize::OpsManagerInitialize is [3016428] micro second.2020-09-24 09:45:31  [EVENT] GE(10743,atc):2020-09-24-09:45:31.631.901 [framework/domi/init/gelib.cc:122]10743 InnerInitialize:[GEPERFTRACE] The time cost of InnerInitialize::SessionManagerInitialize is [0] micro second.2020-09-24 09:45:31  [EVENT] GE(10743,atc):2020-09-24-09:45:31.631.931 [framework/domi/init/gelib.cc:132]10743 InnerInitialize:[GEPERFTRACE] The time cost of InnerInitialize::SetMemoryMallocSize is [20] micro second.2020-09-24 09:45:31  [EVENT] GE(10743,atc):2020-09-24-09:45:31.689.557 [framework/domi/init/gelib.cc:142]10743 InnerInitialize:[GEPERFTRACE] The time cost of InnerInitialize::HostCpuEngineInitialize is [57597] micro second.2020-09-24 09:45:31  [EVENT] GE(10743,atc):2020-09-24-09:45:31.689.593 [framework/domi/init/gelib.cc:78]10743 Initialize:[GEPERFTRACE] The time cost of GELib::Initialize is [3076502] micro second.2020-09-24 09:45:33  [EVENT] GE(10743,atc):2020-09-24-09:45:33.934.328 [framework/domi/graph/manager/graph_manager.cc:365]10743 PreRun:PreRun start, graph node size 608, session id 1600940733934300, graph id 0, graph name reid2020-09-24 09:45:33  [EVENT] FE(10743,atc):2020-09-24-09:45:33.936.319 [fusion_engine/graph_optimizer/fe_graph_optimizer.cpp:431]OptimizeGraphPrepare:"[FE_PERFORMANCE]The time cost of FEGraphOptimizer::OptimizeTagNoConstFoldingGraph is [1936] micro second."2020-09-24 09:45:33  [EVENT] GE(10743,atc):2020-09-24-09:45:33.936.373 [framework/domi/graph/manager/graph_manager.cc:368]10743 PreRun:[GEPERFTRACE] The time cost of GraphManager::graph_optimize_.OptimizeOriginalGraphForQuantize is [2009] micro second.2020-09-24 09:45:33  [EVENT] GE(10743,atc):2020-09-24-09:45:33.936.426 [framework/domi/graph/manager/graph_manager.cc:369]10743 PreRun:[GEPERFTRACE] The time cost of GraphManager::graph_optimize_.HandleSummaryOp is [43] micro second.2020-09-24 09:45:33  [EVENT] GE(10743,atc):2020-09-24-09:45:33.939.606 [framework/domi/graph/preprocess/graph_preprocess.cc:1965]10743 PrepareDynShape:[GEPERFTRACE] The time cost of Prepare::Init is [3150] micro second.2020-09-24 09:45:33  [EVENT] GE(10743,atc):2020-09-24-09:45:33.942.426 [framework/domi/graph/preprocess/graph_preprocess.cc:1966]10743 PrepareDynShape:[GEPERFTRACE] The time cost of Prepare::SetRtContext is [2787] micro second.2020-09-24 09:45:33  [EVENT] GE(10743,atc):2020-09-24-09:45:33.942.455 [framework/domi/graph/preprocess/graph_preprocess.cc:1967]10743 PrepareDynShape:[GEPERFTRACE] The time cost of Prepare::CheckAndUpdateInput is [5] micro second.2020-09-24 09:45:33  [EVENT] GE(10743,atc):2020-09-24-09:45:33.944.276 [framework/domi/graph/preprocess/graph_preprocess.cc:1968]10743 PrepareDynShape:[GEPERFTRACE] The time cost of Prepare::GraphEquivalentTransformation is [1796] micro second.2020-09-24 09:45:33  [EVENT] GE(10743,atc):2020-09-24-09:45:33.944.496 [framework/domi/graph/passes/pass_manager.cc:69]10743 Run:[GEPERFTRACE] The time cost of ProcessNetOutput::NetOutputPass is [181] micro second.2020-09-24 09:45:33  [EVENT] GE(10743,atc):2020-09-24-09:45:33.944.519 [framework/domi/graph/passes/pass_manager.cc:69]10743 Run:[GEPERFTRACE] The time cost of ProcessNetOutput::DataPass is [1] micro second.2020-09-24 09:45:33  [EVENT] GE(10743,atc):2020-09-24-09:45:33.944.531 [framework/domi/graph/preprocess/graph_preprocess.cc:1969]10743 PrepareDynShape:[GEPERFTRACE] The time cost of Prepare::ProcessNetOutput is [229] micro second.2020-09-24 09:45:33  [EVENT] GE(10743,atc):2020-09-24-09:45:33.944.545 [framework/domi/graph/preprocess/graph_preprocess.cc:1970]10743 PrepareDynShape:[GEPERFTRACE] The time cost of Prepare::multibatch::ProcessMultiBatch is [1] micro second.2020-09-24 09:45:33  [EVENT] GE(10743,atc):2020-09-24-09:45:33.946.726 [framework/domi/graph/preprocess/graph_preprocess.cc:1971]10743 PrepareDynShape:[GEPERFTRACE] The time cost of Prepare::TryDoAipp is [2163] micro second.2020-09-24 09:45:33  [EVENT] GE(10743,atc):2020-09-24-09:45:33.948.711 [framework/domi/graph/preprocess/graph_preprocess.cc:2521]10743 ProcessBeforeInfershape:[GEPERFTRACE] The time cost of GraphManager::ProcessCondRemove is [1947] micro second.2020-09-24 09:45:33  [EVENT] GE(10743,atc):2020-09-24-09:45:33.948.735 [framework/domi/graph/preprocess/graph_preprocess.cc:1972]10743 PrepareDynShape:[GEPERFTRACE] The time cost of Prepare::ProcessBeforeInfershape is [1980] micro second.2020-09-24 09:45:33  [ERROR] GE(10743,atc):2020-09-24-09:45:33.952.110 [common/graph/./op_desc.cc:503]10743 MutableInputDesc: ErrorNo: -1(failed) Can't find the input desc 22020-09-24 09:45:33  [ERROR] GE(10743,atc):2020-09-24-09:45:33.952.131 [common/graph/./ge_attr_value.cc:327]10743 GetAttrMapItem: ErrorNo: -1(failed) origin_format obj is nullptr2020-09-24 09:45:33  [ERROR] GE(10743,atc):2020-09-24-09:45:33.952.148 [common/graph/./op_desc.cc:503]10743 MutableInputDesc: ErrorNo: -1(failed) Can't find the input desc 32020-09-24 09:45:33  [ERROR] GE(10743,atc):2020-09-24-09:45:33.952.157 [common/graph/./ge_attr_value.cc:327]10743 GetAttrMapItem: ErrorNo: -1(failed) origin_format obj is nullptr2020-09-24 09:45:33  [ERROR] GE(10743,atc):2020-09-24-09:45:33.952.253 [common/graph/./op_desc.cc:503]10743 MutableInputDesc: ErrorNo: -1(failed) Can't find the input desc 22020-09-24 09:45:33  [ERROR] GE(10743,atc):2020-09-24-09:45:33.952.270 [common/graph/./ge_attr_value.cc:327]10743 GetAttrMapItem: ErrorNo: -1(failed) origin_format obj is nullptr2020-09-24 09:45:33  [ERROR] GE(10743,atc):2020-09-24-09:45:33.952.289 [common/graph/./op_desc.cc:503]10743 MutableInputDesc: ErrorNo: -1(failed) Can't find the input desc 32020-09-24 09:45:33  [ERROR] GE(10743,atc):2020-09-24-09:45:33.952.299 [common/graph/./ge_attr_value.cc:327]10743 GetAttrMapItem: ErrorNo: -1(failed) origin_format obj is nullptr
  • [问题求助] 【昇腾310】【mindstudio】安装caffe后出现报错,但是mindstudio还能正常启动
    安装caffe后出现报错,但是mindstudio还能正常启动
  • [教程] 昇腾modelzoo用例迁移至ModelArts指引
    什么是晟腾社区的ModelZoo?对于开发者来说,部署应用到Atlas设备,有一点是最为关键、最具有挑战性的——模型的转换,需要将Caffe或TensorFlow框架下的模型转为专用的.om模型才可以。这一般是大家自己转换,一旦遇到转换失败,可能就需要较长时间的调整了,为了减轻大家开发负担,这里给大家介绍一下昇腾开发者社区的ModelZoo,这里有适配好的模型更有支持Ascend 910训练的主流算法大家可以直接下载模型使用,去部署自己的项目,如果大家对模型有更好的要求,或有定制化的需求,还可以自己训练,下载自己想用的算法就行了哦,非常方便。为什么要迁移到ModelArts上?晟腾社区的Modelzoo默认是在atlas800 9000的裸机上运行,当前ModelArts提供atlas800 9000的计算资源,如果没有atlas800 9000的逻辑,可以使用ModelArts运行这些算法。下面以晟腾社区的VGG16为例展示如何迁移代码到ModelArts上运行ModelZoo VGG16下载链接地址https://www.huaweicloud.com/ascend/resources/modelzoo首先看train.py这个入口脚本,modelarts使用OBS服务作为存储介质,因此,需要将OBS上的数据下载到本地。这里设置了real_data_url = '/cache/imagenet'云上d910的节点都会挂载/cache这个目录作为本次训练作业的临时存储空间,此目录对于单卡d910,大小为400GB的SSD,磁盘为nvme ssd,读取速度 > 600MB/s,对于8卡d910存储空间为3.5TB,磁盘为nvme ssd,读取速度 > 600MBsync_data方法是对于8卡d910节点的数据下载,因为会启动8个进程,每个进程对应1块npu,所以只需要有一个进程进行数据的下载即可,这里面是通过获取环境变量DEVICE_ID来控制的,DEVICE_ID为0的进程进行数据的下载,下载成功以后,其他7个进程收到下载完成的信号,再一起往下走。download_data方法是对于单卡d910资源进行数据下载的逻辑main函数,通过rank size来确定当前是单卡还是多卡,如果是多卡rank_size > 1.此时走多卡逻辑进入main函数首先调用的是parse_args,需要在parse_args代码中添加如下代码来完成适配。因为云上会传入这两个参数下面是进行data_loader.py文件的适配云上环境变量中没有DEVICE_INDEX,可以使用RANK_ID或者DEVICE_ID进行替换,这里使用RANK_ID进行替换。保存训练结果到OBS可以通过如下方式进行保存,例如VGG中,chpt保存在了./result目录下面,这是一个相对路径,result目录会被放到/home/work/workspace/device0,/home/work/workspace/device1下面,每个进程会在/home/work/workspace目录下面创建一个属于自己的目录,下面的代码让0号进程上传ckpt到OBS修改完这两个文件就可以正常提交作业了。VGG修改后的train.py代码已经添加到附件,可以进行查看注意:如果modelzoo的文档里面说要使用imagenet数据集进行测试,那就代表要使用全量的imagenet数据集,不能只上传少量数据进行测试,那样会触发bug。RTF 是RANK_TABLE_FILE的缩写云上ModelArts在拉起进程之前会设置如下环境变量DEVICE_ID: 使用 RTF 中记录的 device_id 设置该值RANK_ID: 使用 RTF 中记录的 rank_id 设置该值RANK_SIZE: 根据 RTF 中 device 的数目设置该值,例如 4 * D910,该值即为 4HCCL_CONNECT_TIMEOUT: HCCL 集合通信超时时间,默认配置为 1800 s
  • [问题求助] 【昇腾310】【多用户使用mindstudio】多用户在同一个云服务器中使用mindstudio的自定义算子、量化离线和模型推理
    多用户在同一个云服务器中使用mindstudio的来自定义算子、量化离线和模型推理,可以同时使用么?之前有人说可以在HwHiAiUser用户组下创建其他用户,那么我想问A300-3010-NPU_Driver、A300-3010-NPU_Firmware是在root权限下安装,切换不用用户应该不用重新安装了吧?然后还有安装Ascend-NNRT、Ascend-Toolbox、 Ascend-NNRT和Ascend-Toolkit使用的是HwHiAiUser用户安装的,那么我切换不同的用户也要重新安装这几个组件嘛??????????在线等~~~~~~非常急
  • [问题求助] 【昇腾310】【远程docker图形化功能】mindstudio如何在docker中图形化出来
    本人因为项目需求,在昇腾310云服务器中安装了mindstudio,但是多人登录后只能一个人使用mindstudio。因此在云服务器中安装了docker,在docker中导入已经配置好了的宿主机的镜像,但是启动mindstudio的时候会提示没有图形环境,各位大佬有啥办法么????下面是启动mindstudio的报错界面。
  • [问题求助] Mindstudio使用过程中未能正确显示ADK版本,编译代码时编译选项targetOs显示异常。
    问题:    Mindstudio集成开发环境问题:            ps:昇腾官网上没有关于200DK开发环境与运行环境的   linux内核要求!!!!                问题描述:        基于昇腾学院Aatlas200DK视频教程安装的Mindstudio,Mindstudio在使用过程中出现问题,问题如主题所示    (1)ADK显示异常,开发环境为ubuntu18.04.1 ,linux内核为:4.15.0-117。开发者套件版本如下图:                                                                                                                               Mindstudio中ADK显示页面,开发平台显示为centos,如下图编译代码时目标平台(Atlas200DK系统)没有下拉选项,只有Centos选项,如下图:
  • [交流分享] CX5配置PXE总结
    1.解压内核源码tar -zxvf linux-4.19.28.tar.gz2. 复制当前系统的内核配置文件(在/boot下)到新内核文件下cd /boot/cp config-4.19.28 -d /home/xxx/linux-4.19.28/3. 在/home/xxx/linux-4.19.28目录下执行make oldconfig(过程中可能会有很多需要确认的配置,直接回车就可以)4. 编译完成后用make menuconfig命令配置,命令执行完会到一个选择界面,选择save保存,然后exit退出。(如报错,则执行apt-get install ncurses-dev)5. 正式编译内核make -j706.安装内核模块make modules_install7.更新内核make install8.安装所需的工具apt-get install git fakeroot build-essential ncurses-dev xz-utils libssl-dev bc kernel-package9.编译linux-headers的deb包fakeroot make-kpkg --initrd --revision=4.6.2 kernel_image kernel_headers -j70在/home/xxx目录下生成linux-image和linux-header10.   安装linux-headersdpkg -i linux-headers-4.19.28_4.6.2_amd64.deb11.   解压网卡驱动(下载链接:https://www.mellanox.com/products/infiniband-drivers/linux/mlnx_ofed)tar -zxvf MLNX_OFED_LINUX-5.0-2.1.8.0-debian9.9-x86_64.tgz12.   安装网卡驱动cd MLNX_OFED_LINUX-5.0-2.1.8.0-debian9.9-x86_64/./mlnxofedinstall --force-dkms13.   查看网卡状态mlxconfig -d 63:00.0 q|grep -i uefi其中63:00.0为网卡总线信息14.   设置EXP_ROM_UEFI_x86_ENABLE为1mlxconfig -d 63:00.0 set EXP_ROM_UEFI_x86_ENABLE=1其中63:00.0为网卡总线信息 15.   重启机器并查看boot manager,CX5网卡UEFI PXE boot已开启
  • [问题求助] 【昇腾310】【docker功能】在服务器中安装docker后在docker中启动mindstudio,提示无法识别图形化
    在服务器中安装docker后,在docker中启动mindstudio,提示无法识别图形化。环境都提示是通过的。
  • [问题求助] 【昇腾310】【docker功能】云服务器里安装了docker,在docker里可以安装昇腾的驱动么
    昇腾310云服务器里安装了docker,在docker里可以安装昇腾的驱动么比如说A300-3010-NPU_Driver-20.0.0-X86_64-Ubuntu18.04.run 
  • [经验案例] Atlas 300 做推理业务时JPEG类型的图片解码超时问题
    问题现象描述硬件配置:Atlas300问题现象:客户在进行图片流推理业务的开发,在业务功能测试时,发现测试集中有部分图片解码会占用大量时间,感受明显,严重影响业务:1.       占用较长时间的解码图片,客户测试用两张此类图片跑推理业务共耗时132秒,与实际业务场景性能要求相差约百倍。 关键过程、根本原因分析关键过程:<ol style="margin- class=" list-paddingleft-2">通过客户收集的dlog日志,可以观察到如下内容: •    以此为例,我们识别出了客户的输入图片为JPEG,却报了解码超时,且超时后会自动重试10次,每次超时门限是6s,即一张图片最多解码可耗时一分钟。   •    重试10次后仍未解码成功,则返回解码失败。 2. 为什么超时:下图为将客户超时图片用16进制打开•    红框所示为JPEG解码的结束标识,上层软件将结束标识后的数据也一起送到了芯片进行硬解码,导致解码超时。 结论、解决方案及效果解决方案:在将数据送到芯片硬解之前先将结束标识之后的八个字节置零。效果:         测试后原先解码超时的图片现在可正常解码(但根据图片数据仍有可能失败),不会阻塞业务,时延ms级。
  • [经验案例] Atlas 300的device端无法重新拉起程序问题
    问题现象描述硬件配置:G2500+ Atlas 300问题现象:执行程序,device端日志显示报错/home/HwHiAiUser/matrix/xxxx has already existed,如图1所示:关键过程、根本原因分析关键过程:<ol style="margin- class=" list-paddingleft-2">通过npu-smi工具,查看ai core占有率为0,内存占有率400M,如图所示        2.ssh登陆device端系统,top指令查看device端程序依然存在,手动kill掉进程 3.进入/home/HwHiAiUser/matrix/目录,一个进程号命名的文件夹里面存在host端运行所依赖的so文件。 4.手动删除matrix目录,发现device端内存恢复正常,host端重新执行程序,正常运行。根本原因分析:1、  Host端程序退出,device端进程没有正常退出。2、  device程序运行机制:Host端程序中断,到程序重新被拉起中间间隔时间过短,一般要超过3~4s。结论、解决方案及效果结论:Device端程序没有正常退出。解决方案:1、  登陆device端,手动kill掉进程,删除matrix文件夹。重新拉起程序,中间至少间隔3~4s。
  • [经验案例] Atlas 800 3010 中使用pad算子精度问题
    问题现象描述硬件配置:Atlas 800 3010系统版本:ubuntu18.04  V100R020C00RC1原生模型:tensorflow问题现象: 客户在Atlas上使用Pad算子进行运算后发现结果和原数据有误差,而用tensorflow进行Pad运算得到的结果是和原数据一致的。下图为客户把网络截断到Pad后的结果,上面部分是Atlas得到的结果,下面部分是tensorflow得到的结果。关键过程分析与根本原因定位关键过程:1.       观察到经过pad运算后二者结果差异为小数点后第四位的差异,怀疑是精度导致,tensorflow全程运算都用fp32,而atlas的pad算子可能是先转为fp16进行运算,获取时再转为fp32.2.       构造数据进行试验,构造一个1*3*3*1的数据,经过一个参数为1的pad层,输出为1*5*5*1的数据,保存为pb文件。如下图:3.       把pb模型通过atc转换为om模型,再通过infer_tool进行模型推理。infer_tool用法:(1)在工具目录下执行如下命令进行编译chmod +x build.sh./build.sh(2)在out目录下生成main,执行推理,推理结果保存在output_path里,保存为bin文件。cd out./main test2.om a.bin output_path 如下图,得到的输出结果和输入有误差,复现了客户现象。 4.       通过atc把om模型转为json文件,可看到pad这一层的input_desc是fp16,可知pad是用fp16进行运算。5.       看算子清单可知Pad算子也支持fp32。atc进行模型转换时默认用的精度模式是force_fp16,选择其他精度模式验证结果。6.       不同的精度模式验证结果如下图。验证可得用其他精度模式输入输出没有误差,定位出误差出自fp32和fp16之间的精度转换。解决方案:使用allow_mix_precision,allow_fp32_to_fp16或must_keep_origin_dtype进行atc模型转换。参考:infertool: https://bbs.huaweicloud.com/forum/forum.php?mod=viewthread&tid=85596