2010-01-23 07:31:45

by Shivdas Gujare

[permalink] [raw]
Subject: measureing kernel & application boottime's

Hi Tim/all,

I am trying to measure kernel boottime along with measuring
application process start time on ARM V6 platform.
Because of few reasons, I have to stick to kernel 2.6.25(can't upgrade
it to latest).

While measuring application process times, I use "cat /proc/uptime"
when I start a process (I am not sure, if this is the best way to
measure time , please suggest if any).
For kernel, I use CONFIG_PRINTK_TIME macro. my application loads a
kernel module.
So, my question is how "/proc/uptime" relates to PRINTK_TIME timestamps?

I see, "uptime" uses
do_posix_clock_monotonic_gettime(&uptime);
monotonic_to_bootbased(&uptime);

while PRINTK_TIME does only, "cpu_clock(printk_cpu); "
but I am not able to understand practical difference between above two logics.

So, how do I correlate the time information from kernel dmesg , when
kernel module is loaded by my application(i.e. uptime measures just
before starting an application which loads kernel module).

Also, Is there any best method to measure application start time
(except bootchart, can't use it)?
Thanks for all your help.


Thanks and Regards,
Shivdas Gujare


2010-01-26 07:44:18

by Linus Walleij

[permalink] [raw]
Subject: Re: measureing kernel & application boottime's

2010/1/23 Shivdas Gujare <[email protected]>:

> I am trying to measure kernel boottime along with measuring
> application process start time on ARM V6 platform.
> Because of few reasons, I have to stick to kernel 2.6.25(can't upgrade
> it to latest).
(...)
> Also, Is there any best method to measure application start time
> (except bootchart, can't use it)?

Upgrade anyway. Seriously. It's for your own good. The best way to get
a bootchart without bootchart is to backport bootchart to kernel 2.6.25
and then the best strategy to do that is likely to upgrade to kernel 2.6.32
and rename it 2.6.25 and say it's a backport of the entire 2.6.32 to 2.6.25 :-P

Yours,
Linus Walleij