布朗桥python_MATLAB 里面有哪些加快程序运行速度的方法呢,求分享?

挖坟了…睡不着觉当个备忘录记一下用过的方法吧

1. 循环向量化

2. 利用函数的矩阵输入功能批量处理

3. 必须用for且费时的地方改成单层parfor,要是循环次数比cpu核数还少反而会拖慢程序

4. 非常大的矩阵的运算可以用gpuArray(这个在matlab 深度学习工具箱中深有体会)

5. 能用矩阵不要用cell,速度慢且占内存巨多

6. 对调用频繁且费时的地方尝试生成c ,写成mex

7. 按编译器提示先初始化矩阵大小(但我大部分时候还是懒得预先算矩阵大小…)

8. Matlab 是可以多开的,如果parfor不能改或者懒得改可以“人肉parfor”,也就是把一个for拆成几段然后多开几个matlab 一起执行,最后再合并结果,比较暴力哈哈

9. 费时的程序最后加个email发送程序,跑完直接把结果发邮箱里

10. 再想想

关于第6条前几天做了个测试,自己造了个filter函数的小轮子,和内置函数,以及相应生成的mex函数的速度进行了对比,大体过程参考[Matlab] 滤波器filter函数造轮子及使用代码生成进行速度优化 给个最后的结果吧:

可以看到自己写的函数转mex后速度能提升一个数量级,这其中主要也是C优化了MATLAB的for循环的功劳。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/445923.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FFmpeg源代码简单分析-其他-libavdevice的avdevice_register_all()

参考链接 FFmpeg源代码简单分析:libavdevice的avdevice_register_all()_雷霄骅的博客-CSDN博客 libavdevice的avdevice_register_all() FFmpeg中libavdevice注册设备的函数avdevice_register_all()。avdevice_register_all()在编程中的使用示例可以参考文章&#…

Tomcat无需输入项目名,直接用域名访问项目

