+From patchwork Fri Jun 19 10:56:58 2015
+Content-Type: text/plain; charset="utf-8"
+MIME-Version: 1.0
+Content-Transfer-Encoding: 7bit
+Subject: configure: Add support for jemalloc
+From: Alexandre DERUMIER <aderumier@odiso.com>
+X-Patchwork-Id: 486671
+Message-Id: <1434711418-20429-1-git-send-email-aderumier@odiso.com>
+To: qemu-devel@nongnu.org
+Cc: Alexandre Derumier <aderumier@odiso.com>
+Date: Fri, 19 Jun 2015 12:56:58 +0200
+
+This adds "--enable-jemalloc" and "--disable-jemalloc" to allow linking
+to jemalloc memory allocator.
+
+We have already tcmalloc support,
+but it seem to not working well with a lot of iothreads/disks.
+
+The main problem is that tcmalloc use a shared thread cache of 16MB
+by default.
+With more threads, this cache is shared, and some bad garbage collections
+can occur if the cache is too low.
+
+It's possible to tcmalloc cache increase it with a env var:
+TCMALLOC_MAX_TOTAL_THREAD_CACHE_BYTES=256MB
+
+With default 16MB, performances are really bad with more than 2 disks.
+Increasing to 256MB, it's helping but still have problem with 16 disks/iothreads.
+
+Jemalloc don't have performance problem with default configuration.
+
+Here the benchmark results in iops of 1 qemu vm randread 4K iodepth=32,
+with rbd block backend (librbd is doing a lot of memory allocation),
+1 iothread by disk
+
+glibc malloc
+------------
+
+1 disk 29052
+2 disks 55878
+4 disks 127899
+8 disks 240566
+15 disks 269976
+
+jemalloc
+--------
+
+1 disk 41278
+2 disks 75781
+4 disks 195351
+8 disks 294241
+15 disks 298199
+
+tcmalloc 2.2.1 default 16M cache
+--------------------------------
+
+1 disk 37911
+2 disks 67698
+4 disks 41076
+8 disks 43312
+15 disks 37569
+
+tcmalloc : 256M cache
+---------------------------
+
+1 disk 33914
+2 disks 58839
+4 disks 148205
+8 disks 213298
+15 disks 218383
+
+Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
+Reviewed-by: Fam Zheng <famz@redhat.com>
+---
+ configure | 29 +++++++++++++++++++++++++++++
+ 1 file changed, 29 insertions(+)
+
+diff --git a/configure b/configure
+index 222694f..2fe1e05 100755