WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] [PATCH] use tlsf for xmalloc engine

To: "Xen-Devel (E-mail)" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] [PATCH] use tlsf for xmalloc engine
From: Dan Magenheimer <dan.magenheimer@xxxxxxxxxx>
Date: Wed, 15 Oct 2008 14:03:34 -0700 (PDT)
Cc: Diwaker Gupta <dgupta@xxxxxxxxxxx>, Isaku Yamahata <yamahata@xxxxxxxxxxxxx>, kurt.hackel@xxxxxxxxxx, Nitin Gupta <nitingupta910@xxxxxxxxx>
Delivery-date: Wed, 15 Oct 2008 14:04:26 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
This patch replaces the Xen xmalloc engine with tlsf, an allocation
engine that is both more space efficient and time-bounded, especially
for allocation sizes between PAGE_SIZE/2 and PAGE_SIZE.

The file xmalloc.c is deprecated but not yet deleted.  A simple
switch of a comment line in common/Makefile will change back
to the legacy xmalloc/xfree if needed for testing.

Code adapted from Nitin Gupta's tlsf-kmod, rev 229, found here:
http://code.google.com/p/compcache/source/browse/trunk/sub-projects/allocators/tlsf-kmod
with description and performance details here:
http://code.google.com/p/compcache/wiki/TLSFAllocator
(new Xen code uses 4K=PAGE_SIZE for the region size)

For detailed info on tlsf, see:
http://rtportal.upv.es/rtmalloc/

(NOTE to Isaku-san: There may be some subtle alignment or PAGE_SIZE
issues to get tlsf to work on ia64.  I have not tried it.
If problems, use an ifdef in common/Makefile to change to
the legacy xmalloc on ia64.)

Signed-off by: Dan Magenheimer <dan.magenheimer@xxxxxxxxxx>

Attachment: xmalloc_tlsf.patch
Description: Binary data

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
<Prev in Thread] Current Thread [Next in Thread>