Build with tcmalloc as system allocator
Implement new build flag and use it in Debian.
Testing
I don't have a system to benchmark and validate if performance improved, but at least I can validate that libtcmalloc.so.4
is being used.
# mariadb -e "SHOW GLOBAL VARIABLES LIKE 'version_malloc_library';"
+------------------------+----------+
| Variable_name | Value |
+------------------------+----------+
| version_malloc_library | tcmalloc |
+------------------------+----------+
# ldd /usr/sbin/mariadbd
linux-vdso.so.1 (0x00007ffe5c9c2000)
libpcre2-8.so.0 => /lib/x86_64-linux-gnu/libpcre2-8.so.0 (0x00007fb3e33b3000)
libcrypt.so.1 => /lib/x86_64-linux-gnu/libcrypt.so.1 (0x00007fb3e3377000)
liburing.so.2 => /lib/x86_64-linux-gnu/liburing.so.2 (0x00007fb3e336f000)
libaio.so.1t64 => /lib/x86_64-linux-gnu/libaio.so.1t64 (0x00007fb3e336a000)
libnuma.so.1 => /lib/x86_64-linux-gnu/libnuma.so.1 (0x00007fb3e335b000)
libsystemd.so.0 => /lib/x86_64-linux-gnu/libsystemd.so.0 (0x00007fb3e3240000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fb3e3220000)
libssl.so.3 => /lib/x86_64-linux-gnu/libssl.so.3 (0x00007fb3e3112000)
libcrypto.so.3 => /lib/x86_64-linux-gnu/libcrypto.so.3 (0x00007fb3e2ada000)
libtcmalloc.so.4 => /lib/x86_64-linux-gnu/libtcmalloc.so.4 (0x00007fb3e28de000)
libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fb3e2668000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fb3e2576000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fb3e2549000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fb3e2353000)
/lib64/ld-linux-x86-64.so.2 (0x00007fb3e583b000)
libcap.so.2 => /lib/x86_64-linux-gnu/libcap.so.2 (0x00007fb3e2347000)
libzstd.so.1 => /lib/x86_64-linux-gnu/libzstd.so.1 (0x00007fb3e227d000)
libunwind.so.8 => /lib/x86_64-linux-gnu/libunwind.so.8 (0x00007fb3e225e000)
liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007fb3e222d000)