-
Notifications
You must be signed in to change notification settings - Fork 10
Use MKL in NumPy and SciPy #222
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: fedora-py3
Are you sure you want to change the base?
Use MKL in NumPy and SciPy #222
Conversation
b6210e0 to
def92e9
Compare
7188d88 to
846e047
Compare
|
Only test fails after removing numpy and scipy from requirements.txt. The container is built fine. |
84b2769 to
e55b1ba
Compare
|
Same as for #231. The test will have to be fixed. |
d980024 to
c076797
Compare
|
Benchmarks do not look good (i5-11400H): It seems to be slower sometimes. It also seems it is due to the manual build, not to the use of MKL: #240 (comment). |
|
Is it possible to plot the ratio between the two? At least it's not a dramatic difference at a quick visual glance It's a bit of a shame that it doesn't seem to help, and also a bit unexpected perhaps? |
|
I have some doubts if it gets configured right: Should it be sequential really (
Not in an easy way I think, the output is kind of messy. I attach outputs and commands to do benchmarks. |
c076797 to
6889073
Compare
I think one thing to look out for carefuly here is threading. There are many environment variables that control it and I wouldn't be surprised if by setting the iomp version you're just seeing single threaded vs multithreaded. |
6437707 to
e19312c
Compare
|
LAPACK is detected in numpy 2.2.2:
So numpy 1.26.4 is too old to detect latest MKL. |
e19312c to
a302b9b
Compare
a302b9b to
d6ab4ca
Compare
dcdf424 to
f897161
Compare
f897161 to
103a76f
Compare
|
There is no benefit from adding |
938a491 to
ba8ca89
Compare
|
PyBDSF master, Python 3.10, 127M image. But - Numpy 1.26.4 detects only BLAS MKL, not LAPACK MKL. So I suggest to wait with conclusions until Numpy >=2 is well supported. |
Compiling numpy and scipy manually is save only if MARCH and MTUNE = native.
80f6f5d to
5bd7028
Compare



Description
This builds NumPy and Scipy against MKL. I think it is better this way than #98, since no extra large packages are installed (#98 (comment)).
It does compile. Import numpy and scipy works.
It requires benchmarks. For example, LSMTool and PyBDSF use Numpy and Scipy a lot (https://git.astron.nl/RD/rapthor/-/issues/31).
BTW:
So it seems that AVX2 is used by default in NumPy and everything "above" is dispatched.