-
MindSpore安装指南pip方式安装MindSpore CPU版本(Windows)本文档介绍如何在CPU环境的Windows系统上,使用pip方式快速安装MindSpore。确认系统环境信息确认安装Windows 10是x86架构64位操作系统。cmd输入winver即可。![[Pasted image 20211225214345.png]]确认安装Python 3.7.5或3.9.0版本。如果未安装或者已安装其他版本的Python,可以选择下载并安装:Python 3.7.5版本 64位,下载地址:官网或华为云。Python 3.9.0版本 64位,下载地址:官网或华为云。安装Python完毕后,将Python和pip添加到系统环境变量。添加Python:控制面板->系统->高级系统设置->环境变量。双击系统变量中的Path,将python.exe的路径添加进去。![[Pasted image 20211225214637.png]]![[Pasted image 20211225214756.png]]添加pip:python.exe同一级目录中的Scripts文件夹即为Python自带的pip文件,将其路径添加到系统环境变量中即可。安装MindSpore旁注:SHA-256完整性校验使用Windows 10自带工具 校验MD5 SHA1 SHA256类型文件适用场景:下载文件的完整性校验等。cmd调出命令行,输入如下命令certutil -hashfile <文件名> <hash类型>例如,校验文件的 md5值校验文件的 SHA256值安装pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/{version}/MindSpore/cpu/x86_64/mindspore-{version}-{python_version}-win_amd64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple1其中:在联网状态下,安装whl包时会自动下载mindspore安装包的依赖项(依赖项详情参见setup.py中的required_package),其余情况需自行安装。运行模型时,需要根据ModelZoo中不同模型指定的requirements.txt安装额外依赖,常见依赖可以参考requirements.txt。{version}表示MindSpore版本号,例如安装1.5.0版本MindSpore时,{version}应写为1.5.0,而安装1.5.0-rc1版本时,第一个{version}代表下载路径应写为1.5.0-rc1,第二个{version}代表版本号应写为1.5.0rc1。例如:pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/cpu/x86_64/mindspore-1.5.0-cp37-cp37m-win_amd64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple1{python_version}表示用户的Python版本,Python版本为3.7.5时,{python_version}应写为cp37-cp37m。Python版本为3.9.0时,则写为cp39-cp39。![[Pasted image 20211225220145.png]]![[Pasted image 20211225225446.png]]会有一个成功的提示。验证是否成功安装python -c "import mindspore;mindspore.run_check()"![[Pasted image 20211225225514.png]]如果输出:MindSpore version: 版本号The result of multiplication calculation is correct, MindSpore has been installed successfully!说明MindSpore安装成功了。升级MindSpore版本当需要升级MindSpore版本时,可执行如下命令:pip install --upgrade mindspore=={version}其中:升级到rc版本时,需要手动指定{version}为rc版本号,例如1.5.0rc1;如果升级到正式版本,=={version}字段可以缺省。常见问题1、time out![[Pasted image 20211225220356.png]]解决办法:重试设置代理:pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/cpu/x86_64/mindspore-1.5.0-cp37-cp37m-win_amd64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i http://pypi.douban.com/simple --trusted-host pypi.douban.com2、ERROR: Could not find a versionERROR: Could not find a version that satisfies the requirement pyparsing!=3.0.5,>=2.0.2 (from packaging>=20.0->mindspore1.5.0) (from versions: none)ERROR: No matching distribution found for pyparsing!=3.0.5,>=2.0.2 (from packaging>=20.0->mindspore1.5.0)解决办法:pip install pyparsing==2.0.2————————————————原文链接:https://blog.csdn.net/weixin_54227557/article/details/122282509
-
如题,现网用户使用官方提供的ODBC包,在windows下cognos连接DWS时,报Out of memory while reading tuples. 使用其他工具连接,也报一样的错误,说明与cognos本身没关系。ODBC在输出大数据量结果时,会一次性将结果输出出来,而windows的内存量不足以处理这样大量的数据时就会报这样的错误,查询资料后,可以通过勾选odbc的选项"use Declare/Fetch",利用游标来缓存结果,这样就不会让输出结果集消耗完内存。修改odbc的选项路径为Options->Datasource->use Declare/Fetch
-
【需求描述】我把在板子上配置好了开发环境和运行环境,现在可以通过vscode远程开发板独立进行开发和编译运行,但是运行出的视频结果不知道怎么展示。之前用过presenter server在另一个ubuntu开发环境上显示结果,但是现在想在本地windows系统上显示视频结果。【操作步骤&问题现象】1、板子上已经安装了presenter agent库,请问windows系统上能否安装presenter server来进行显示?2、如果安装不了,还有没有什么办法能在windows系统上显示结果?
-
自微软宣布推出win11之后,Windows用户和苹果用户都争先想安装win11系统。但是苹果电脑没有win11的镜像包且无法跳过tpm,那苹果电脑要如何安装win11呢?下面小编就给大家介绍一下苹果笔记本安装win11的教程。 在苹果笔记本安装win11的操作: 1、首先我们需要安装好的Win10系统。下载一个最新版支持M1电脑的Parallels Desktop 16虚拟机,接着将win11压缩包解压到桌面中。 2、接着打开下载好的win10系统,然后将win11系统复制进c盘中。 3、然后我们点击打开win11文件夹,双击setup开始安装。 4、弹出win11安装页面,点击下一页即可。 5、我们点击接受声明和许可条款。 6、系统会开始自动检测更新,我们耐心等待即可。 7、准备就绪之后,点击“安装”就可以了。 8、正在安装win11系统,等待系统自动安装完成。 9、多次重启后,进入Win11系统,电脑会自动更新Parallels Tools,等待一分钟即可。 10、当安装完成,点击重启启动按钮。 11、重启后,win11安装完成,我们就可以在苹果电脑上使用win11系统啦。 以上就是在苹果电脑安装win11的内容。希望对大家有所帮助
-
很多人因为忘记BIOS密码而不能进入CMOS设置,从而不能进入系统的大门,这对很多人来说是一件很悲哀的事情,其实,破解BIOS密码的方法有很多种。本文将主要介绍一些关于破解BIOS密码方面的实用技巧。1. 通过Debug 清除密码1.1软盘启动进入DOS运行debug若在BIOS设置中更多Security Option选项是“setup”(即进入BIOS设置时需要密码),可用软盘启动进入DOS系统运行debug,然后加以破解。1. 在DOS下运行debug,然后键入:-o7021 -o7120 -q-o702E -o710 -q-o7016 -o7116 -q-o70FF -o7117 -q-o7010 -o710 -q2. 修改完成后,重新启动计算机即可。此法对大多数主板都适用,简单有效。1.2 进入操作系统通过cmd命令提示符进入debug下面方法适用于可进入操作系统但无法进入BIOS设置(要求输入密码)的情况。通过cmd命令提示符界面运行debug进行破解,依次点击:开始—-运行—-输入[cmd]确定—进入命令提示符界面—输入[debug]注意: 64位Windows系统(Win7,Win8等)没有debug程序。-O 70 10-O 70 ff-q注: 第一个[O] 是字母的O<小字写都可以> 后面的都是数字零0 第一个小杠[-]是运行令命本来就有的。重启以后就可以取消BIOS密码。因BIOS版本不同,当此程序无法破解时,可采用另一个与之类似的程序来破解。debug命令运行以后依次输入:-O 71 20- O 70 21- q重启即可。2.通过FlashBios命令清除密码步骤1:依次执行:开始—-运行—-输入[cmd]确定* 在Windows 9X运行框里输入“command”* 若是Windows 2000/XP,输入“cmd”步骤2:针对不同的操作系统,输入相应的命令进行操作。* Flashbios 98,在Windows98下清除BIOS密码。* Flashbios 2000,在Windows 2000下清除BIOS密码。* Flashbios XP,在Windows XP下清除BIOS密码。* Flashbios 2003,在Windows 2003下清除BIOS密码。当显示“Bios Password Cleaned Successed!”时,表明BIOS密码清除成功。步骤3:重启电脑即可。**注意:**Flashbios会被一些杀毒软件认为是黑客工具而对其隔离,所以运行前要将杀毒工具关闭。3. 通过CMOS放电清除密码若在BIOS设置中的Security Option选项是“system”(即开机输入密码),那么只有通过CMOS放电来清除密码。步骤一:把主机电源线拔了,打开机箱,在主板上找到主板电池。步骤二:将插座上用来卡住供电电池的卡扣压向一边,将电池小心取出。步骤三:将电池拔下,放置5分钟左右,然后重新插入电池插座即可。此时BIOS密码即被清除,同时所有以前的BIOS设置也会被清除。4. 通过Copy命令破解密码在使用其他方法无效情况下,可考虑使用Copy命令的方法破解密码。步骤1:进入“DOS”,输入一下命令copy con cmos.com步骤2:一手按住“Alt”键,另一只手输入下列数字串:179,55,136,216,230,112,176,32,230,113,254,195,128,251,64,117,241,195步骤3:放开双手,然后继续按住“Alt”键,输入如下数字:Alt+179 Alt+55 ALt+136 Alt+216 Alt+230 Alt+112 Alt+176 Alt+32 Alt+230Alt+113 Alt+254 Alt+195 Alt+128 Alt+251 Alt+64 Alt+117 Alt+241 Alt+195步骤4:输入完毕后,按“Ctrl+Z”组合键,得到一个程序。步骤5:完成后进入系统,可以在C盘上看到生成一个“coms.com”文件。步骤6:再次进入DOS,输入“coms.com”,即可。注: 此方法,博主不太了解,仅供参考。5. 通过改变硬件配置破解密码系统启动时,会检查硬件配置是不是与CMOS中保存的参数一致。若配置不同,可能会自动进入BIOS设置画面让用户重新设置,并且不需要输入密码。步骤1:关闭电脑,打开机箱,将硬盘或软盘数据线从主板上拔下。步骤2:重启电脑,BIOS自检时出错,系统要求重新设置BIOS。步骤3:此时CMOS中的密码已被清除,不用再输入密码,用户可重新设置密码了。注:此方法成功率不高,并不适合所有主板。6. 通过破解软件清除密码此类软件有如:BiosPwds、iCMOS、Bcc Bios、COMSPWD、RemPass、Twing Coms Tools。7. 硬件取消密码 补充把主机电源线拔了然后拆机箱找到BIOS电池附近个三针的跳线,本来插在1,2上面,把它跳到2,3上面10秒就可以。注:主机源线一定要拔了,不会电流回路会把BIOS给击坏的。跳线本来就是一个短路的过程。DELL品牌主机BIOS破解方法:把主机电源线拔了然后拆机箱找到BIOS电池附近个针的跳线,跳线下面有写password标签就把这根跳线拔出来,等十多秒再插回去。就可以清除BIOS密码了。注:此方法不只只适合DELL主机,因为现在有很多的主板都有同样的设置。只是DELL比较常用这个方法。以前的IBM也喜欢,现在喜欢下面方法。联想等等等等品牌主机BIOS破解方法:把主机电源线拔了然后拆机箱找到BIOS电池附近个针的跳线,跳线下面有写COMS标签就把这根跳线拔出来,等十多秒再插回去。就可以清除BIOS密码了。
-
我们在项目实践中经常遇到部分用户希望将WINDOWS弹性云服务器上的文档通过本地打印机进行打印,我们通过以下实验实现了这一需求。1、实验环境1.1、本地打印机:Canon MG3680。1.2、本地电脑操作系统:WINDOWS 10。1.3、本地打印机与本地电脑通过USB接口进行连接。1.4、远程云服务器操作系统:Windows Server 2012 R2。2、本地设置2.1、确认本地打印机连接正常2.2、设置本地远程桌面程序打开“开始”→“运行”,输入“mstsc”回车调出远程桌面程序,点击“显示选项”。点击“本地资源”选项卡,勾选“打印机”、“剪贴板”。点击“详细信息”打开更多选项,并全部勾选,完成后点击“确定”返回本地资源设置界面。3、远程华为云WINDOWS服务器设置3.1、设置组策略打开“开始”→“运行”,输入“gpedit.msc”回车进入本地组策略编辑器,展开计算机配置-管理模板-WINDOW组件-远程桌面服务-远程桌面会话主机-打印机重定向,右侧双击设置【首先使用远程桌面轻松打印打印机驱动程序】和【指定RD会话主机服务器回滚打印机驱动程序行为】为已启用状态。3.2、安装打印机驱动程序。找到Canon打印机驱动安装页面(https://ugp01.c-ij.com/ij/webmanual/WebPortal/PTL/ptl-select.html?lng=sc&type=setup),搜索MG3680打印机驱动程序并进行安装。点击“下载”按钮下载驱动安装程序。下载完成后,双击打开驱动安装包,根据安装向导进行驱动程序安装,安装过程中会让选择打机机连接方式为USB还是WLAN时选择USB。安装过程中会自动检测打印机,因为没有连接打印机,这一步点击“取消”即可。4、结果验证打开“开始”“运行”,输入“mstsc”回车调出远程桌面程序,在“计算机”对应的输出框输入远程云服务器弹性IP地址,点击“连接”登录远程云服务器。在远程云服务器上打开“开始”→“设备与打印机”,可以看到已重定向到远程服务器上的打印机。打印文件时选择重定向的打印机即可进行文档打印。注意事项:本帖仅就“将WINDOWS弹性云服务器上的文档通过本地打印机进行打印” 提供一种技术思路和实验参考。因为环境差异、网络情况、打印机类型和兼容性等因素,无法保证按照以上步骤配置后一定能够成功重定向到本地打印机完成打印,还需要结合实际情况自行进行探索实现;本帖也不做任何设备类型推荐,请不要按照本帖技术思路直接购买对应设备,因此导致可能的设备购买损失或方案失败还需自行慎重评估,与本帖无关。
-
自定义算子(CPU)CPU 模型开发• 自定义算子(CPU) – 概述 – 注册算子原语 – 实现CPU算子和注册算子信息 • 实现CPU算子 • 注册算子信息 – 编译MindSpore – 使用自定义CPU算子 – 定义算子反向传播函数 概述当开发网络遇到内置算子不足以满足需求时,你可以利用MindSpore的Python API和C++ API方便快捷地扩展CPU端的自定义算子。添加一个自定义算子,需要完成算子原语注册、算子实现、算子信息注册三部分工作。其中:• 算子原语:定义了算子在网络中的前端接口原型,也是组成网络模型的基础单元,主要包括算子的名称、属性(可选)、输入输出名称、输出shape推理方法、输出dtype推理方法等信息。• 算子实现:利用框架提供的C++ API,结合算子具体特性实现算子内部计算逻辑。• 算子信息:描述CPU算子的基本信息,如算子名称、支持的输入输出类型等。它是后端做算子选择和映射时的依据。本文将以自定义Transpose算子为例,介绍自定义算子的步骤。注册算子原语算子的原语是一个继承于PrimitiveWithInfer的子类,其类型名称即是算子名称。CPU算子原语定义在mindspore/ops/operations路径下,根据算子类型选择适合的文件,接口定义如下:• 属性由构造函数__init__的入参定义。本用例的算子没有init属性,因此__init__没有额外的入参。• 输入输出的名称通过init_prim_io_names函数定义。• 输出Tensor的shape和dtype检验在__infer__函数中实现。以Transpose算子原语为例,给出如下示例代码。from mindspore.ops import PrimitiveWithInferclass Transpose(PrimitiveWithInfer):"""The definition of the Transpose primitive."""@prim_attr_registerdef __init__(self):"""Initialize Transpose"""self.init_prim_io_names(inputs=['x', 'perm'], outputs=['output'])def __infer__(self, x, perm):x_shape = x['shape']p_value = perm['value']if len(x_shape) != len(p_value):raise ValueError('The dimension of x and perm must be equal.')out_shapes = []for i in p_value:out_shapes.append(x_shape[i])out = {'shape': tuple(out_shapes),'dtype': x['dtype'],'value': None}return out旁注1:有关函数修饰符@可以参考本人的一篇文章:函数修饰符_kewei chen-CSDN博客 这个函数修饰符相当于就是要把下面的函数作为参数传入@的函数。旁注2:mindspore.ops.primattrregistermindspore.ops.``prim_attr_register(fn)[source] Primitive attributes register.Register the decorator of the built-in operator primitive ‘init’. The function will add all the parameters of ‘init’ as operator attributes , and init primtive name.Parameters fn (function) – init function of primitive.Returnsfunction, original function."""Primitive attributes register.Register the decorator of the built-in operator primitive '__init__'.The function will add all the parameters of '__init__' as operator attributes, and init primtive name. Args: fn (function): __init__ function of primitive. Returns:function, original function.Examples:>>> class MatMul(PrimitiveWithCheck):... @prim_attr_register... def __init__(self, transpose_a=False,transpose_b=False): ... self.init_prim_io_names(inputs=['x1', 'x2'], outputs=['output']) ...>>> # init a Primitive obj>>> matmul = MatMul()"""import functools@functools.wraps(fn)def deco(self, *args, **kwargs):class_name = self.__class__.__name__if hasattr(self.__class__, "substitute_name"):class_name = self.__class__.substitute_nameif isinstance(self, PrimitiveWithInfer):PrimitiveWithInfer.__init__(self, class_name)elif isinstance(self, PrimitiveWithCheck):PrimitiveWithCheck.__init__(self, class_name)else:Primitive.__init__(self, self.__class__.__name__)bound_args = inspect.signature(fn).bind(self, *args, **kwargs)bound_args.apply_defaults()arguments = bound_args.argumentsdel arguments['self']del self.init_attrs['name']for name in arguments:value = arguments[name]self.add_prim_attr(name, value)self.init_attrs[name] = valuefn(self, *args, **kwargs)deco.decorated_func = fnreturn deco实现CPU算子和注册算子信息实现CPU算子通常一个CPU算子的实现,需要编写一个头文件和一个源文件,文件路径为mindspore/ccsrc/backend/kernel_compiler/cpu,如果算子的逻辑实现是通过调用第三方库MKL-DNN,则放在子目录mkldnn下。详细介绍请参考oneMKL 和oneDNN 。算子的头文件中包括算子的注册信息和类的声明。算子类继承于CPUKernel父类,重载InitKernel和Launch两个成员函数。算子的源文件是类的实现,主要是重载InitKernel和Launch两个函数,Transpose算子实现的头文件代码示例如下(注意代码格式为C++):class TransposeCPUFwdKernel : public CPUKernel {public:TransposeCPUFwdKernel() = default;~TransposeCPUFwdKernel() override = default;void InitKernel(const CNodePtr &kernel_node) override;bool Launch(const std::vector<AddressPtr> &inputs, const std::vector<AddressPtr> &workspace,const std::vector<AddressPtr> &outputs) override;private:std::vector<size_t> shape_;std::vector<int> axis_;};• InitKernel函数的入参包含一个节点指针的常量引用,通过AnfRuntimeAlgorithm类的成员函数可以获取该算子节点输入输出的shape和算子的属性信息等。• Launch函数的入参是三个向量,分别包含所有的输入地址,workspace地址,所有的输出地址。函数体中描述算子的具体实现逻辑。• shape_和axis_是定义的两个成员变量。源文件中InitKernel函数的定义如下:void TransposeCPUFwdKernel::InitKernel(const CNodePtr &kernel_node) {MS_EXCEPTION_IF_NULL(kernel_node);shape_ = AnfAlgo::GetInputDeviceShape(kernel_node, 0);axis_ = AnfAlgo::GetNodeAttr<std::vector<int>>(kernel_node, "perm");if (shape_.size() != axis_.size()) {MS_LOG(EXCEPTION) << "The size of input shape and transpose axis shape must be equal.";}}• AnfRuntimeAlgorithm类中的函数实现了各种对算子节点的操作,shape_表示算子第1个输入的shape,axis_表示算子的属性perm。• Transpose算子原语中参数“perm”作为输入传入,但是在解析时元组类型的“perm”实际被认为是算子的属性。AnfRuntimeAlgorithm类的详细内容可参考MindSpore源码中mindspore/ccsrc/backend/session/anf runtime algorithm.h 下的声明。源文件中Launch函数的定义如下:首先依次获取每个输入输出的地址,然后根据axis_变换维度,把值赋给输出地址指向的空间。变换维度自然涉及到数组矩阵的操作了。bool TransposeCPUFwdKernel::Launch(const std::vector<kernel::AddressPtr> &inputs,const std::vector<kernel::AddressPtr> & /*workspace*/,const std::vector<kernel::AddressPtr> &outputs) {auto input = reinterpret_cast<float *>(inputs[0]->addr);auto output = reinterpret_cast<float *>(outputs[0]->addr);size_t size = IntToSize(inputs[0]->size / sizeof(float));size_t shape_size = IntToSize(shape_.size());if (shape_size > kMaxDim) {MS_LOG(EXCEPTION) << "Input is " << shape_size << "-D, but transpose supports max " << kMaxDim << "-D inputs.";}size_t pos_array[kMaxDim];size_t size_offset[kMaxDim];size_offset[0] = size / shape_[0];for (size_t i = 1; i < shape_size; i++) {size_offset[i] = size_offset[SizeToInt(i) - 1] / shape_[i];}for (size_t position = 0; position < size; position += 1) {size_t temp_position = position;pos_array[0] = temp_position / size_offset[0];for (size_t i = 1; i < shape_size; i++) {temp_position -= pos_array[SizeToInt(i) - 1] * size_offset[i - 1];pos_array[i] = temp_position / size_offset[i];}size_t new_position = pos_array[axis_[SizeToInt(shape_size) - 1]];size_t new_position_size = 1;for (int j = shape_size - 2; j >= 0; j--) {new_position_size *= shape_[axis_[j + 1]];new_position += pos_array[axis_[j]] * new_position_size;}output[new_position] = input[position];}return true;}注册算子信息算子信息是指导后端选择算子实现的关键信息,MS_REG_CPU_KERNEL中第一个参数是注册算子的名称,和原语中算子名称一致,第二个参数依次指明每个输入输出的类型,最后一个参数是算子实现的类名。Transpose算子注册代码如下:MS_REG_CPU_KERNEL(Transpose, KernelAttr().AddInputAttr(kNumberTypeFloat32).AddOutputAttr(kNumberTypeFloat32),TransposeCPUFwdKernel);算子信息中定义输入输出信息的个数和顺序、算子实现中的输入输出信息的个数和顺序、算子原语中输入输出名称列表的个数和顺序,三者要完全一致。编译MindSpore写好自定义CPU算子后,需要重新编译安装MindSpore,具体请参考安装文档 。这一部分设计的主要是在linux(CPU环境)上运转了,本文可以不考虑。之后会为大家带来OpenEuler安装mindspore的文章,敬请期待。使用自定义CPU算子编译并安装完成后,自定义CPU算子可以通过导入原语直接使用。下面以Transpose的单算子网络测试为例进行说明。在test_transpose.py文件中定义网络。import numpy as npimport mindspore.nn as nnimport mindspore.context as contextfrom mindspore import Tensorimport mindspore.ops as opscontext.set_context(mode=context.GRAPH_MODE, device_target="CPU")class Net(nn.Cell):def __init__(self):super(Net, self).__init__()self.transpose = ops.Transpose()def construct(self, data):return self.transpose(data, (1, 0))def test_net():x = np.arange(2 * 3).reshape(2, 3).astype(np.float32)transpose = Net()output = transpose(Tensor(x))print("output: ", output)执行用例:pytest -s test_transpose.py::test_net执行结果:output: [[0, 3][1, 4][2, 5]]定义算子反向传播函数如果算子要支持自动微分,需要在其原语中定义其反向传播函数(bprop)。你需要在bprop中描述利用正向输入、正向输出和输出梯度得到输入梯度的反向计算逻辑。反向计算逻辑可以使用内置算子或自定义反向算子构成。定义算子反向传播函数时需注意以下几点:• bprop函数的入参顺序约定为正向的输入、正向的输出、输出梯度。若算子为多输出算子,正向输出和输出梯度将以元组的形式提供。• bprop函数的返回值形式约定为输入梯度组成的元组,元组中元素的顺序与正向输入参数顺序一致。即使只有一个输入梯度,返回值也要求是元组的形式。例如,Transpose的反向原语为:import mindspore.ops as opsinvert_permutation = ops.InvertPermutation()transpose = ops.Transpose()zeros_like = ops.zeros_like()@bprop_getters.register(ops.Transpose)def get_bprop_transpose(self):"""Generate bprop for Transpose"""def bprop(x, perm, out, dout):return transpose(dout, invert_permutation(perm)), zeros_like(perm)return bprop按照上述代码运行,却出现了一个报错。[mindspore\core\utils\check_convert_utils.cc:367 CheckInteger] The primitive[ZerosLike]'s input number must be equal to 1, but got 0.仔细研究发现,此处官网参考文档有误,应该是zeros_like = ops.ZerosLike(),已提issue ,希望尽快修改。旁注3:ZerosLikemindspore.ops.ZerosLike• classmindspore.ops.``ZerosLike[source] Creates a new tensor. All elements value are 0.、Returns a tensor of zeros with the same shape and data type as the input tensor.Inputs:input_x (Tensor) - Input tensor. The data type is int32, int64, float16 or float32. The shape is (N,∗)(N,∗) where ∗∗ means, any number of additional dimensions.Outputs:Tensor, has the same shape and data type as inputx but filled with zeros.RaisesTypeError – If inputx is not a Tensor.Supported Platforms:Ascend GPU CPU• Transpose反向算子中用到了InvertPermutation算子,该算子和Transpose算子开发一样,需要有算子的原语,注册,实现等完整的流程。在test_transpose.py文件中定义反向用例。import mindspore.ops as opsclass Grad(nn.Cell):def __init__(self, network):super(Grad, self).__init__()self.grad = ops.GradOperation(sens_param=True)self.network = networkdef construct(self, input_data, sens):gout = self.grad(self.network)(input_data, sens)return goutdef test_grad_net():x = np.arange(2 * 3).reshape(2, 3).astype(np.float32)sens = np.arange(2 * 3).reshape(3, 2).astype(np.float32)grad = Grad(Net())dx = grad(Tensor(x), Tensor(sens))print("dx: ", dx.asnumpy())执行用例:pytest -s test_transpose.py::test_grad_net执行结果:dx: [[0. 2. 4.][1. 3. 5.]]
-
# MindSpore安装指南 # pip方式安装MindSpore CPU版本(Windows) 本文档介绍如何在CPU环境的Windows系统上,使用pip方式快速安装MindSpore。 ## 确认系统环境信息 - 确认安装Windows 10是x86架构64位操作系统。 - cmd输入winver即可。  - 确认安装Python 3.7.5或3.9.0版本。如果未安装或者已安装其他版本的Python,可以选择下载并安装: - Python 3.7.5版本 64位,下载地址:[官网](https://www.python.org/ftp/python/3.7.5/python-3.7.5-amd64.exe)或[华为云](https://mirrors.huaweicloud.com/python/3.7.5/python-3.7.5-amd64.exe)。 - Python 3.9.0版本 64位,下载地址:[官网](https://www.python.org/ftp/python/3.9.0/python-3.9.0-amd64.exe)或[华为云](https://mirrors.huaweicloud.com/python/3.9.0/python-3.9.0-amd64.exe)。 - 安装Python完毕后,将Python和pip添加到系统环境变量。 - 添加Python:控制面板->系统->高级系统设置->环境变量。双击系统变量中的Path,将`python.exe`的路径添加进去。 -  -  ![[Pasted image 20211225214756.png]] - 添加pip:`python.exe`同一级目录中的`Scripts`文件夹即为Python自带的pip文件,将其路径添加到系统环境变量中即可。 ## 安装MindSpore ### 旁注:SHA-256完整性校验 使用Windows 10自带工具 校验MD5 SHA1 SHA256类型文件 适用场景:下载文件的完整性校验等。 cmd调出命令行,输入如下命令 ```bash certutil -hashfile 文件名> ``` 例如,校验文件的 md5值  校验文件的 SHA256值  ### 安装 ```bash pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/{version}/MindSpore/cpu/x86_64/mindspore-{version}-{python_version}-win_amd64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple ``` 其中: - 在联网状态下,安装whl包时会自动下载mindspore安装包的依赖项(依赖项详情参见[setup.py](https://gitee.com/mindspore/mindspore/blob/r1.5/setup.py)中的required_package),其余情况需自行安装。运行模型时,需要根据[ModelZoo](https://gitee.com/mindspore/models/tree/r1.5/)中不同模型指定的requirements.txt安装额外依赖,常见依赖可以参考[requirements.txt](https://gitee.com/mindspore/mindspore/blob/r1.5/requirements.txt)。 - `{version}`表示MindSpore版本号,例如安装1.5.0版本MindSpore时,`{version}`应写为1.5.0,而安装1.5.0-rc1版本时,第一个`{version}`代表下载路径应写为1.5.0-rc1,第二个`{version}`代表版本号应写为1.5.0rc1。例如: ```bash pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/cpu/x86_64/mindspore-1.5.0-cp37-cp37m-win_amd64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple ``` - `{python_version}`表示用户的Python版本,Python版本为3.7.5时,`{python_version}`应写为`cp37-cp37m`。Python版本为3.9.0时,则写为`cp39-cp39`。  会有一个成功的提示。 ## 验证是否成功安装 ```bash python -c "import mindspore;mindspore.run_check()" ``` 如果输出: ```text MindSpore version: 版本号 The result of multiplication calculation is correct, MindSpore has been installed successfully! ``` 说明MindSpore安装成功了。 ## 升级MindSpore版本 当需要升级MindSpore版本时,可执行如下命令: ```bash pip install --upgrade mindspore=={version} ``` 其中: - 升级到rc版本时,需要手动指定`{version}`为rc版本号,例如1.5.0rc1;如果升级到正式版本,`=={version}`字段可以缺省。 ## 常见问题 ### 1、time out  解决办法: * 重试 * 设置代理: pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/cpu/x86_64/mindspore-1.5.0-cp37-cp37m-win_amd64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i http://pypi.douban.com/simple --trusted-host pypi.douban.com ### 2、ERROR: Could not find a version ERROR: Could not find a version that satisfies the requirement pyparsing!=3.0.5,>=2.0.2 (from packaging>=20.0->mindspore==1.5.0) (from versions: none) ERROR: No matching distribution found for pyparsing!=3.0.5,>=2.0.2 (from packaging>=20.0->mindspore==1.5.0) 解决办法: ``` pip install pyparsing==2.0.2 ```
-
随着计算机技术的快速发展,硬件性能的快速提升,用户在选购笔记本电脑时不再一味地追求极致的性能体验,而是务实地遵循“够用就好、体验为王”的原则,特别对于需要经常出差的商务人士,“易携带、待机久、体验好”成为选购笔记本电脑的黄金三要素。正因如此,融合了移动笔记本和平板电脑两大特点的二合一笔记本越来越受到商务办公人群的青睐。早在2013年微软就瞄准不断下滑的个人电脑市场推出二合一笔记本电脑Surface Pro,由于定价高而性能一般,八年来并未被国内消费者所接受。国外大厂习惯了在缺少竞争者的市场中给产品设定较高价格,以获取更多的利润。随着华为新一代MateBook E的发布,这种竞争格局即将改变。11月17日,华为发布新一代MateBook E二合一笔记本,收获了一大波眼球。为探析MateBook E二合一笔记本的实际性能,给商务人士选购笔记本提供全面性能评估数据,新工业网编辑特别蹲守到12月1日凌晨的开卖点,在华为商城订购一台MateBook E二合一笔记本。1 外观赏析本次选购的MateBook E二合一笔记本搭配11代酷睿 i5 处理器、16G LPDDR4x内存、512G M.2 2280固态硬盘,以及12.6英寸OLED原色全面屏。操作系统为最新发布的Windows 11,先通过四张图全面赏析MateBook E惊叹的外观。正面,是一块 12.6 英寸、2560 x 1600 分辨率、240PPI 的 OLED 屏,也是华为首次将 OLED 屏幕用在 Windows电脑上,OLED 屏特点是色彩准确、亮度高、对比度高,特别适合创新设计人士。在MateBook E左侧有一个电源指纹二合一按钮和 3.5mm 耳机孔。右边有且仅有一个雷电4 接口;上侧屏幕和边框中间有比较明显的孔隙,孔隙中有进风口、出风口和四扬声器。四个扬声器采取左两个右两个的对称式布局,由 HUAWEI SOUND 进行专业调校,使得声场更加广阔、音色富有层次感和方向感。针对音乐、电影、游戏和通话等场景都有专门的优化。在屏幕上方还有一个800万像素的高清摄像头,能进行高质量的视频通话。华为还自主研发了 AI 降噪语音增强技术,能够调用机身的多麦克风,实时识别出人声语音与干扰噪声,并降低环境噪声、提取出纯净的语音传递给对方,让沟通更为高效。在具体尺寸和重量信息方面,长宽高分别为184.7*286.5*7.99mm, 重量约 709g,比普通的笔记本小很多。就设计而言,如此轻薄的机身内塞进性能丝毫不输目前主流笔记本性能的硬件配置,解决散热问题,其工艺水平可见一斑。2 Windows 11MateBook E搭配的WIndows 11系统提供许多创新功能,旨在支持当前的混合工作环境,侧重于在灵活多变的全新体验中提高最终用户的工作效率。值得一提的是,MateBook E开机体验非常好,就像手机和平板电脑一样,从开机到进入桌面平均花费15秒左右,远少于主流笔记本的开机时间。MateBook E二合一笔记本自带Word、PowerPoint和Excel三大办公套件,只需简单激活就可以使用;内嵌微软和华为两大厂商的应用商店,用户可以像手机一样下载并安装应用,为测试MateBook E的商务办公性能,小编专门从华为应用商店下载PhotoShop和CAD快速看图软件。除此之外,MateBook E针对游戏提供优化的场景设置功能。在兼顾办公的同时也注重游戏娱乐体验。3 性能测试笔记本性能是否拥有很高性价比,判断依据无非是与市场主流产品进行性能对比,如果展现出更好的性能或同等性能,价格又低,说明产品拥有更高的性价比,用户可择优选择。为此,本次测试将使用小编自己的MacBook Air 2020笔记与MateBook E做性能对比,通过分析测试结果判断MateBook E是否物超所值。1、硬件性能测试通过华为应用商店下载鲁大师,对MateBook E性能进行测试,具体的硬件参数和综合性能得分如下。测试显示,MateBook E性能表现击败全国48%的用户,能流畅运行DOTA2、英雄联盟等大型联网游戏以及PS等绘图软件,满足日常的娱乐办公需求。一款6000元的二合一笔记本,处在普遍动辄8000元、9000元的笔记本市场,实属物美价廉。由于苹果电脑不支持鲁大师,考虑到结果的公平,我们也无法用其他测试软件对MacBook Air进行测试。不过小编截取苹果电脑具体配置图,也不妨先对比一番。从硬件配置看,处理器和硬盘两者相差不大,处理器均为四核心Intel Core i5 1.1Ghz和512GB固态硬盘,但MacBook Air只有8GB内存,MateBook E则是16GB,型号都是LPDDR4X;MateBook E采用Intel Iris Xe显卡芯片,MacBook Air则使用Intel Iris Pro显卡芯片。两款产品定价方面却相差2000元,MateBook E市场价6000元起步,而MacBook Air市场价则是8000起步。2、办公性能测试为测试笔记本办公性能,我们选用了四个文档:1个Word文档、3个PPT文档。(1)Word文档,100页4万字,包括图片和表格,大小3M。(2)PPT文档,157页,包括图片和表格,大小6.8M。(3)PPT文档,147页,包括图片和表格,大小7.7M。(4)PPT文档,36P,包括图片和表格,大小8.5M。从测试结果看,两台笔记本打开、编辑和保存文档都十分流畅,文档打开时间基本都在3秒以内,编辑和操作过程无任何卡顿或不流畅的地方,显示出十分稳定的性能。稍有不同之处是,MateBook E是触摸屏,通过触控笔或手指轻松点击、放大和滑动,这决定了MateBook E适用更为广泛的生活和办公场景,较轻的重量和较小的体积可以像手机一样拿在手中操作,即便是在咖啡厅、户外环境也能便捷携带,交互性体验感更好。3、创意设计测试创意设计测试使用了两大软件,PhotoShop和CAD快速预览。PhotoShop测试对图形设计的处理能力,CAD快速预览测试对专业CAD图文档的浏览编辑能力。我们选取了两个文档:(1)从摄图网下载的新加坡滨海湾全景高清大图,JPG格式,大小为45.4M。(2)从网上下载的DWG格式的CAD装配图,大小为1M。从测试结果看,两台笔记本在使用PhotoShop打开、缩放和旋转图片的过程都十分流畅。由于MateBook E拥有更大内存,比较而言,其打开图片的过程用时更短,对色彩的处理效果也更好。此外,在用CAD快速看DWG文档时,两台笔记本打开装配图过程也非常快,无论是尺寸标注、坐标标注还是缩放旋转,都没有任何卡顿,两款产品都适合简单的工业CAD图形预览处理。4、游戏性能测试网络游戏作为人们最普遍的娱乐休闲方式,是消费者选购笔记本必须考虑的用途之一。特别是LOL、DOTA2等受众较广的游戏,主流电脑型号必须给予支持。我玩网络游戏比较少,英雄联盟是第一次玩,这次纯粹为了测试MateBook E在英雄联盟游戏中的性能表现。注册新账号和加载登录过程很快,在跑动和攻击过程中十分流畅,游戏色彩显示十分自然真实。虽然我并非游戏发烧友,但从体验来讲,我对玩英雄联盟的交互效果感到很满意。4 总结就像互联网造就PC时代,移动互联网造就移动笔记本、平板电脑和智能手机一样,随着社会节奏不断加快,工作和生活融合得更为紧密,工作与生活场景切换也变得更为频繁。如何保证工作高效的同时更好地体验生活,整合移动办公、娱乐休闲等多元属性,成为新时代笔记本功能创新的重要切入点。华为MateBook E二合一笔记本的发布,与其说是厂商基于时代需求对产品的改良创新,不如说是针对商务人群所做的人性化设计。重要的是,它在保证工作和生活多元化性能需求的同时,价格与普通的笔记本并无差别,甚至价格更低,而交互体验却更好。搭起来就是一台移动笔记本,收起来就是平板,不论是在公司还是在家,或者是出差途中,随时随地满足商务人士的多元化需求。来源“新工业网”作者 | 熊东旭原文链接 | https://www.xingongye.cn/cms/IT_architecture/944.html
-
win7桌面右下角的图标看不见也点不开,但是还占一个格子原因:图标缓存造成的,即Windows系统为桌面图标所建立的一个图标缓冲区。当桌面图标有所更改的时候系统会将新的图标自动写入缓冲区从而使下次重启电脑时图标不会恢复原样。1、鼠标右键单击电脑桌面,选择新建一个文本文档。2、打开文本文档,把下面的内容输入到【记事本】。rem 关闭Windows外壳程序explorer taskkill /f /im explorer.exe rem 清理系统图标缓存数据库 attrib -h -s -r “%userprofile%\AppData\Local\IconCache.db” del /f “%userprofile%\AppData\Local\IconCache.db” attrib /s /d -h -s -r “%userprofile%\AppData\Local\Microsoft\Windows\Explorer\*” del /f “%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_32.db” del /f “%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_96.db” del /f “%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_102.db” del /f “%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_256.db” del /f “%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_1024.db” del /f “%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_idx.db” del /f “%userprofile%\AppData\Local\Microsoft\Windows\Explorer\thumbcache_sr.db” rem 清理 系统托盘记忆的图标 echo y reg delete “HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\CurrentVersion\TrayNotify” /v IconStreams echo y reg delete “HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\CurrentVersion\TrayNotify” /v PastIconsStream rem 重启Windows外壳程序explorer start explorer3、点击记事本菜单栏的【文件(F)】。4、选择【另存为(A)】。5、保存类型选择【所有文件】。6、命名为 a.bat 。7、点击【保存】。8、双击a.bat运行即可。9、然后就可以了。
-
1.选择MindSpore版本1.5.0+python 3.9.0+pip安装2.检查环境准备是否完备python版本确定python环境变量的确定3.准备就绪后进行安装在CMD中输入以下指令pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.5.0/MindSpore/cpu/x86_64/mindspore-1.5.0-cp39-cp39-win_amd64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple4.安装是否成功检验输入指令:python -c "import mindspore;mindspore.run_check()"显示安装成功,并且输出MindSpore版本号1.5.05.安装MindArmour安装官方文档进行如下操作安装是否成功检验输入 python -c "import mindarmour"会出现如下报错解决方法安装好缺失的各种包即可(cycler、deuteil缺失的包)再次输入检验指令没有承认报错即表示安装成功以上即为MindSpore、MindArmour的安装过程,感谢群里前辈的耐心解答! 6.MindSpore 的简单在线使用安装库与包成功按照文档操作,迭代的精度
-
我用的是华为电脑,win10系统,经常出现一右键就卡机是什么缘故呀
-
【功能模块】小板是Atlas500,服务器是ubuntu16.04的,CANN安装的CANN是5.0.3的社区版alpha5的(商业版发现没法下载),是通过命令行安装在ubuntu16.04上的,显示安装成功(教程上说是ubuntu18,我用的是16,不懂是否有影响)。Mindstudio版本是MindStudio_3.0.3_win,安装在windows下用于远程连接服务器,ssh连接没问题。【操作步骤&问题现象】1、windows下的Mindstudio进行连接服务器上CANN环境编译库的时候,报错了,报的错是x86_64 Connect failed,只有这个错误
上滑加载中
推荐直播
-
华为开发者空间玩转DeepSeek
2025/03/13 周四 19:00-20:30
马欣 山东商业职业技术学院云计算专业讲师,山东大学、山东建筑大学等多所本科学校学生校外指导老师
同学们,想知道如何利用华为开发者空间部署自己的DeepSeek模型吗?想了解如何用DeepSeek在云主机上探索好玩的应用吗?想探讨如何利用DeepSeek在自己的专有云主机上辅助编程吗?让我们来一场云和AI的盛宴。
即将直播 -
华为云Metastudio×DeepSeek与RAG检索优化分享
2025/03/14 周五 16:00-17:30
大海 华为云学堂技术讲师 Cocl 华为云学堂技术讲师
本次直播将带来DeepSeek数字人解决方案,以及如何使用Embedding与Rerank实现检索优化实践,为开发者与企业提供参考,助力场景落地。
去报名
热门标签