C++ Mac OS中的BLAS/LAPACK与原来的BLAS/LAPACK有什么区别(如果有的话)?
我最近从Linux切换到Mac OS。我需要布拉斯和拉帕克做一些计算。通过查看BLAS的维基百科,我了解到这两个库已经在Mac OS中实现。但据说, 苹果的MacOSX和iOS框架,包括BLAS和LAPACK的优化版本。 ()C++ Mac OS中的BLAS/LAPACK与原来的BLAS/LAPACK有什么区别(如果有的话)?,c++,macos,fortran,lapack,blas,C++,Macos,Fortran,Lapack,Blas,我最近从Linux切换到Mac OS。我需要布拉斯和拉帕克做一些计算。通过查看BLAS的维基百科,我了解到这两个库已经在Mac OS中实现。但据说, 苹果的MacOSX和iOS框架,包括BLAS和LAPACK的优化版本。 () 那么,MAC BLAS/LAPACK与原始版本有什么区别?(我查看了维基百科中提到的参考资料,但没有找到关于差异的信息。)BLAS和LAPACK有很多实现,也没有单一的Linux版本。有一个例程接口规范和上的参考实现,但该参考实现并没有关注特定平台(CPU、OS…)上的最
那么,MAC BLAS/LAPACK与原始版本有什么区别?(我查看了维基百科中提到的参考资料,但没有找到关于差异的信息。)BLAS和LAPACK有很多实现,也没有单一的Linux版本。有一个例程接口规范和上的参考实现,但该参考实现并没有关注特定平台(CPU、OS…)上的最大性能 因此,Mac库所做的是,它有自己的代码来进行一些计算,这可能比参考库更快。它可以用与参考Fortran代码不同的编程语言编程 您还可以尝试许多其他实现:Intel MKL、ATLAS、GotoBLAS、OpenBLAS、Sun Performance Library、Cray Scientific Library和其他。它们通常是用C或汇编语言为特定的CPU编写的 苹果为其Accelerate框架和vecLib(包含BLAS)所宣传的最重要的功能是优化了vector(SIMD)指令的使用。这也是所有其他版本都试图做到的。对于与其他实现的实际差异,有必要研究通常不可用的源代码(至少对于商业库是如此)