Skip to content

SVE Backend - #842

Closed
jeremylt wants to merge 1 commit into
mainfrom
jeremy/sve
Closed

SVE Backend#842
jeremylt wants to merge 1 commit into
mainfrom
jeremy/sve

Conversation

@jeremylt

@jeremylt jeremylt commented Nov 11, 2021

Copy link
Copy Markdown
Member

Closes #631

@jeremylt

jeremylt commented Nov 12, 2021

Copy link
Copy Markdown
Member Author

This now compiles and passes the t3 tests on Ookami.

ToDo:

  • Performance comparisons
  • Makefile flag fix (not sure how the AVX one even works)
  • Improved vectorization instructions?
  • Add SVE backend to README
  • Do we want manual unrolling for opt? The unrolling is pretty straightforward

Comment thread backends/opt/ceed-opt-tensor.c Outdated
Comment thread backends/opt/ceed-opt-tensor.c Outdated
@laylagi

laylagi commented Nov 15, 2021

Copy link
Copy Markdown
Member

I remember from Ookami's talk that performance with GCC was the worst among all compilers. I did a brief experiment before losing access to Ookami.
sve/blocked with armclang: DoFs/Sec in CG: 1.43289 (1.43289) million
opt/blocked with gcc: DoFs/Sec in CG: 0.729637 (0.729637) million

I am not sure why these numbers are so small compared to what we had Friday but I think the poor performance with sve might partly have something to do with compiler, maybe?! I have to apply for an account to do more experiments though.

@jedbrown

jedbrown commented Sep 6, 2022

Copy link
Copy Markdown
Member

Is this ready for review? Should we include it in v0.11?

@jeremylt

jeremylt commented Sep 6, 2022

Copy link
Copy Markdown
Member Author

The two big todos are fixing the makefile magic and seeing if this actually does anything different than OPT in terms of performance.

@jeremylt
jeremylt force-pushed the jeremy/sve branch 3 times, most recently from d3cd77e to e57bab0 Compare September 12, 2022 15:53
@jeremylt
jeremylt marked this pull request as ready for review September 12, 2022 15:54
@jedbrown

Copy link
Copy Markdown
Member

I noticed that libxsmm contains aarch64/SVE code and it's announced as supported for the next release.

@jedbrown

Copy link
Copy Markdown
Member

Do we have a place where we can measure performance? There is a machine at Sandia that you can access if you put in a Sarape request and AWS c7g also has SVE. JLSE also has a system that I could try requesting.

@jeremylt

Copy link
Copy Markdown
Member Author

Ookami will reach its end of life at the end of this calendar year.

@jeremylt
jeremylt force-pushed the jeremy/sve branch 5 times, most recently from 964d214 to 7184d99 Compare July 25, 2025 17:38
@jeremylt

jeremylt commented Aug 5, 2025

Copy link
Copy Markdown
Member Author

Side note - finally got the compile flags right to test in GitHub Actions. Yay. But the test is failing. Boo.

@jeremylt

jeremylt commented Aug 7, 2025

Copy link
Copy Markdown
Member Author

Given that XSMM targets this hardware and already gives us better performance on AVX hardware, I propose we close this. Any objections?

@jrwrigh

jrwrigh commented Aug 8, 2025

Copy link
Copy Markdown
Collaborator

This was well before my time, so I'm not 100% on the motivation and scope of the PR. But that logic makes sense to me.

@jedbrown

jedbrown commented Aug 8, 2025

Copy link
Copy Markdown
Member

I think XSMM did not target SVE at the time when this work was started. If XSMM covers the scope of what we might use SVE intrinsics for, I don't have a problem sticking with that and just closing this.

@jeremylt jeremylt closed this Aug 8, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Arm SVE intrinsics

5 participants