Skip to content
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

Explore use of Java Vector API for SIMD support #739

Open
headius opened this issue Jan 29, 2025 · 1 comment
Open

Explore use of Java Vector API for SIMD support #739

headius opened this issue Jan 29, 2025 · 1 comment

Comments

@headius
Copy link
Contributor

headius commented Jan 29, 2025

Inspired by @samyron's work in #730, I'd like to explore the potential of Java's Vector API in Psych.

https://openjdk.org/jeps/489

The API has been gestating for many years, but can be enabled and used on all recent JDKs. The potential here is to get SIMD performance without having to write platform-specific code, and enable it only when the Vector API is enabled at the JVM level.

This could also be a fun project for someone else who wants to play with truly bleeding-edge JVM features and help out JRuby at the same time.

I would love to hear from @samyron about more ideas for SIMD optimization of Psych, and try to implement as many of those ideas as possible in the JRuby extension.

@samyron
Copy link

samyron commented Jan 30, 2025

I'm happy to take a look. I haven't looked at the Java Vector API. However, it might be easier to implement similar ideas as to what I did in #730 as the JVM will handle CPU/ISA detection.

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

No branches or pull requests

3 participants