Git Product home page Git Product logo

Comments (5)

gcgloven avatar gcgloven commented on June 12, 2024 1

Conclusion (The story ends here) SOLVED!

With many struggles and painful searching, the story periods at the junction where a hardware optimisation on Intel's Kernel Math Library was not optimised with AMD CPU for Mosek 9.0

I built the program finally with my Intel CPU on another device, while on my home setup: AMD® Ryzen 7 3700x 8-core processor × 16 the conflict remains.

TLDR: IRIS-DISTRO works on Intel CPU, not AMD CPU. Hence you need to install some compatibility and optimisation packages

SOLUTION

Why this happen?
https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/illegal-instruction-error-with-newer-AMD-CPU/td-p/1147393
AMD Package
install https://developer.amd.com/amd-aocl/
Intel Package
refer to this and add KML package to your ubuntu
https://github.com/eddelbuettel/mkl4deb

Add this to your bash

export MKL_DEBUG_CPU_TYPE=5

reboot and built this program

from iris-distro.

reso1 avatar reso1 commented on June 12, 2024 1

It seems that I forgot to export MKL_DEBUG_CPU_TYPE=5 after installing amd aocl package, anyway it works now. Thanks :)

from iris-distro.

gcgloven avatar gcgloven commented on June 12, 2024

I have tried to make with python3.7 the same error persist.
Here is the python debug:
I see it addressing to iris-distro/build/install/libmosek64.so
image

For some reasons, now I suspect is an CPU issue as I read into SIGILL fault

What is SIGILL?

The SIGILL signal is raised when an attempt is made to execute an invalid, privileged, or ill-formed instruction. SIGILL is usually caused by a program error that overlays code with data or by a call to a function that is not linked into the program load module.

After further digging into the problem. I have exported the core from running the python program and use gdb iris_wrapper.cpython-37m-x86_64-linux-gnu.so core

and I obtained this from my terminal.

[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `python -m irispy.test.test_iris_2d'.
Program terminated with signal SIGILL, Illegal instruction.
#0  0x00007f528b5eeb12 in mkl_blas_def_dgemm_kernel_bdz () from /home/gloven/supports/iris-distro/build/install/lib/libmosek64.so.7.1
[Current thread is 1 (Thread 0x7f52ba0ad740 (LWP 1645))]

So now I understand that this is a key issue with
mkl_blas_def_dgemm_kernel_bdz

from iris-distro.

reso1 avatar reso1 commented on June 12, 2024

Conclusion (The story ends here) SOLVED!

With many struggles and painful searching, the story periods at the junction where a hardware optimisation on Intel's Kernel Math Library was not optimised with AMD CPU for Mosek 9.0

I built the program finally with my Intel CPU on another device, while on my home setup: AMD® Ryzen 7 3700x 8-core processor × 16 the conflict remains.

TLDR: IRIS-DISTRO works on Intel CPU, not AMD CPU. Hence you need to install some compatibility and optimisation packages

SOLUTION

Why this happen? https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/illegal-instruction-error-with-newer-AMD-CPU/td-p/1147393 AMD Package install https://developer.amd.com/amd-aocl/ Intel Package refer to this and add KML package to your ubuntu https://github.com/eddelbuettel/mkl4deb

Add this to your bash export MKL_DEBUG_CPU_TYPE=5

reboot and built this program

Still have this fault after installed the amd-aocl package on my Ryzen Threadripper 3990X PC, can you please provide more detalis about this work-around? Thanks a lot !

from iris-distro.

gcgloven avatar gcgloven commented on June 12, 2024

If you are running the test python file and face such an error,
you may try using GDB program to debug the compiled .so file

gdb iris_wrapper.cpython-37m-x86_64-linux-gnu.so core

You may then read what is the actual issue with the compiled .so program.

It's quite a while back, I believe the above cmd line is what I used eventually to discover the issue with my compiled program.

from iris-distro.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.