Skip to content

Commit 10224e9

Browse files
authored
Drogon: use mimalloc as memory allocator (#5656)
1 parent a44331f commit 10224e9

File tree

3 files changed

+26
-1
lines changed

3 files changed

+26
-1
lines changed

frameworks/C++/drogon/drogon-core.dockerfile

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ ENV RANLIB=gcc-ranlib-8
2626

2727
ENV IROOT=/install
2828
ENV DROGON_ROOT=$IROOT/drogon
29+
ENV MIMALLOC_ROOT=$IROOT/mimalloc
2930
ENV PG_ROOT=$IROOT/postgres-batch_mode_ubuntu
3031
ENV TEST_PATH=/drogon_benchmark/build
3132

@@ -53,6 +54,17 @@ WORKDIR $DROGON_ROOT/build
5354
RUN cmake -DCMAKE_BUILD_TYPE=release ..
5455
RUN make && make install
5556

57+
WORKDIR $IROOT
58+
59+
RUN git clone https://github.com/microsoft/mimalloc
60+
61+
WORKDIR $MIMALLOC_ROOT
62+
RUN git checkout v1.6.2 -b v1.6.2
63+
RUN mkdir -p out/release
64+
WORKDIR $MIMALLOC_ROOT/out/release
65+
RUN cmake ../..
66+
RUN make && make install
67+
5668
WORKDIR $TEST_PATH
5769

5870
RUN cmake -DCMAKE_BUILD_TYPE=release ..

frameworks/C++/drogon/drogon.dockerfile

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ ENV RANLIB=gcc-ranlib-8
2626

2727
ENV IROOT=/install
2828
ENV DROGON_ROOT=$IROOT/drogon
29+
ENV MIMALLOC_ROOT=$IROOT/mimalloc
2930
ENV PG_ROOT=$IROOT/postgres-batch_mode_ubuntu
3031
ENV TEST_PATH=/drogon_benchmark/build
3132

@@ -53,6 +54,17 @@ WORKDIR $DROGON_ROOT/build
5354
RUN cmake -DCMAKE_BUILD_TYPE=release ..
5455
RUN make && make install
5556

57+
WORKDIR $IROOT
58+
59+
RUN git clone https://github.com/microsoft/mimalloc
60+
61+
WORKDIR $MIMALLOC_ROOT
62+
RUN git checkout v1.6.2 -b v1.6.2
63+
RUN mkdir -p out/release
64+
WORKDIR $MIMALLOC_ROOT/out/release
65+
RUN cmake ../..
66+
RUN make && make install
67+
5668
WORKDIR $TEST_PATH
5769

5870
RUN cmake -DCMAKE_BUILD_TYPE=release ..

frameworks/C++/drogon/drogon_benchmark/CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,8 @@ endforeach()
3838

3939
add_executable(${PROJECT_NAME} ${BENCHMARK_SOURCES})
4040
find_package(Drogon REQUIRED)
41-
target_link_libraries(${PROJECT_NAME} PRIVATE Drogon::Drogon)
41+
find_package(mimalloc 1.0 REQUIRED)
42+
target_link_libraries(${PROJECT_NAME} PRIVATE Drogon::Drogon mimalloc-static)
4243

4344
target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
4445

0 commit comments

Comments
 (0)