问题 在Tomcat上开发Web应用,通常是将应用放置Tomcat主目录下webapps,然后在浏览器地址栏输入域名应用名(如http://localhost:8080/app)对应用进行访问。 为了方便开发,打算直接用域名访问项目。例如,在浏…

蓝牙该串口设备不存在或已被占用_电脑识别不了串口设备如何解决_电脑检测不到串口怎么办...

2015-09-07 10:46:45win8.1系统USB转串口不能识别设备出现错误代码10的解决方法分享给大家,win8.1系统插入USB设备提示“指定不存在的设备”,左下角有小黄色感叹号,导致设备无法识别不能识别...2016-12-02 10:52:57一般情况下,win…

FFmpeg源代码简单分析-其他-libavdevice的gdigrab

参考链接 FFmpeg源代码简单分析:libavdevice的gdigrab_雷霄骅的博客-CSDN博客_gdigrab libavdevice的gdigrab GDIGrab用于在Windows下屏幕录像(抓屏)gdigrab的源代码位于libavdevice\gdigrab.c。关键函数的调用关系图如下图所示。图中绿色背…

分区和分片的区别_PHP: 分区和分片 - Manual

分区和分片数据库群组是由于各种各样的原因建立的,他可以提升处理能力、容忍错误,并且提升大量服务器同时工作的的性能。群组有时会组合分区和共享功能,来将大量复杂的任务分拆成更加简单的任务,更加可控的单元。插件可以支持各种…

Ubuntu安装GmSSL库适用于ubuntu18和ubuntu20版本

参考链接 编译与安装【GmSSL】GmSSL 与 OpenSSL 共存的安装方法_阿卡基YUAN的博客-CSDN博客_openssl和gmssl在Linux下安装GmSSL_百里杨的博客-CSDN博客_安装gmssl ubuntu18操作 需要超级管理员权限本人将下载的安装包master.zip和安装的位置都设定在/usr/local下创建文件夹/u…

Windows7右键菜单栏添加打开cmd项

背景简介 众所周知,在Linux桌面操作系统中的工作目录窗口中,单击鼠标右键,弹出的菜单栏通常有一项“打开终端”,然后移动鼠标点击该项,就可以打开Shell窗口,在当前工作目录进行命令行操作。 但是&#xf…

python11_Python11,文件操作

整了这么多杂七杂八又“没用”的,终于来点实际的操作了。Python中用open()方法来对打开文件。我们来看看它的用法:path "C:\\Users\Frank\Desktop\\text.txt"f open(path,r,encoding"utf-8")首先给变量path指定一个路径&#xff0…

在ubuntu环境下执行openssl编译和安装

参考链接 工具系列 | Ubuntu18.04安装Openssl-1.1.1_Tinywan的技术博客_51CTO博客密码学专题 openssl编译和安装_MY CUP OF TEA的博客-CSDN博客_openssl 编译安装 下载 /source/index.html编译 使用命令sudo tar -xvzf openssl-1.1.1q.tar.gz 解压。使用cd openssl-1.1.1q/进…

chrome 使用gpu 加速_一招解决 Chrome / Edge 卡顿缓慢 让浏览器重回流畅顺滑

最近一段时间,我发现电脑上的 Chrome 谷歌浏览器越用越卡了。特别是网页打开比较多,同时还有视频播放时,整个浏览器的响应速度都会变得非常缓慢,视频也会卡顿掉帧。 我用的是 iMac / 32GB 内存 / Intel 四核 i7 4Ghz CPU,硬件性能应该足以让 Chrome 流畅打开几十个网页标签…

CLion运行程序时添加命令行参数 即设置argv输入参数

参考链接 CLion运行程序时添加命令行参数_三丰杂货铺的博客-CSDN博客_clion命令行参数 操作流程 Run -> Edit -> Configuration -> Program arguments那里添内容最快捷的方式是,点击锤子编译图标和运行图标之间的的图标,进行Edit Configurati…

python的userlist_Python Collections.UserList用法及代码示例

Python列表是array-like数据结构,但与之不同的是它是同质的。单个列表可能包含数据类型,例如整数,字符串以及对象。 Python中的列表是有序的,并且有一定数量。根据确定的序列对列表中的元素进行索引,并使用0作为第一个…

解决 SSL_CTX_use_certificate:ca md too weak:ssl/ssl_rsa.c 问题

报错原因分析 原因是openssl调整了安全级别,要求ca具备更高等级的安全,因此先前发布的证书,如果采用了不安全的算法,比如MD5,就会显示上述这个错误 解决办法 重新生成证书,先前证书弃用使用函数 SSL_CTX_…

向上滚动 终端_ubuntu

Ubuntu终端Terminal常用快捷键Ubuntu终端Terminal常用快捷键 快捷键 功能 Tab 自动补全 Ctrla 光标移动到开始位置 Ctrle 光标移动到最末尾 Ctrlk 删除此处至末尾的所有内容 Ctrlu 删除此处至开始的所有内容 Ctrld 删除当前字符 Ctrlh 删除当前字符前一个字符 Ctrlw 删除此处到…

openssl实现双向认证教程(服务端代码+客户端代码+证书生成)

参考链接 openssl实现双向认证教程(服务端代码客户端代码证书生成)_huang714的博客-CSDN博客_ssl_ctx_load_verify_locations基于openssl实现https双向身份认证及安全通信_tutu-hu的博客-CSDN博客_基于openssl实现 注意事项 openssl版本差异很可能导致程…

python用pip安装pillow_cent 6.5使用pip安装pillow总是失败

python:2.7.8阿里云cent os32位virtualenvvirtualenvwrapper之前有一个virtualenv不知道怎么回事成功装上了pillow之后再在别的virtualenv装就全都报错这是为什么 太奇怪了?下载whl安装,不管哪个版本都说不支持这个系统。imaging.c:3356: error: expected ?.?. ?…

基于openssl和国密算法生成CA、服务器和客户端证书

参考链接 国密自签名证书生成_三雷科技的博客-CSDN博客_国密证书生成openssl采用sm2进行自签名的方法_dong_beijing的博客-CSDN博客_openssl sm 前提说明 OpenSSL 1.1.1q 5 Jul 2022 已经实现了国密算法查看是否支持SM2算法openssl ecparam -list_curves | grep -i sm2参考…

h5获取http请求头_React 前端获取http请求头信息

背景:前端通过react渲染页面,使用了react-slingshot,相当于是前端跑在一个node服务上面需求:需要通过客户端通过HTTP请求传递来的参数(header里放了token)进行用户权限的验证,比如访问http://localhost:3000/rights/1,…

基于Gmssl库静态编译,实现服务端和客户端之间的SSL通信

前情提要 将gmssl库采取静态编译的方式&#xff0c;存储在/usr/local/gmssl路径下&#xff0c;核心文件涵盖 include、lib和bin等Ubuntu安装GmSSL库适用于ubuntu18和ubuntu20版本_MY CUP OF TEA的博客-CSDN博客 代码 server #include <stdio.h> #include <stdlib.h&g…

禅道备份功能_更新禅道燃尽图及数据备份

Last login: Fri May 29 13:52:16 on ttys000mazhenguodeMacBook-Pro:~ mazhenguo$ ssh root192.168.1.2 //登录服务器root192.168.1.2’s password: //输入服务器密码Last login: Fri May 29 13:52:20 2015 from 192.168.1.251[rootmazhenguo ~]# cd /home/app/192.168.1.2/ze…