[pve-devel] [PATCH] use jemalloc as memory allocator

Alexandre DERUMIER aderumier at odiso.com
Fri Jun 19 08:29:54 CEST 2015


>>can we directly link the library instead of using LD_PRELOAD? 

I think yes, but I really don't known how to patch qemu.

maybe something like tcmalloc qemu patch

+  if compile_prog "" "-ltcmalloc" ; then
+    LIBS="-ltcmalloc $LIBS"
+  else
+    feature_not_found "tcmalloc" "install gperftools devel"
+  fi


jemmaloc doc :
https://github.com/jemalloc/jemalloc/wiki/Getting-Started

cc app.c -o app -L${JEMALLOC_PATH}/lib -Wl,-rpath,${JEMALLOC_PATH}/lib -ljemalloc



maybe
LIBS="-ljemalloc $LIBS"

should be enough?

 

----- Mail original -----
De: "dietmar" <dietmar at proxmox.com>
À: "aderumier" <aderumier at odiso.com>, "pve-devel" <pve-devel at pve.proxmox.com>
Envoyé: Jeudi 18 Juin 2015 14:14:47
Objet: Re: [pve-devel] [PATCH] use jemalloc as memory allocator

can we directly link the library instead of using LD_PRELOAD? 

On 06/17/2015 09:31 AM, Alexandre Derumier wrote: 
> Signed-off-by: Alexandre Derumier <aderumier at odiso.com> 
> --- 
> PVE/QemuServer.pm | 1 + 
> 1 file changed, 1 insertion(+) 
> 
> diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm 
> index ab9ac74..455c473 100644 
> --- a/PVE/QemuServer.pm 
> +++ b/PVE/QemuServer.pm 
> @@ -4153,6 +4153,7 @@ sub vm_start { 
> 
> # set environment variable useful inside network script 
> $ENV{PVE_MIGRATED_FROM} = $migratedfrom if $migratedfrom; 
> + $ENV{LD_PRELOAD} = "/usr/lib/x86_64-linux-gnu/libjemalloc.so.1"; 
> 
> my ($cmd, $vollist, $spice_port) = config_to_command($storecfg, $vmid, $conf, $defaults, $forcemachine); 
> 



More information about the pve-devel mailing list