linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Ying Han <yinghan@google.com>
To: Mel Gorman <mel@csn.ul.ie>
Cc: linux-mm@kvack.org, Rik van Riel <riel@redhat.com>,
	Wu Fengguang <fengguang.wu@intel.com>
Subject: Re: Question of backporting the trace-vmscan-postprocess.pl
Date: Tue, 31 Aug 2010 14:47:24 -0700	[thread overview]
Message-ID: <AANLkTi=5RuVtZ=25qy4SW195h3nKcPgJmBVGRY7SMkkB@mail.gmail.com> (raw)
In-Reply-To: <20100831075323.GA13677@csn.ul.ie>

On Tue, Aug 31, 2010 at 12:53 AM, Mel Gorman <mel@csn.ul.ie> wrote:
> On Mon, Aug 30, 2010 at 04:10:05PM -0700, Ying Han wrote:
>> Hi Mel:
>>
>> I've been looking into the vmscan:tracing you added for 2.6.36_rc1. I
>> also backported into 2.6.34 which is the kernel we are currently
>> working on. However, I seems can not get it fully functional. Are you
>> aware of any changes on the kernel tracing ABI which could cause that
>> ?
>>
>
> Nothing springs to mind but ...
>
>> Here is how I reproduce it and I also attached the
>> postprocess/trace-vmscan-postprocess.pl I patched.
>>
>> # mount -t debugfs nodev /sys/kernel/debug/
>>
>> # for i in `find /sys/kernel/debug/tracing/events -name "enable" |
>> grep mm_`; do echo 1 > $i; done
>>
>> run a process with pid==30196
>>
>> # echo 'common_pid == 30196' > /sys/kernel/debug/tracing/events/vmscan/filter
>>
>> # cat /sys/kernel/debug/tracing/events/vmscan/filter
>> common_pid == 30196
>>
>> # ./trace-vmscan-postprocess.pl < /sys/kernel/debug/tracing/trace_pipe
>> WARNING: Event vmscan/mm_vmscan_lru_shrink_inactive format string not found
>> WARNING: Event vmscan/mm_vmscan_lru_shrink_active format string not found
>> ^CSIGINT received, report pending. Hit ctrl-c again to exit
>>
>
> I didn't test the script for live processing. I was logging
> /sys/kernel/debug/tracing/trace_pipe to a file and post-processing it
> after a test. I suggest you do the same and check if any events for pid
> 30196 were recorded.

Ok. I tried the logging and it works better this time. Both pagealloc
and vmscan give me some data
with the filtering works ok. thanks for your replay :)

--Ying

>> Reclaim latencies expressed as order-latency_in_ms
>>
>> Process          Direct     Wokeup      Pages      Pages    Pages
>> Time
>> details           Rclms     Kswapd    Scanned    Sync-IO ASync-IO
>> Stalled
>>
>> Kswapd           Kswapd      Order      Pages      Pages    Pages
>> Instance        Wakeups  Re-wakeup    Scanned    Sync-IO ASync-IO
>>
>> Summary
>> Direct reclaims:
>> Direct reclaim pages scanned:
>> Direct reclaim write file sync I/O:
>> Direct reclaim write anon sync I/O:
>> Direct reclaim write file async I/O:
>> Direct reclaim write anon async I/O:
>> Wake kswapd requests:
>> Time stalled direct reclaim:          0.00 seconds
>>
>> Kswapd wakeups:
>> Kswapd pages scanned:
>> Kswapd reclaim write file sync I/O:
>> Kswapd reclaim write anon sync I/O:
>> Kswapd reclaim write file async I/O:
>> Kswapd reclaim write anon async I/O:
>> Time kswapd awake:                    0.00 seconds
>>
>> So it didn't give me any output. However, if I turn off the filter for
>> vmscan, it did give me some data but with random processes on the
>> system.
>>
>
> Did one of them processes include 30196 that you were filtering for?
>
>> The same set of tests works for trace-pagealloc-postprocess.pl though
>>
>> # cat /sys/kernel/debug/tracing/events/kmem/filter
>> common_pid == 30196
>>
>> # ./trace-pagealloc-postprocess.pl < /sys/kernel/debug/tracing/trace_pipe
>>
>> Process           Pages      Pages      Pages    Pages       PCPU
>> PCPU     PCPU   Fragment Fragment  MigType Fragment Fragment  Unknown
>> details          allocd     allocd      freed    freed      pages
>> drains  refills   Fallback  Causing  Changed   Severe Moderate
>>                         under lock     direct  pagevec      drain
>> -30196             2871       2917          0        0          0
>>   0      439         32       32        0       32        0        0
>> ddtest-30196       4560       4328          0        0          0
>>   0      639         26       26        1       25        1        0
>>
>
> Maybe there were page allocator events and not vmscan events?
>
> --
> Mel Gorman
> Part-time Phd Student                          Linux Technology Center
> University of Limerick                         IBM Dublin Software Lab
>

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

      reply	other threads:[~2010-08-31 21:47 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-30 23:10 Ying Han
2010-08-31  7:53 ` Mel Gorman
2010-08-31 21:47   ` Ying Han [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='AANLkTi=5RuVtZ=25qy4SW195h3nKcPgJmBVGRY7SMkkB@mail.gmail.com' \
    --to=yinghan@google.com \
    --cc=fengguang.wu@intel.com \
    --cc=linux-mm@kvack.org \
    --cc=mel@csn.ul.ie \
    --cc=riel@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox