Re: [PATCH 3/3] compaction accouting fix

From: Minchan Kim
Date: Fri Sep 02 2011 - 01:10:12 EST


On Thu, Sep 1, 2011 at 11:20 PM, Mel Gorman <mgorman@xxxxxxx> wrote:
> On Sun, Nov 13, 2011 at 01:37:43AM +0900, Minchan Kim wrote:
>> I saw the following accouting of compaction during test of the series.
>
> s/accouting/accounting/ both here and in the subject. A nicer name the
> patch would have been
>
> "mm: compaction: Only update compact_blocks_moved if compaction was successful"

Thanks, I will fix it at next version. :)

>
>>
>> compact_blocks_moved 251
>> compact_pages_moved 44
>>
>> It's very awkward to me although it's possbile because it means we try to compact 251 blocks
>> but it just migrated 44 pages. As further investigation, I found isolate_migratepages doesn't
>> isolate any pages but it returns ISOLATE_SUCCESS and then, it just increases compact_blocks_moved
>> but doesn't increased compact_pages_moved.
>>
>> This patch makes accouting of compaction works only in case of success of isolation.
>>
>
> compact_blocks_moved exists to indicate the rate compaction is
> scanning pageblocks. If compact_blocks_moved and compact_pages_moved
> are increasing at a similar rate for example, it could imply that
> compaction is doing a lot of scanning but is not necessarily useful
> work. It's not necessarily reflected by compact_fail because that
> counter is only updated for pages that were isolated from the LRU.

You seem to say "compact_pagemigrate_failed" not "compact_fail".

>
> I now recognise of course that "compact_blocks_moved" was an *awful*
> choice of name for this stat.

I hope changing stat names as follows unless it's too late(ie, it
doesn't break ABI with any tools)

compact_blocks_moved -> compact_blocks
compact_pages_moved -> compact_pgmigrated_success
compact_pagemigrate_failed -> compact_pgmigrated_fail
compact_stall -> compact_alloc_stall
compact_fail -> compact_alloc_fail
compact_success -> compact_alloc_success


>
> --
> Mel Gorman
> SUSE Labs
>



--
Kind regards,
Minchan Kim
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/