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

Add ARM support #4

Open
PsychicNoodles opened this issue Jul 7, 2023 · 6 comments
Open

Add ARM support #4

PsychicNoodles opened this issue Jul 7, 2023 · 6 comments
Labels
enhancement New feature or request

Comments

@PsychicNoodles
Copy link

Currently, x86 arch specific instructions are used in a couple utility functions, here and here. I'm trying to run sozu on a Raspberry Pi, so it would be nice to have a version that can build and run there, even if it ends up not benefiting from simd optimizations.

@5310
Copy link

5310 commented Aug 3, 2023

Came to second this. On a brand new Ampere VPS, this is the only thing so far that won't work on ARM.

@Keksoj Keksoj added the enhancement New feature or request label Aug 9, 2023
@Wonshtrum
Copy link
Contributor

I'm sorry, I was in a rush when I merged the "perf" branch and I knew SIMD would cause problems.
I will soon contribute again to Kawa (mainly to add the missing h2 parts) and I will put all the SIMD stuff under a feature flag (like I should have done). Sozu will get a corresponding feature to enable or disable SIMD in Kawa.

@Wonshtrum
Copy link
Contributor

SIMD has been moved under a feature flag. It will be tested and ported to Sozu soon.

@Wonshtrum
Copy link
Contributor

I apologize for the delay, the Sozu team and I had to prioritize the development of HTTP2, which led to a longer wait than expected.
However, I'm pleased to announce that we've now released kawa 0.6.3. This release includes important bug fixes and introduces the SIMD feature flag.
Shortly after that, we also released Sozu 0.15.4, which exposes the SIMD feature flag.
I hope Sozu compiles properly on ARM when this feature is disabled (it is enabled by default).

sdwilsh added a commit to sdwilsh/jellyfin-remote-proxy that referenced this issue Feb 26, 2024
`sozu-lib` has the default feature `simd`, which does not compile at all
on ARM.  See CleverCloud/kawa#4.
@lu-zero
Copy link

lu-zero commented Jun 21, 2024

maybe would be a good idea to guard it using the right cfg entries instead of a feature?

@Wonshtrum
Copy link
Contributor

Yes, that's also our goal. I don't like the way parsing is handled presently. The fast parsers and simd were an afterthought and it shows.
Our efforts are currently on the http2 support, which is much more complex than we anticipated. Kawa might be rewritten altogether when we are sure to understand exactly how we want it to work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

5 participants