On Fri, 26 Jan 2007, Mel Gorman wrote: > I haven't thought about it much so I probably am missing something. The major > difference I see is when only one zone is present. In that case, a number of > loops presumably get optimised away and the behavior is very different > (presumably better although you point out no figures exist to prove it). Where > there are two or more zones, the code paths should be similar whether there > are 2, 3 or 4 zones present.
The balancing of allocations between zones is becoming unnecessary. Also in a NUMA system we then have zone == node which allows for a series of simplifications. > As the common platforms will always have more than one zone, it'll be heavily > tested and I'm guessing that distros are always going to have to ship kernels > with ZONE_DMA for the devices that require it. The only platform I see that > may have problems at the moment is IA64 which looks like the only platform > that can have one and only one zone. I am guessing that Christoph will catch > problems here fairly quickly although a non-optional ZONE_MOVABLE would throw > a spanner into the works somewhat. There are 6 platforms that have only one zone. These are not major platforms. In order for major platforms to go to a single zone in general we would have to implement a generic mechanism to do an allocation where one can specify the memory boundaries. Many DMA engines have different limitations from what ZONE_DMA and ZONE_DMA32 can provide. If such a scheme would be implemented then those would be able to utilize memory better and the amount of bounce buffers would be reduced. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/