michael-simons / neo4j-migrations

Automated script runner aka "Migrations" for Neo4j. Inspired by Flyway.
https://michael-simons.github.io/neo4j-migrations/
Apache License 2.0
118 stars 23 forks source link

build: Switch GraalVM `-march` flag from `native` to `compatibility` #1488

Closed medsouz closed 1 month ago

medsouz commented 1 month ago

-march=native can improve performance but will add a hard requirement for every CPU extension present on your CPU. This can cause issues with older CPUs or CPUs from different vendors (AMD vs Intel).

-march=compatibility will ensure the best compatibility with a potential performance penalty. In my experience this is not usually noticable in applications like neo4j-migrations.

If performance is a concern then another option would be to remove the flag and trust the defaults of GraalVM, which according to their docs are: x86-64-v3 on AMD64 and armv8-a on AArch64

michael-simons commented 1 month ago

Good change, thank you. Makes complete sense, and if someone wants to have all the optimization, they can build accordingly.

michael-simons commented 1 month ago

@all-contributors add @medsouz for code

allcontributors[bot] commented 1 month ago

@michael-simons

I've put up a pull request to add @medsouz! :tada:

medsouz commented 1 month ago

@michael-simons would it be possible to generate a new release now that this is merged? Our Dockerfile is broken without this fix due to a CPU extension mismatch on our CI runner

michael-simons commented 1 month ago

The earliest this Thursday, I am away from a computer, but happy todo so then.

Am 21.10.2024 um 21:35 schrieb Matt Souza @.***>:

@michael-simons https://github.com/michael-simons would it be possible to generate a new release now that this is merged? Our Dockerfile is broken without this fix due to a CPU extension mismatch on our CI runner

— Reply to this email directly, view it on GitHub https://github.com/michael-simons/neo4j-migrations/pull/1488#issuecomment-2427444517, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAEAQL7GAXX4Y6B3IFCBW53Z4VCPXAVCNFSM6AAAAABQB53KR2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMRXGQ2DINJRG4. You are receiving this because you were mentioned.

medsouz commented 1 month ago

Perfect, no rush! Enjoy your time away 😄

michael-simons commented 1 month ago

Release is out, jars on central, binaries on SDKMan and Homebrew.