|
7 | 7 | //! The following implementations are available: |
8 | 8 | //! |
9 | 9 | //! * `accelerate`, which is the one in the [Accelerate] framework (macOS only), |
10 | | -//! * `intel-mkl`, which is the one in [Intel MKL], |
| 10 | +//! * `intel-mkl-*`, which is the one in [Intel MKL], where |
| 11 | +//! * `intel-mkl-dynamic-parallel` dynamically links the parallel backend of MKL |
| 12 | +//! * `intel-mkl-dynamic-sequential` dynamically links the sequential backend of MKL |
| 13 | +//! * `intel-mkl-static-parallel` statically links the parallel backend of MKL |
| 14 | +//! * `intel-mkl-static-sequential` statically links the sequential backend of MKL |
11 | 15 | //! * `netlib`, which is the reference one by [Netlib], |
12 | 16 | //! * `openblas`, which is the one in [OpenBLAS], and |
13 | 17 | //! * `r`, which is the one in [R]. |
|
22 | 26 | //! lapack-src = { version = "0.12", features = ["openblas"] } |
23 | 27 | //! lapack-src = { version = "0.12", features = ["r"] } |
24 | 28 | //! ``` |
25 | | -//! ### Configuring MKL |
26 | | -//! |
27 | | -//! When the `intel-mkl` feature is selected, then the parallel version of |
28 | | -//! MKL using OpenMP is _statically_ linked. To link the sequential version |
29 | | -//! use the `intel-mkl-seq` feature. In both cases, the |
30 | | -//! [LP64 interface](https://www.intel.com/content/www/us/en/docs/onemkl/developer-guide-linux/2023-0/using-the-ilp64-interface-vs-lp64-interface.html) |
31 | | -//! is linked. If other linkage options for MKL are desired, omit `lapack-src` |
32 | | -//! as a dependency and use the [`intel-mkl-src`](https://crates.io/crates/intel-mkl-src) |
33 | | -//! crate directly with the appropriate feature flags. |
34 | 29 | //! |
35 | 30 | //! [architecture]: https://blas-lapack-rs.github.io/architecture |
36 | 31 | //! [lapack]: https://en.wikipedia.org/wiki/LAPACK |
|
46 | 41 | #[cfg(feature = "accelerate")] |
47 | 42 | extern crate accelerate_src as raw; |
48 | 43 |
|
49 | | -#[cfg(any(feature = "intel-mkl", feature = "intel-mkl-seq"))] |
| 44 | +#[cfg(any( |
| 45 | + feature = "intel-mkl-dynamic-parallel", |
| 46 | + feature = "intel-mkl-dynamic-sequential", |
| 47 | + feature = "intel-mkl-static-parallel", |
| 48 | + feature = "intel-mkl-static-sequential", |
| 49 | +))] |
50 | 50 | extern crate intel_mkl_src as raw; |
51 | 51 |
|
52 | 52 | #[cfg(feature = "netlib")] |
|
0 commit comments