Re: [PATCH 07/11] Memory compaction core

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

 



On Wed, Mar 24, 2010 at 10:53 AM, KAMEZAWA Hiroyuki
<kamezawa.hiroyu@xxxxxxxxxxxxxx> wrote:
> On Wed, 24 Mar 2010 10:47:41 +0900
> Minchan Kim <minchan.kim@xxxxxxxxx> wrote:
>
>> On Wed, Mar 24, 2010 at 10:03 AM, KAMEZAWA Hiroyuki
>> <kamezawa.hiroyu@xxxxxxxxxxxxxx> wrote:
>> > On Tue, 23 Mar 2010 12:25:42 +0000
>> > Mel Gorman <mel@xxxxxxxxx> wrote:
>> >
>> >> This patch is the core of a mechanism which compacts memory in a zone by
>> >> relocating movable pages towards the end of the zone.
>> >>
>> >> A single compaction run involves a migration scanner and a free scanner.
>> >> Both scanners operate on pageblock-sized areas in the zone. The migration
>> >> scanner starts at the bottom of the zone and searches for all movable pages
>> >> within each area, isolating them onto a private list called migratelist.
>> >> The free scanner starts at the top of the zone and searches for suitable
>> >> areas and consumes the free pages within making them available for the
>> >> migration scanner. The pages isolated for migration are then migrated to
>> >> the newly isolated free pages.
>> >>
>> >> Signed-off-by: Mel Gorman <mel@xxxxxxxxx>
>> >> Acked-by: Rik van Riel <riel@xxxxxxxxxx>
>> >> Reviewed-by: Minchan Kim <minchan.kim@xxxxxxxxx>
>> >
>> > I think lru_add_drain() or lru_add_drain_all() should be called somewhere
>> > when we do __isolate_lru_page(). But it's (_all is) slow....
>> >
>>
>> migrate_prep does it.
>>
> Thanks.
>
> Hmm...then, lru_add_drain_all() is called at each (32page migrate) itelation.
> Isn't it too slow to be called in such frequency ?

I agree. We can move migrate_prep in compact_zone.

>
> Thanks,
> -Kame
>
>
>
>
>



-- 
Kind regards,
Minchan Kim

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxxx  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]