[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] A tale of three memory allocators


  • To: <xen-devel@xxxxxxxxxxxxxxxxxxxxx>
  • From: "Magenheimer, Dan (HP Labs Fort Collins)" <dan.magenheimer@xxxxxx>
  • Date: Thu, 17 Mar 2005 15:08:55 -0800
  • Delivery-date: Thu, 17 Mar 2005 23:38:41 +0000
  • List-id: List for Xen developers <xen-devel.lists.sourceforge.net>
  • Thread-index: AcUrRksLbteuaumMSF6n8mcDfe9azQ==
  • Thread-topic: A tale of three memory allocators

This should be a good meaty developers discussion, full
of opinions. I'm far from an expert in this area and hereby
solicit help.

Once upon a time there was the Xen simplified memory allocator,
written by Keir.  When Dan (the ia64 man) looked at this allocator
for Xen/ia64, he was very displeased.  "Ia64 has a much more
complex physical memory architecture than x86," he said.
"For example, physical memory space is often not contiguous,
and what about the cool NUMA stuff that is in Linux 2.6?"

So Dan took the Linux memory allocation code, hacked on
it mightily, adding numerous ugly ifdefs and used the result
in place of Keir's code for Xen/ia64.  The result works,
but is truly an abomination.

Some time later, Rusty looked at Keir's code and too was
displeased.  He rewrote it to be much cleaner and more
simplified, much to Keir's delight.  And this code was
placed in common, still to be ignored by Xen/ia64.

Now Arun gazed upon the ugly Xen/ia64 memory allocator full
of ifdefs and was much dismayed.  He preferred Rusty's code
and, even better, sharing more code with Xen/x86, so he busily
generated a patch for Xen/ia64 to use the common code.

Said patch is still pending because coincidentally Greg
is currently looking at porting Xen/ia64 to one of those newfangled
ia64 NUMA machines.  "I would like to turn on CONFIG_NUMA.
CONFIG_DISCONTIGMEM, and CONFIG_VIRTUAL_MEM_MAP," said Greg.

What should Dan (the ia64 man) do???  How complex is too
complex?  How ugly is too ugly?

This concludes (for now) the tale of three memory allocators...
(please respond/discuss :-)


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_ide95&alloc_id396&op=click
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.