Skip to content

Commit b79fc95

Browse files
committed
Mention MKL
1 parent a2aeb8c commit b79fc95

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

content/numpy-advanced.rst

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -82,19 +82,19 @@ Exercise 1
8282

8383
.. highlight:: python
8484

85-
The library behind the curtain: BLAS
86-
------------------------------------
85+
The libraries behind the curtain: MKL and BLAS
86+
----------------------------------------------
8787

88-
NumPy is fast because it outsources most of its heavy lifting to
88+
NumPy is fast because it outsources most of its heavy lifting to heavily
89+
optimized math libraries, such as Intel's `Math Kernel Library (MKL) <https://www.intel.com/content/www/us/en/develop/documentation/oneapi-programming-guide/top/api-based-programming/intel-oneapi-math-kernel-library-onemkl.html>`_,
90+
which are in turn derived from a Fortran library called
8991
`Basic Linear Algebra Subprograms (BLAS) <https://en.wikipedia.org/wiki/Basic_Linear_Algebra_Subprograms>`_.
9092
BLAS for Fortran was `published in 1979 <https://doi.org/10.1145/355841.355847>`_
9193
and is a collection of algorithms for common mathematical operations that are
92-
performed on arrays of numbers. Algorithms such as element-wise sum, matrix
93-
multiplication, computing the vector length, etc.
94-
95-
The API of that software library was later standardized, and today there are
96-
many modern implementations available. These libraries represent over 40 years
97-
of optimizing efforts and make use of
94+
performed on arrays of numbers. Algorithms such as matrix multiplication,
95+
computing the vector length, etc. The API of the BLAS library was later
96+
standardized, and today there are many modern implementations available. These
97+
libraries represent over 40 years of optimizing efforts and make use of
9898
`specialized CPU instructions for manipulating arrays <https://www.youtube.com/watch?v=Pc8DfEyAxzg&list=PLzLzYGEbdY5lrUYSssHfk5ahwZERojgid>`_.
9999
In other words, they are *fast*.
100100

0 commit comments

Comments
 (0)