Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
LAPACK
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Implementations == As with BLAS, LAPACK is sometimes forked or rewritten to provide better performance on specific systems. Some of the implementations are: ; Accelerate: [[Apple Inc.|Apple]]'s framework for [[macOS]] and [[IOS (Apple)|iOS]], which includes tuned versions of [[BLAS]] and LAPACK.<ref>{{Cite web|url=https://developer.apple.com/library/mac/#releasenotes/Performance/RN-vecLib/|title=Guides and Sample Code|website=developer.apple.com|access-date=2017-07-07}}</ref><ref>{{Cite web|url=https://developer.apple.com/library/ios/#documentation/Accelerate/Reference/AccelerateFWRef/|title=Guides and Sample Code|website=developer.apple.com|access-date=2017-07-07}}</ref> ; Netlib LAPACK: The official LAPACK. ; Netlib [[ScaLAPACK]]: Scalable (multicore) LAPACK, built on top of [[PBLAS]]. ; [[Intel MKL]]: Intel's Math routines for their x86 CPUs. ; [[OpenBLAS]]: Open-source reimplementation of BLAS and LAPACK. ; Gonum LAPACK: A partial native [[Go (programming language)|Go]] implementation. Since LAPACK typically calls underlying BLAS routines to perform the bulk of its computations, simply linking to a better-tuned BLAS implementation can be enough to significantly improve performance. As a result, LAPACK is not reimplemented as often as BLAS is. === Similar projects === These projects provide a similar functionality to LAPACK, but with a main interface differing from that of LAPACK: ; Libflame: A dense linear algebra library. Has a LAPACK-compatible wrapper. Can be used with any BLAS, although [[BLIS (software)|BLIS]] is the preferred implementation.<ref>{{cite web |title=amd/libflame: High-performance object-based library for DLA computations |url=https://github.com/amd/libflame |website=GitHub |publisher=AMD |date=25 August 2020}}</ref> ; [[Eigen (C++ library)|Eigen]]: A header library for linear algebra. Has a BLAS and a partial LAPACK implementation for compatibility. ; MAGMA: Matrix Algebra on GPU and Multicore Architectures (MAGMA) project develops a dense linear algebra library similar to LAPACK but for heterogeneous and hybrid architectures including multicore systems accelerated with [[GPGPU]]s. ; PLASMA: [[The Parallel Linear Algebra for Scalable Multi-core Architectures]] (PLASMA) project is a modern replacement of LAPACK for multi-core architectures. PLASMA is a software framework for development of asynchronous operations and features out of order scheduling with a runtime scheduler called QUARK that may be used for any code that expresses its dependencies with a [[directed acyclic graph]].<ref>{{Cite web |url=http://icl.eecs.utk.edu/ |title=ICL |website=icl.eecs.utk.edu |access-date=2017-07-07 }}</ref> {{See also|Basic Linear Algebra Subprograms#Similar libraries (not compatible with BLAS)}}
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)