-
Notifications
You must be signed in to change notification settings - Fork 3.5k
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
ARROW-13635: [Packaging][Python] Define --with-lg-page for jemalloc in the arm manylinux builds #10940
Conversation
@github-actions crossbow submit wheel-manylinux--py39--arm64 |
@github-actions crossbow submit wheel-manylinux*arm64 |
Revision: 54a33f1 Submitted crossbow builds: ursacomputing/crossbow @ actions-777
|
@@ -71,6 +71,10 @@ echo "=== (${PYTHON_VERSION}) Building Arrow C++ libraries ===" | |||
: ${VCPKG_FEATURE_FLAGS:=-manifests} | |||
: ${VCPKG_TARGET_TRIPLET:=${VCPKG_DEFAULT_TRIPLET:-x64-linux-static-${CMAKE_BUILD_TYPE}}} | |||
|
|||
if [[ "$(uname -m)" == arm* ]] || [[ "$(uname -m)" == aarch* ]]; then | |||
export ARROW_EXTRA_CMAKE_FLAGS="-DARROW_JEMALLOC_LG_PAGE=14" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you add a comment explaining why this is necessary?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should it be 12 (4K)? Or 16 (64K)?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
--with-lg-page=16
fixes issue on 64k page system. #10929 (comment)
I tested on 4k page system with the image built from this pr --with-lg-page=14
, it work okay.
According to jemalloc/jemalloc#467 (comment), looks we can set --with-lg-page=16
and the binary should work on both 4k and 64k page arm64 system.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updated to 16
, though the conda-forge recipe uses 14
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Arm64 does support 4k/16k/64k page sizes. 16k is rarely used and looks deprecated AFAIK.
Waiting for verification from #10929 (comment) |
@@ -71,6 +71,10 @@ echo "=== (${PYTHON_VERSION}) Building Arrow C++ libraries ===" | |||
: ${VCPKG_FEATURE_FLAGS:=-manifests} | |||
: ${VCPKG_TARGET_TRIPLET:=${VCPKG_DEFAULT_TRIPLET:-x64-linux-static-${CMAKE_BUILD_TYPE}}} | |||
|
|||
if [[ "$(uname -m)" == arm* ]] || [[ "$(uname -m)" == aarch* ]]; then | |||
export ARROW_EXTRA_CMAKE_FLAGS="-DARROW_JEMALLOC_LG_PAGE=14" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
--with-lg-page=16
fixes issue on 64k page system. #10929 (comment)
I tested on 4k page system with the image built from this pr --with-lg-page=14
, it work okay.
According to jemalloc/jemalloc#467 (comment), looks we can set --with-lg-page=16
and the binary should work on both 4k and 64k page arm64 system.
@github-actions crossbow submit wheel-manylinux*arm64 |
Revision: 6608943 Submitted crossbow builds: ursacomputing/crossbow @ actions-779
|
@kszucs, is the 64k page size wheel available to download? I would like to test on both 64k and 4k arm systems. |
@cyb70289 yes, you can download them from the following links: |
Tested okay with both 4K and 64K page size Arm64 kernels. Thanks @kszucs ! |
@xhochy we should update the conda-forge recipe to set the |
I find apple m1 is using 16K page size. As apple ecosystem is different from linux, looks we can keep current EDIT: Ah, I see. We should append |
New pr #10963 to fix conda recipe |
No description provided.