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: 2 additions & 2 deletions .github/workflows/platform.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ jobs:
needs: build-base-with-docker
strategy:
matrix:
allocator: [ff, fg, gd, hd, hm, iso, je, lf, lp, lt, mesh, mng, mi, mi2, nomesh, pa, rp, scudo, sm, sn, sg, tbb, tc, yal, tcg]
allocator: [ff, fg, gd, hd, hm, iso, je, lf, lp, lt, mesh, mng, mi, mi2, nomesh, pa, rp, scudo, s, sm, sn, sg, tbb, tc, yal, tcg]
testsuite: [allt]
# Used to provide a platform-specific predicate
predicate: [true, false]
Expand Down Expand Up @@ -97,4 +97,4 @@ jobs:
allocator=${{ matrix.allocator }}
benchs=${{ (contains('lt,lf,gd', matrix.allocator) && 'cfrac espresso barnes larson-sized mstress rptest gs lua') || ('fg' == matrix.allocator && 'cfrac espresso barnes gs lua') || 'allt' }}
repeats=1
cache-from: type=gha,scope=buildkit_${{ inputs.platform }}
cache-from: type=gha,scope=buildkit_${{ inputs.platform }}
4 changes: 3 additions & 1 deletion bench.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
# Allocators and tests
# --------------------------------------------------------------------

readonly alloc_all="sys dh ff fg gd hd hm hml iso je lf lp lt mi mi-sec mi2 mi2-sec mng mesh nomesh pa rp sc scudo sg sm sn sn-sec tbb tc tcg mi-dbg mi2-dbg xmi xsmi xmi-dbg yal"
readonly alloc_all="sys dh ff fg gd hd hm hml iso je lf lp lt mi mi-sec mi2 mi2-sec mng mesh nomesh pa rp sc scudo sg sm sn sn-sec s tbb tc tcg mi-dbg mi2-dbg xmi xsmi xmi-dbg yal"
readonly alloc_secure="dh ff gd hm hml iso mi-sec mi2-sec mng pa scudo sg sn-sec sg"
alloc_run="" # allocators to run (expanded by command line options)
alloc_installed="sys" # later expanded to include all installed allocators
Expand Down Expand Up @@ -120,6 +120,7 @@ alloc_lib_add "scudo" "$localdevdir/scudo/compiler-rt/lib/scudo/standalone/libs
alloc_lib_add "sg" "$localdevdir/sg/libSlimGuard.so"
alloc_lib_add "sm" "$localdevdir/sm/release/lib/libsupermalloc$extso"
alloc_lib_add "sn" "$localdevdir/sn/release/libsnmallocshim$extso"
alloc_lib_add "s" "$localdevdir/s/target/release/libsmalloc_ffi$extso"
alloc_lib_add "sn-sec" "$localdevdir/sn/release/libsnmallocshim-checks$extso"
alloc_lib_add "tbb" "$lib_tbb"
alloc_lib_add "tc" "$localdevdir/tc/.libs/libtcmalloc_minimal$extso"
Expand Down Expand Up @@ -413,6 +414,7 @@ while : ; do
echo " sm use supermalloc"
echo " sn use snmalloc"
echo " sn-sec use secure version of snmalloc"
echo " s use smalloc"
echo " sys use system malloc ($libc)"
echo " tbb use Intel TBB malloc"
echo " tc use tcmalloc (from gperftools)"
Expand Down
12 changes: 12 additions & 0 deletions build-bench-env.sh
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ readonly version_scudo=main
readonly version_sg=master # ~unmaintained since 2021
readonly version_sm=master # ~unmaintained since 2017
readonly version_sn=0.7.3
readonly version_s=v7.6.0
readonly version_tbb=v2021.9.0
readonly version_tc=gperftools-2.18
readonly version_tcg=98fd24303c7b5ef5e30da625f11fb623a5e038b6 # 2025-07-18
Expand Down Expand Up @@ -100,6 +101,7 @@ setup_scudo=0
setup_sg=0
setup_sm=0
setup_sn=0
setup_s=0
setup_tbb=0
setup_tc=0
setup_tcg=0
Expand Down Expand Up @@ -143,6 +145,7 @@ while : ; do
setup_mi2=$flag_arg
setup_pa=$flag_arg
setup_sn=$flag_arg
setup_s=$flag_arg
setup_sg=$flag_arg
setup_tbb=$flag_arg
setup_tc=$flag_arg
Expand Down Expand Up @@ -232,6 +235,8 @@ while : ; do
setup_sm=$flag_arg;;
sn)
setup_sn=$flag_arg;;
s)
setup_s=$flag_arg;;
tbb)
setup_tbb=$flag_arg;;
tc)
Expand Down Expand Up @@ -276,6 +281,7 @@ while : ; do
echo " sg setup slimguard ($version_sg)"
echo " sm setup supermalloc ($version_sm)"
echo " sn setup snmalloc ($version_sn)"
echo " s setup smalloc ($version_s)"
echo " tbb setup Intel TBB malloc ($version_tbb)"
echo " tc setup tcmalloc ($version_tc)"
echo " tcg setup Google's tcmalloc ($version_tcg)"
Expand Down Expand Up @@ -665,6 +671,12 @@ if test "$setup_sn" = "1"; then
popd
fi

if test "$setup_s" = "1"; then
checkout s $version_s https://github.com/zooko/smalloc
cargo build --release --package smalloc-ffi
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You might want to add cargo as a dependency in the install packages phase.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, I realised that, but I was nudging github from my phone. I'll fix today.

popd
fi

if test "$setup_sm" = "1"; then
checkout sm $version_sm https://github.com/kuszmaul/SuperMalloc
rm -rf ./doc ./paper "./short-talk"
Expand Down
Loading