FWIW, my own testing showed recently that tcmalloc provides a small but measurable performance improvement over the standard allocator. jemalloc was slightly worse. The difference between the three is sufficiently small that I don't think there is a compelling reason to use a non-standard allocator, unless you have a very specific workload that measurably and repeatably benefits from one over the others. On Wed, May 8, 2024 at 12:44 PM Simon Avery via discuss <discuss@lists.mariadb.org> wrote:
Hello
I’m looking to test tcmalloc for use on our ~80 Maria 10.11.[6-7] servers, running either Rocky 8/9 or Debian 12.
A few years ago we moved to using jemalloc which helped resolve or reduce many of the memory leaks on these servers from using the distro’s default malloc. We still have a couple of machines where Maria eventually uses all the memory until oomkiller steps in – although we’ve largely mitigated that by adopting weekly restarts for them.
Thanks to Sergei Golubchik for his most useful post here on the 5th on the subject of memory leaks, which has got us looking at tcmalloc and also raises the question of Transparent Huge Pages. Sergei cites several reliable sources recommending turning them off for MariaDb and similar databases.
Now – my question;
tcmalloc’s documentation on tuning at https://google.github.io/tcmalloc/tuning.html
says “TCMalloc heavily relies on Transparent Huge Pages (THP).” And explains it’s built and tested with THPs enabled and seems to strongly recommend leaving them on.
That contradicts the above articles, leaving me confused about which path is best practice.
It seems that THP’s should be on as advised by tcmalloc, but also off when running MariaDb.
The true answer possibly depends on which has the highest priority in terms of database-specific performance and the ability to manage the memory tightly.
What are others’ views, please? I’m searching in particular for best practice and real world experiences with tcmalloc. Also – if it’s unlikely to improve upon jemalloc.
Simon Avery
Linux Sysadmin: ATASS Sports
Oxygen House | Grenadier Road, Exeter Business Park | EX1 3LH
t: 01392 440 400
e: simon.avery@atass-sports.co.uk
www.atass-sports.co.uk
Follow us on X: @atassSports
NOTICE This email and any attachments confidential and intended solely for the use of the individual to whom it is addressed. If you are not the intended recipient be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. Please notify the sender immediately. ATASS Ltd is incorporated in England and Wales with company number 04807405. See our website for further details and our privacy policy
_______________________________________________ discuss mailing list -- discuss@lists.mariadb.org To unsubscribe send an email to discuss-leave@lists.mariadb.org