question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Error on LibXSMM cpu kernels

See original GitHub issue

🐛 Bug

User met errors raised at https://github.com/dmlc/dgl/blob/983a4fdd1981a6eaa4a3343ec4116739e9f97dfa/src/array/cpu/spmm_blocking_libxsmm.h#L267

 "Failed to generate libxsmm kernel for the SpMM operation!"

We should not raised the error but fallback to the naive kernel.

User’s CPU model: Xeon® CPU E5-2695 v2 @ 2.40GHz This is an old CPU produced in 2013, which might not be supported by LibXSMM now. https://ark.intel.com/content/www/us/en/ark/products/75281/intel-xeon-processor-e52695-v2-30m-cache-2-40-ghz.html

Possible Solution

Catch error at https://github.com/dmlc/dgl/blob/983a4fdd1981a6eaa4a3343ec4116739e9f97dfa/src/array/cpu/spmm.h#L144, and run the naive kernel if error detected

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Comments:10 (2 by maintainers)

github_iconTop GitHub Comments

1reaction
peizhou001commented, Sep 26, 2022

Feel free to reopen if any further questions.

1reaction
peizhou001commented, Sep 26, 2022

HI, @sixtyfive , there is already a PR for fixing this issue #4455

The reason of this error is Libxsmm is not supported in some old versions of CPU. As it is not easy to pre-check if the lib is supported in current CPU, we provide an API to disable it at runtime:

dgl.use_libxsmm(bool)

There is a prompt the first time failed using this lib, and you can use the API to disable it for next running.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Questions - Deep Graph Library
I am using DGL inside the following project that I have cloned. Unfortunately there occurs an error while training the algorithm. The call...
Read more >
Validation - LIBXSMM
This error avoids (automated) attempts to upstream LIBXSMM to an unsupported platform. LIBXSMM is upstreamed for Intel Architecture on all major Linux ...
Read more >
LIBXSMM Documentation - GitHub
sample collection can help to get started writing a kernel using LIBXSMM. ... The library handles errors with mechanisms available to the C...
Read more >
LIBXSMM - CERN Indico
Library for small matrix-matrix multiplications targeting Intel. Architecture (x86). The library generates code for the following.
Read more >
1389016 – Review Request: libxsmm - Library for small matrix ...
fixed bug in the Fortran interface (SMM functionality), where requesting a JIT kernel never returned a suitable PROCEDURE POINTER (always NULL).
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found