Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions cpp/velox/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,10 @@ elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL arm64)
set(SYSTEM_LIB_MULTIARCH_PATH
"/usr/lib"
CACHE PATH "System Lib MultiArch dir")
elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL ppc64le)
set(SYSTEM_LIB_MULTIARCH_PATH
"/usr/lib"
CACHE PATH "System Lib MultiArch dir")
else()
message(FATAL_ERROR "Unsupported processor type: ${CMAKE_SYSTEM_PROCESSOR}")
endif()
Expand Down
6 changes: 6 additions & 0 deletions dev/build-helper-functions.sh
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@ function get_cxx_flags {
CPU_ARCH="sse"
elif [ "$MACHINE" = "aarch64" ]; then
CPU_ARCH="aarch64"
elif [ "$MACHINE" = "ppc64le" ]; then
CPU_ARCH="ppc64le"
fi
fi
fi
Expand Down Expand Up @@ -121,6 +123,10 @@ function get_cxx_flags {
echo -n "-march=armv8-a+crc+crypto -std=c++20 $ADDITIONAL_FLAGS"
fi
;;

"ppc64le")
echo -n "-mcpu=power10 -std=c++20 $ADDITIONAL_FLAGS"
;;
*)
echo -n "Architecture not supported!"
esac
Expand Down
2 changes: 1 addition & 1 deletion dev/build-thirdparty.sh
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ function process_setup_ubuntu_2204 {
function process_setup_centos_9 {
cp /lib64/{libre2.so.9,libdouble-conversion.so.3,libevent-2.1.so.7,libdwarf.so.0,libicudata.so.67,libicui18n.so.67,libicuuc.so.67,libsodium.so.23} $THIRDPARTY_LIB/
cp /usr/local/lib/{libboost_context.so.1.84.0,libboost_filesystem.so.1.84.0,libboost_program_options.so.1.84.0,libboost_regex.so.1.84.0,libboost_system.so.1.84.0,libboost_thread.so.1.84.0,libboost_atomic.so.1.84.0} $THIRDPARTY_LIB/
cp /usr/local/lib64/{libgflags.so.2.2,libglog.so.1} $THIRDPARTY_LIB/
cp /usr/local/lib64/{libgflags.so.2.2,libglog.so.1,libgeos.so.3.10.7} $THIRDPARTY_LIB/
}

function process_setup_centos_8 {
Expand Down
5 changes: 3 additions & 2 deletions dev/docker/Dockerfile.centos8-dynamic-build
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,9 @@ RUN set -ex; \
./install-resources.sh 3.5; \
./install-resources.sh 3.5-scala2.13; \
./install-resources.sh 4.0; \
if [ "$(uname -m)" = "aarch64" ]; then \
export CPU_TARGET="aarch64"; \
ARCH=$(uname -m); \
if [[ "$ARCH" == "aarch64" || "$ARCH" == "ppc64le" ]]; then \
export CPU_TARGET="$ARCH"; \
fi; \
cd /opt/gluten; \
source /opt/rh/gcc-toolset-11/enable; \
Expand Down
5 changes: 3 additions & 2 deletions dev/docker/Dockerfile.centos9-dynamic-build
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,9 @@ RUN set -ex; \
./install-resources.sh 3.5; \
./install-resources.sh 3.5-scala2.13; \
./install-resources.sh 4.0; \
if [ "$(uname -m)" = "aarch64" ]; then \
export CPU_TARGET="aarch64"; \
ARCH=$(uname -m); \
if [[ "$ARCH" == "aarch64" || "$ARCH" == "ppc64le" ]]; then \
export CPU_TARGET="$ARCH"; \
fi; \
cd /opt/gluten; \
source /opt/rh/gcc-toolset-12/enable; \
Expand Down
2 changes: 2 additions & 0 deletions dev/package.sh
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,8 @@ cd "$GLUTEN_DIR"

if [ "$ARCH" = "aarch64" ]; then
export CPU_TARGET="aarch64"
elif [ "$ARCH" = "ppc64le" ]; then
export CPU_TARGET="ppc64le"
fi

# build gluten with velox backend, prompt always respond y
Expand Down
2 changes: 1 addition & 1 deletion ep/build-velox/src/build-velox.sh
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ function compile {
export Arrow_SOURCE=AUTO
if [ $ARCH == 'x86_64' ]; then
make $COMPILE_TYPE $NUM_THREADS_OPTS EXTRA_CMAKE_FLAGS="${COMPILE_OPTION}"
elif [[ "$ARCH" == 'arm64' || "$ARCH" == 'aarch64' ]]; then
elif [[ "$ARCH" == 'arm64' || "$ARCH" == 'aarch64' || "$ARCH" == "ppc64le" ]]; then
CPU_TARGET=$ARCH make $COMPILE_TYPE $NUM_THREADS_OPTS EXTRA_CMAKE_FLAGS="${COMPILE_OPTION}"
else
echo "Unsupported arch: $ARCH"
Expand Down
3 changes: 2 additions & 1 deletion ep/build-velox/src/get-velox.sh
Original file line number Diff line number Diff line change
Expand Up @@ -197,8 +197,9 @@ function setup_linux {
elif [[ "$LINUX_DISTRIBUTION" == "rhel" ]]; then
case "$LINUX_VERSION_ID" in
9.6) ;;
9.7) ;;
*)
echo "Unsupported openEuler version: $LINUX_VERSION_ID"
echo "Unsupported rhel version: $LINUX_VERSION_ID"
exit 1
;;
esac
Expand Down
23 changes: 23 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2234,5 +2234,28 @@
<os.full.name>${platform}_${arch}</os.full.name>
</properties>
</profile>
<profile>
<id>linux-ppc64le</id>
<activation>
<os>
<family>Linux</family>
<arch>ppc64le</arch>
</os>
</activation>
<properties>
<platform>linux</platform>
<arch>ppc64le</arch>
<os.full.name>${platform}_${arch}</os.full.name>
</properties>
</profile>
<profile>
<id>disaggregated-shuffle</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<modules>
<module>gluten-disaggregated-shuffle</module>
</modules>
</profile>
</profiles>
</project>
Loading