Skip to content

Add an extension for oneAPI.jl - #476

Open
amontoison wants to merge 18 commits into
masterfrom
oneapi-ext
Open

Add an extension for oneAPI.jl#476
amontoison wants to merge 18 commits into
masterfrom
oneapi-ext

Conversation

@amontoison

Copy link
Copy Markdown
Member

No description provided.

@codecov

codecov Bot commented Sep 7, 2025

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 74.43%. Comparing base (f980890) to head (9105536).

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #476      +/-   ##
==========================================
- Coverage   84.14%   74.43%   -9.71%     
==========================================
  Files          52       52              
  Lines        4674     4671       -3     
==========================================
- Hits         3933     3477     -456     
- Misses        741     1194     +453     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@sshin23

sshin23 commented Sep 7, 2025

Copy link
Copy Markdown
Member

@amontoison I'm starting to realize that there is quite a lot of redundant code between LapackCPU vs cuSOLVER vs rocSOLVER, etc. Wouldn't there be a better way?

@amontoison

amontoison commented Sep 7, 2025

Copy link
Copy Markdown
Member Author

I think we can rely more on multiple dispatch. I can propose a unified API next week.

The extension of oneAPI.jl is more a proof of concept than anything else because many things are still unstable in oneAPI.jl, but @michel2323 is officially working on it now!

@michel2323

Copy link
Copy Markdown
Collaborator

Should we add an Intel GPU runner?

@michel2323

michel2323 commented Sep 8, 2025

Copy link
Copy Markdown
Collaborator

ERROR: LoadError: UndefVarError: `oneSparseMatrixCSC` not defined in `oneAPI.oneMKL . Intel not like CSC.

@sshin23

sshin23 commented Sep 12, 2025

Copy link
Copy Markdown
Member

@michel2323, we don't have an Intel runner. Could you add one?

@michel2323

Copy link
Copy Markdown
Collaborator

Added oneAPI runner. @amontoison I forgot again how to resolve the CSR/CSC issue.

@amontoison

amontoison commented Sep 15, 2025

Copy link
Copy Markdown
Member Author

@michel2323 Add a CSC format in oneAPI.jl and use the relation between CSC / CSR to interface operations like mul!.

@michel2323

Copy link
Copy Markdown
Collaborator

@amontoison I'm hitting now a findall(::oneArray in MadNLP, which is not supported in oneAPI.jl. While trying to implement that I've hit some indexing issue. I'm confident though that can be resolved.

Github action runner added 2 commits February 4, 2026 10:20
@michel2323
michel2323 marked this pull request as ready for review February 4, 2026 19:27
@github-actions

github-actions Bot commented Feb 4, 2026

Copy link
Copy Markdown
Contributor

Your PR no longer requires formatting changes. Thank you for your contribution!

Github action runner added 2 commits February 4, 2026 11:32
@michel2323

michel2323 commented Feb 4, 2026

Copy link
Copy Markdown
Collaborator

@sshin23 After this, I can take care of making CUDA a MadNLPGPU extension too and try to consolidate the code for all three backends.

@amontoison

amontoison commented Feb 4, 2026

Copy link
Copy Markdown
Member Author

@michel2323
A file oneapi_qn.jl is missing in the extension.
Do you have an idea why the tests are failing?

@michel2323

Copy link
Copy Markdown
Collaborator

Because I forgot to commit the file 💩.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants