哪个MATLAB功能受益于多线程计算?

119意见(过去30天)
我有一台有多个处理器或核心的机器。我想知道Matlab函数我可以期望加快使用多个CPU的结果。

接受答案

Mathworks支万博1manbetx持团队
正如MATLAB 7.4(R2007A),MATLAB支持多个函数和万博1manbetx表达式的多线程计算,这些功能和表达式是元素-Wise函数的组合(例如,Y = 4 * x *(SIN(x)+ x ^ 3))。这些函数在多个线程上自动执行,您无需明确指定命令以在代码中创建线程。
对于在多个核心上执行更快(加速)的函数或表达式,必须执行以下条件:
1)通过该函数执行的算法中的操作容易被划分为可以同时执行的部分,并且需要很少的通信或需要几个顺序操作。这是所有元素明智的操作的情况。
2)数据大小足够大,以便并发执行的任何优点超过分区数据所需的时间并管理单独的执行线程。例如,大多数功能才会在数组大于几千元元素时加速。
3)操作不是内存绑定,其中处理时间由内存访问时间主导,就像元素 - 明智的简单操作一样的情况如此。作为一般规则,更复杂的功能加速优于简单的功能。
以下函数包括Matlab 7.14(R2012A)的多线程实现;此列表不是穷举,并且可以通过在下面列出的函数上实现,而其他MATLAB函数可能是多线程。另请注意,多线程实现可能不适用于所有参数组合和数据类型/形状/大小。函数按照它们在Matlab文档中显示的顺序列出。
数学
阵列和矩阵
•基本信息:ISFINITE,ISINF,ISNAN,MAX,MIN
•运营商:+, - 。*,./,。\,。^,*,^,\(mldivide),/(mrdivide)
•阵列操作:产品,和
•数组操作:BSXFUN,排序
线性代数
•矩阵分析:DET,RCOND
•线性方程:CHOL,INV,LDL,LINSOLVE,LU,QR
•特征值和奇异值:Eig,Hess,Schur,SVD,QZ
小学数学
•三角仪:atan2,cos,csc,armot,sec,sin,tan,包括弧度,度,双曲线和反转的变体。
•指数:EXP,POW2,SQRT
•复杂:ABS
•舍入和剩余部分:CEIL,FIX,地板,MOD,REM,ROUND
•日志,log2,log10,log1p,expm1,符号,Bitand,Bitor,Bitxor
特殊功能
•ERF,ERFC,ERFCINV,ERFCX,ERFINV,GAMMA,Gammaln
数据分析
•多列或长向量,FFTN,IFFTN的CONV2,滤波器,FFT和IFFT
5点评论
弗雷德里克莱斯
弗雷德里克莱斯 于2015年2月9日
如果您有一台笔记本电脑而您在电池上运行,则必须更改电源设置以获得最大性能。

登录评论。

更多答案(0)

社区宝藏狩猎

找到Matlab Central中的宝藏,并发现社区如何帮助您!

开始狩猎!