MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   资料存档 (https://www.labfans.com/bbs/forumdisplay.php?f=72)
-   -   MATLAB比Python快吗? (https://www.labfans.com/bbs/showthread.php?t=23075)

poster 2019-12-10 20:30

MATLAB比Python快吗?
 
我想使用[URL="http://en.wikipedia.org/wiki/Biot%E2%80%93Savart_law"]比奥瓦法则[/URL]来计算某些导体的磁场,并且我想使用1000x1000x1000矩阵。在使用MATLAB之前,但现在我想使用Python。 Python比MATLAB慢吗?如何使Python更快?

编辑:也许最好的方法是使用C / C ++计算大型数组,然后将其传输到Python。然后我想用[URL="http://en.wikipedia.org/wiki/VPython"]VPython[/URL]可视化。

EDIT2:在我的情况下哪个更好:C还是C ++?



[B]回答:[/B]

您可能会在此链接的底部找到一些有用的结果

[URL]http://wiki.scipy.org/PerformancePython[/URL]

从介绍开始
[INDENT]织法与NumPy,Pyrex,Psyco,Fortran(77和90)和C ++的比较,用于求解拉普拉斯方程。

[/INDENT]它还比较了MATLAB,似乎显示出与使用Python和[URL="http://en.wikipedia.org/wiki/NumPy"]NumPy[/URL]时相似的速度。

当然,这仅是一个特定的示例,您的应用程序可能允许更好或更差的性能。在两者上进行相同的测试并进行比较没有任何危害。

您还可以使用优化的库(例如[URL="http://en.wikipedia.org/wiki/Automatically_Tuned_Linear_Algebra_Software"]ATLAS)[/URL]来编译NumPy,该库提供了一些[URL="http://en.wikipedia.org/wiki/Basic_Linear_Algebra_Subprograms"]BLAS[/URL] / [URL="http://en.wikipedia.org/wiki/LAPACK"]LAPACK[/URL]例程。这些速度应与MATLAB相当。

我不确定NumPy的下载文件是否已针对该文件进行构建,但是我认为,如果您编译NumPy,ATLAS会将其库调整到您的系统,

[URL]http://www.scipy.org/Installing_SciPy/Windows[/URL]

该链接具有Windows平台下所需内容的更多详细信息。

编辑:

如果您想找出C或C ++更好的性能,可能值得提出一个新问题。尽管从上面的链接可以看到C ++的性能最佳。其他解决方案也非常接近,例如Pyrex,Python / Fortran(使用f2py)和内联C ++。

我做过的C ++下唯一的矩阵代数是使用[URL="http://www.osl.iu.edu/research/mtl/"]MTL[/URL]并实现扩展卡尔曼滤波器。不过,我想,实际上,这取决于您使用LAPACK / BLAS的库以及它的优化程度。

该链接列出了许多语言的面向对象的数值包。

[URL]http://www.oonumerics.org/oon/[/URL]



[url=https://stackoverflow.com/questions/2133031]更多&回答...[/url]


所有时间均为北京时间。现在的时间是 04:59

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.