Skip to content

Commit

Permalink
apacheGH-44342: [C++] Disable jemalloc by default on ARM
Browse files Browse the repository at this point in the history
jemalloc may have a problem on ARM.
See also: jemalloc/jemalloc#467
  • Loading branch information
kou committed Oct 10, 2024
1 parent 33a4d67 commit 6b2674a
Showing 1 changed file with 5 additions and 1 deletion.
6 changes: 5 additions & 1 deletion cpp/cmake_modules/DefineOptions.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -364,14 +364,18 @@ takes precedence over ccache if a storage backend is configured" ON)

set(ARROW_JEMALLOC_DESCRIPTION "Build the Arrow jemalloc-based allocator")
if(WIN32
OR "${CMAKE_SYSTEM_NAME}" STREQUAL "FreeBSD"
OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD"
OR CMAKE_SYSTEM_PROCESSOR MATCHES "aarch|ARM|arm"
OR NOT ARROW_ENABLE_THREADING)
# jemalloc is not supported on Windows.
#
# jemalloc is the default malloc implementation on FreeBSD and can't
# be built with --disable-libdl on FreeBSD. Because lazy-lock feature
# is required on FreeBSD. Lazy-lock feature requires libdl.
#
# jemalloc may have a problem on ARM.
# See also: https://github.com/jemalloc/jemalloc/issues/467
#
# jemalloc requires thread.
define_option(ARROW_JEMALLOC ${ARROW_JEMALLOC_DESCRIPTION} OFF)
else()
Expand Down

0 comments on commit 6b2674a

Please sign in to comment.