From 4bac04f56eafd5be4b6e4f0451b7b19c6ca6f394 Mon Sep 17 00:00:00 2001 From: Ziyang Hu Date: Sun, 21 Aug 2022 14:19:38 +0800 Subject: [PATCH] add jemalloc back --- .gitmodules | 3 +++ cozorocks/build.rs | 3 ++- cozorocks/{ => deps}/build_deps.sh | 17 ++++++++++++++++- cozorocks/deps/jemalloc | 1 + 4 files changed, 22 insertions(+), 2 deletions(-) rename cozorocks/{ => deps}/build_deps.sh (71%) mode change 100644 => 100755 create mode 160000 cozorocks/deps/jemalloc diff --git a/.gitmodules b/.gitmodules index 02906c51..cad7672f 100644 --- a/.gitmodules +++ b/.gitmodules @@ -10,3 +10,6 @@ [submodule "cozorocks/deps/rocksdb"] path = cozorocks/deps/rocksdb url = https://github.com/facebook/rocksdb.git +[submodule "cozorocks/deps/jemalloc"] + path = cozorocks/deps/jemalloc + url = https://github.com/jemalloc/jemalloc.git diff --git a/cozorocks/build.rs b/cozorocks/build.rs index 4e121553..ba2c3838 100644 --- a/cozorocks/build.rs +++ b/cozorocks/build.rs @@ -20,9 +20,11 @@ fn main() { println!("cargo:rustc-link-search={}/deps/rocksdb/cmake_build/", manifest_dir); println!("cargo:rustc-link-search={}/deps/zstd/lib/", manifest_dir); println!("cargo:rustc-link-search={}/deps/lz4/lib/", manifest_dir); + println!("cargo:rustc-link-search={}/deps/jemalloc/lib/", manifest_dir); println!("cargo:rustc-link-lib=static=zstd"); println!("cargo:rustc-link-lib=static=rocksdb"); println!("cargo:rustc-link-lib=static=lz4"); + println!("cargo:rustc-link-lib=static=jemalloc"); // println!("cargo:rustc-link-lib=z"); // // if target.contains("msvc") { @@ -33,7 +35,6 @@ fn main() { // } // // println!("cargo:rustc-link-lib=snappy"); - // println!("cargo:rustc-link-lib=jemalloc"); println!("cargo:rerun-if-changed=src/bridge/mod.rs"); println!("cargo:rerun-if-changed=bridge/bridge.h"); println!("cargo:rerun-if-changed=bridge/common.h"); diff --git a/cozorocks/build_deps.sh b/cozorocks/deps/build_deps.sh old mode 100644 new mode 100755 similarity index 71% rename from cozorocks/build_deps.sh rename to cozorocks/deps/build_deps.sh index de9f6993..0caa2573 --- a/cozorocks/build_deps.sh +++ b/cozorocks/deps/build_deps.sh @@ -12,6 +12,7 @@ fi # gflags cd gflags +rm -fr cmake_build mkdir cmake_build && cd cmake_build cmake .. make -j 8 @@ -20,13 +21,23 @@ cd ../.. # lz4 cd lz4 +make clean make -j 8 cd .. # zstd cd zstd +make clean +make -j 8 +cd .. + +# jemalloc +cd jemalloc +make clean +./autogen.sh --with-jemalloc-prefix='' make -j 8 + cd .. # rocksdb @@ -42,5 +53,9 @@ cmake -DCMAKE_BUILD_TYPE=Release \ -Dlz4_LIBRARIES=${PWD}/../../lz4/lib \ -Dzstd_INCLUDE_DIRS=${PWD}/../../zstd/lib \ -Dzstd_LIBRARIES=${PWD}/../../zstd/lib \ + -DJeMalloc_INCLUDE_DIRS=${PWD}/../../jemalloc/include \ + -DJeMalloc_LIBRARIES=${PWD}/../../jemalloc/lib \ -DCMAKE_CXX_STANDARD=20 -DWITH_GFLAGS=1 -DWITH_LZ4=1 -DWITH_ZSTD=1 -DUSE_RTTI=1 -DWITH_TESTS=0 \ - -DWITH_BENCHMARK_TOOLS=0 -DWITH_CORE_TOOLS=0 -DWITH_TOOLS=0 .. \ No newline at end of file + -DWITH_JEMALLOC=1 -DWITH_BENCHMARK_TOOLS=0 -DWITH_CORE_TOOLS=0 -DWITH_TOOLS=0 .. +make -j 8 +cd .. \ No newline at end of file diff --git a/cozorocks/deps/jemalloc b/cozorocks/deps/jemalloc new file mode 160000 index 00000000..54eaed1d --- /dev/null +++ b/cozorocks/deps/jemalloc @@ -0,0 +1 @@ +Subproject commit 54eaed1d8b56b1aa528be3bdd1877e59c56fa90c