Skip to content

Add linux-riscv64 binary#46

Merged
yawkat merged 1 commit intoyawkat:mainfrom
luhenry:main
Apr 8, 2026
Merged

Add linux-riscv64 binary#46
yawkat merged 1 commit intoyawkat:mainfrom
luhenry:main

Conversation

@luhenry
Copy link
Copy Markdown

@luhenry luhenry commented Apr 8, 2026

No description provided.

@yawkat
Copy link
Copy Markdown
Owner

yawkat commented Apr 8, 2026

Thank you! I'll probably make a minor release when #44 is ready.

@yawkat yawkat merged commit ed8f477 into yawkat:main Apr 8, 2026
1 check passed
@yawkat
Copy link
Copy Markdown
Owner

yawkat commented Apr 8, 2026

@luhenry I manually triggered a workflow run and it passed, but would you mind testing the final jar on riscv? It's available here, hopefully you have access: https://github.com/yawkat/lz4-java/actions/runs/24154088159/artifacts/6335517206

@luhenry
Copy link
Copy Markdown
Author

luhenry commented Apr 8, 2026

@luhenry I manually triggered a workflow run and it passed, but would you mind testing the final jar on riscv? It's available here, hopefully you have access: https://github.com/yawkat/lz4-java/actions/runs/24154088159/artifacts/6335517206

Will do! I’m thinking of using some of these GitHub riscv64 runners on my fork to run the testing there. Would you generally be happy to integrate such change?

@yawkat
Copy link
Copy Markdown
Owner

yawkat commented Apr 8, 2026

Hmm maybe. The macos and windows builds already use runners and I think they run tests. The Linux builds don't. Maybe that could change, but s390x and x86 still have to be supported so some cross compilation will remain. There's also actions credit cost to consider, but I think Linux runners are fairly cheap on all platforms.

@luhenry
Copy link
Copy Markdown
Author

luhenry commented Apr 9, 2026

Testing at https://github.com/luhenry/lz4-java/actions/workflows/test.yml. Running into some missing dependencies. Debugging and updating my branch.

It's a lot slower on riscv64 for two reasons:

From the early testing (https://github.com/luhenry/lz4-java/actions/runs/24181872888/job/70576636625):

[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.343 s -- in net.jpountz.lz4.LZ4FactoryTest
[INFO] Tests run: 78, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 60.12 s -- in net.jpountz.lz4.LZ4BlockStreamingTest
[INFO] Tests run: 272, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 163.2 s -- in net.jpountz.lz4.LZ4FrameIOStreamTest
[INFO] Tests run: 16, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.085 s -- in net.jpountz.lz4.LZ4FastResetTest
[INFO] Tests run: 79, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 521.6 s -- in net.jpountz.lz4.LZ4Test
[INFO] Tests run: 63, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 104.1 s -- in net.jpountz.xxhash.XXHash64Test
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.004 s -- in net.jpountz.xxhash.XXHashFactoryTest
[INFO] Tests run: 63, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 85.75 s -- in net.jpountz.xxhash.XXHash32Test
[INFO] Tests run: 1085, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 10.06 s -- in net.jpountz.lz4.OutOfBoundsTest
[INFO] Tests run: 7, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 13.74 s -- in net.jpountz.lz4.UtilsTest

So it's mostly working. Some failures still, reproducing locally and figuring out what's missing.

@luhenry
Copy link
Copy Markdown
Author

luhenry commented Apr 9, 2026

The failures are because jazzer is not currently supported on linux-riscv64: https://github.com/CodeIntelligenceTesting/jazzer/blob/main/README.md?plain=1#L29. I'll submit a PR to try to get them to enable it 🤞

In the meantime I'll disable fuzzing on riscv64 specifically.

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.

2 participants