模板网站外贸建站,织梦cms是什么,做羞羞的事网站,浙江建设厅特种考试查询一、参考资料
mindspore快速安装
二、重要说明
经过博主多次尝试多个版本#xff0c;Atlas 200 DK#xff08;Model 3000#xff09;无法安装MindSpore Ascend版本。
三、准备工作
1. 测试环境
设备型号#xff1a;Atlas 200 DK(Model: 3000)
Operating System Vers…一、参考资料
mindspore快速安装
二、重要说明
经过博主多次尝试多个版本Atlas 200 DKModel 3000无法安装MindSpore Ascend版本。
三、准备工作
1. 测试环境
设备型号Atlas 200 DK(Model: 3000)
Operating System Version: Ubuntu 18.04.6 LTS
CPU Type: 8核Cortex-A55
AI CPU number: 2
control CPU number: 6
RAM: 8GB
miscroSD: 128GB
CANN: 6.0.RC1.alpha005HwHiAiUserdavinci-mini:~$ npu-smi info -t aicpu-config -i 0 -c 0Current AI CPU number : 2Current control CPU number : 6Number of AI CPUs set : 2Number of control CPUs set : 62. MindSpore与CANN版本对齐
通过 链接 查询MindSpore与Ascend配套软件包的版本配套关系。 MindSpore与CANN的版本强绑定如果当前设备无法升级CANN 6.0.1则无法使用MindSpore 1.10.0。
3. 安装mindspore_ascend
详细过程请参考pip方式安装MindSpore Ascend 310版本
4. 验证是否安装成功
4.1 方法一
import mindspore as ms# ms.set_context(device_targetCPU)
# ms.set_context(device_targetGPU)
ms.set_context(device_targetAscend)
ms.set_context(device_id0)
mindspore.run_check()如果输出以下结果则说明mindspore_ascend安装成功。
MindSpore version: 版本号
The result of multiplication calculation is correct, MindSpore has been installed on platform [Ascend] successfully!4.2 方法二
import numpy as np
import mindspore as ms
import mindspore.ops as opsms.set_context(device_targetAscend)
x ms.Tensor(np.ones([1,3,3,4]).astype(np.float32))
y ms.Tensor(np.ones([1,3,3,4]).astype(np.float32))
print(ops.add(x, y))如果输出以下结果则说明mindspore_ascend安装成功。
[[[[2. 2. 2. 2.][2. 2. 2. 2.][2. 2. 2. 2.]][[2. 2. 2. 2.][2. 2. 2. 2.][2. 2. 2. 2.]][[2. 2. 2. 2.][2. 2. 2. 2.][2. 2. 2. 2.]]]]4.3 方法三
ascend310_single_op_sample
这是一个[1, 2, 3, 4]与[2, 3, 4, 5]相加的简单样例代码工程目录结构如下
└─ascend310_single_op_sample├── CMakeLists.txt // 编译脚本├── README.md // 使用说明├── main.cc // 主函数└── tensor_add.mindir // MindIR模型文件unzip ascend310_single_op_sample.zip
cd ascend310_single_op_sample# 编译
cmake . -DMINDSPORE_PATHpip show mindspore-ascend | grep Location | awk {print $2/mindspore} | xargs realpath
make# 执行
./tensor_add_sample如果输出以下结果则说明mindspore_ascend安装成功。
3
5
7
9四、测试代码
1. 示例一
用MindSpore搭建模型并进行测试。 MindSpore implementation of MobileNetV1.
Refer to MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications.import timefrom mindspore import nn, Tensor, ops
import mindspore.common.initializer as init
import mindspore as ms
from PIL import Image
from mindcv.data import create_transforms
import numpy as npdef depthwise_separable_conv(inp: int, oup: int, stride: int) - nn.SequentialCell:return nn.SequentialCell(# dwnn.Conv2d(inp, inp, 3, stride, pad_modepad, padding1, groupinp, has_biasFalse),nn.BatchNorm2d(inp),nn.ReLU(),# pwnn.Conv2d(inp, oup, 1, 1, pad_modepad, padding0, has_biasFalse),nn.BatchNorm2d(oup),nn.ReLU(),)class MobileNetV1(nn.Cell):rMobileNetV1 model class, based onMobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications https://arxiv.org/abs/1704.04861_Args:alpha: scale factor of model width. Default: 1.in_channels: number the channels of the input. Default: 3.num_classes: number of classification classes. Default: 1000.def __init__(self,alpha: float 1.,in_channels: int 3,num_classes: int 1000) - None:super().__init__()input_channels int(32 * alpha)# Setting of depth-wise separable conv# c: number of output channel# s: stride of depth-wise convblock_setting [# c, s[64, 1],[128, 2],[128, 1],[256, 2],[256, 1],[512, 2],[512, 1],[512, 1],[512, 1],[512, 1],[512, 1],[1024, 2],[1024, 1],]features [nn.Conv2d(in_channels, input_channels, 3, 2, pad_modepad, padding1, has_biasFalse),nn.BatchNorm2d(input_channels),nn.ReLU()]for c, s in block_setting:output_channel int(c * alpha)features.append(depthwise_separable_conv(input_channels, output_channel, s))input_channels output_channelself.features nn.SequentialCell(features)# self.pool GlobalAvgPooling()self.pool nn.AdaptiveAvgPool2d(output_size(1, 1))self.classifier nn.Dense(input_channels, num_classes)self._initialize_weights()def _initialize_weights(self) - None:Initialize weights for cells.for _, cell in self.cells_and_names():if isinstance(cell, nn.Conv2d):cell.weight.set_data(init.initializer(init.XavierUniform(),cell.weight.shape,cell.weight.dtype))if isinstance(cell, nn.Dense):cell.weight.set_data(init.initializer(init.TruncatedNormal(),cell.weight.shape,cell.weight.dtype))def forward_features(self, x: Tensor) - Tensor:x self.features(x)return xdef forward_head(self, x: Tensor) - Tensor:squeeze ops.Squeeze(0)x squeeze(x)x self.pool(x)squeeze ops.Squeeze(2)x squeeze(x)x x.transpose()x self.classifier(x)return xdef construct(self, x: Tensor) - Tensor:x self.forward_features(x)x self.forward_head(x)return xdef mobilenet_v1_100_224(pretrained: bool False, num_classes: int 1000, in_channels3, **kwargs) - MobileNetV1:Get MobileNetV1 model without width scaling.Refer to the base class models.MobileNetV1 for more details.model MobileNetV1(alpha1.0, in_channelsin_channels, num_classesnum_classes, **kwargs)return modelif __name__ __main__:# ms.set_context(device_targetGPU)# ms.set_context(device_targetCPU)ms.set_context(device_targetAscend)ms.set_context(device_id0)ms.set_seed(1)ms.set_context(modems.PYNATIVE_MODE)img Image.open(image.jpg).convert(RGB)# create transformtransform_list create_transforms(dataset_nameimagenet,is_trainingFalse,)transform_list.pop(0)for transform in transform_list:img transform(img)img np.expand_dims(img, axis0)# create modelnetwork mobilenet_v1_100_224()for i in range(100):# warmupnetwork(ms.Tensor(img))time_begin time.time()for i in range(1000):# predictnetwork(ms.Tensor(img))time_total (time.time() - time_begin) * 1000 / 1000print(ftotal time is: {time_total})# print(network)2. 示例二
调用 mindcv库中的预训练模型进行测试。
MindSpore Inference Script
import numpy as np
from PIL import Imageimport mindspore as msfrom mindcv.data import create_transforms
from mindcv.models import create_model
import time# ms.set_context(device_targetCPU)
# ms.set_context(device_targetGPU)ms.set_context(device_targetAscend)
ms.set_context(device_id0)
ms.set_context(max_device_memory3.5GB)def main():ms.set_seed(1)ms.set_context(modems.PYNATIVE_MODE)img Image.open(image.jpg).convert(RGB)# create transformtransform_list create_transforms(dataset_nameimagenet,is_trainingFalse,)transform_list.pop(0)for transform in transform_list:img transform(img)img np.expand_dims(img, axis0)# create modelnetwork create_model(model_namemobilenet_v1_100, # mobilenet_v1_100_224pretrainedFalse,)network.set_train(False)for i in range(100):# warmupnetwork(ms.Tensor(img))time_begin time.time()for i in range(1000):# predictnetwork(ms.Tensor(img))time_total (time.time() - time_begin) * 1000 / 1000print(ftotal time is: {time_total})if __name__ __main__:main()五、FAQ
QRuntimeError: Get acltdt handle failed
File /home/HwHiAiUser/miniconda3/envs/mindspore19/lib/python3.9/site-packages/mindspore/nn/cell.py, line 120, in __init__init_pipeline()
RuntimeError: Get acltdt handle failed----------------------------------------------------
- C Call Stack: (For framework developers)
----------------------------------------------------mindspore_ascend 1.9.0 测试失败。
QLoad dynamic library libmindspore_ascend failed, returns
[WARNING] ME(22553:281470681698320,MainProcess):2024-05-22-12:56:02.416.603 [mindspore/run_check/_check_version.py:296] MindSpore version 1.10.0 and Ascend AI software package (Ascend Data Center Solution)version 1.83 does not match, the version of software package expect one of [1.84], please reference to the match info on: https://www.mindspore.cn/install
[ERROR] ME(22553,fffeffff5010,python):2024-05-22-12:56:02.812.186 [mindspore/ccsrc/runtime/hardware/device_context_manager.cc:46] LoadDynamicLib] Load dynamic library libmindspore_ascend failed, returns [liboptiling.so: cannot open shared object file: No such file or directory].
Traceback (most recent call last):File /home/HwHiAiUser/Downloads/mindcv_demo.py, line 11, in moduleimport mindspore as msFile /home/HwHiAiUser/miniconda3/envs/mindspore21/lib/python3.9/site-packages/mindspore/__init__.py, line 18, in modulefrom mindspore.run_check import run_checkFile /home/HwHiAiUser/miniconda3/envs/mindspore21/lib/python3.9/site-packages/mindspore/run_check/__init__.py, line 17, in modulefrom ._check_version import check_version_and_env_configFile /home/HwHiAiUser/miniconda3/envs/mindspore21/lib/python3.9/site-packages/mindspore/run_check/_check_version.py, line 474, in modulecheck_version_and_env_config()File /home/HwHiAiUser/miniconda3/envs/mindspore21/lib/python3.9/site-packages/mindspore/run_check/_check_version.py, line 446, in check_version_and_env_configenv_checker.set_env()File /home/HwHiAiUser/miniconda3/envs/mindspore21/lib/python3.9/site-packages/mindspore/run_check/_check_version.py, line 357, in set_envraise EnvironmentError(
OSError: No such directory: /usr/local/Ascend/ascend-toolkit/latest/opp/built-in/op_impl/ai_core/tbe, Please check if Ascend AI software package (Ascend Data Center Solution) is installed correctly.mindspore_ascend 1.10.0 测试失败。