Skip to content

[Pipe] Enable CRC32 intrinsic for DataNode#18239

Open
Caideyipi wants to merge 1 commit into
apache:masterfrom
Caideyipi:fix/enable-crc32-intrinsics
Open

[Pipe] Enable CRC32 intrinsic for DataNode#18239
Caideyipi wants to merge 1 commit into
apache:masterfrom
Caideyipi:fix/enable-crc32-intrinsics

Conversation

@Caideyipi

Copy link
Copy Markdown
Collaborator

Description

Enable the HotSpot CRC32 intrinsic in the default DataNode JVM options on Linux and Windows.

  • Add -XX:+UseCRC32Intrinsics to both DataNode environment scripts.
  • Add -XX:+UnlockDiagnosticVMOptions before the intrinsic flag on Linux; Windows already enables it.
  • Keep the change scoped to DataNode, where the AirGap sender and receiver calculate CRC32 checksums.

This reduces use of the JNI critical fallback after the CRC32 method is JIT compiled. Cold or interpreted execution may still use the fallback path.

Verification

  • Verified with JDK 17 that UseCRC32Intrinsics is true and reported as a command-line diagnostic option.
  • Verified the diagnostic unlock option precedes the intrinsic option in both scripts.
  • Ran git diff --check.

This PR has:

  • been self-reviewed.
  • added comments explaining the intent of the JVM options.

Key changed/added classes (or packages if there are too many classes) in this PR
  • scripts/conf/datanode-env.sh
  • scripts/conf/windows/datanode-env.bat

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