linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: caglarakyuz@gmail.com (Caglar Akyuz)
To: linux-arm-kernel@lists.infradead.org
Subject: Kernel Start-up Time
Date: Tue, 19 Jan 2010 10:36:21 +0200	[thread overview]
Message-ID: <201001191036.21594.caglarakyuz@gmail.com> (raw)
In-Reply-To: <1263829143.3207.34.camel@linux-1lbu>

On Monday 18 January 2010 05:39:03 pm Steve Chen wrote:
> On Mon, 2010-01-18 at 10:54 +0200, Caglar Akyuz wrote:
> > On Monday 18 January 2010 10:39:27 am Tonyliu wrote:
> > > Caglar Akyuz wrote:
> > > > Hello,
> > > >
> > > > While measuring Linux start-up time, I see that printing version
> > > > string in "start_kernel" takes ~1.3 seconds. I guess this is the time
> > > > between from "bootloader jumping to uImage" and "printing version
> > > > string in generic start_kernel code". Relevant part of my boot log is
> > > > attached.
> > > >
> > > > My question: is it normal this 1.3 sec init time? My system is 297
> > > > MHZ arm926ej-s with a 162MHZ DDR2 memory.
> > >
> > > It depends on where you start to measure it?
> > >     Starting from when power is turned on.
> > >     Starting from when the first instruction executes.
> > >     Start from the bootloader tries to load the kernel image.
> > > ...
> >
> > That number is relative, it is the time passing from u-boot jumping to
> > kernel and kernel starting.
> >
> > > I think this type of mearsurement  makes no much sense to you, since
> > > normally
> > > people want to know
> > >    When the kernel loads userspace or
> > >     When the first app starts to run.
> >
> > First application starts in ~4 second. This time consists of:
> >
> > 1) ~1 sec for application start.
> > 2) ~1 sec for userspace init, mouting filesys, etc.
> > 3) ~1 sec for kernel init for drivers and machine specific code
> > 4) ~1 sec for the aforementioned delay.
> >
> > > These are more meaningful for specific product.
> >
> > It is number 4 that I'm trying to understand. I think it has the highest
> > chance to contribute to end goal. But if it is as expected, then no room
> > for optimization there.
> 
> Well, "no room for optimization" is a pretty strong statement.  Last
> year Monta Vista demo the 1 second boot.
> 

What I'm looking for is whether early arm boot sequence is 1.3 secs or not. I 
may be wrong but my guess is before jumping to generic "start_kernel" function 
following files are executed:

* arch/arm/kernel/head.S
* arch/arm/kernel/head-common.S
* arch/arm/mm/proc-arm926.S

And these 3 files cost me 1.3 seconds. Initializing page tables, caches etc 
costing that much doesn't seem optimal to me. This is what I'm trying to find 
out.

> http://mvista.com/press_release_detail.php?fid=news/2009/Ultra-fast-boot.ht
> ml&d=
> 

This was an excellent paper and I stole all relevant parts from that paper. In 
addition to that I followed Tim Bird's excellent articles, Blackfin's articles 
related to 1 second boot. However, none of them references any boot delays 
related to this. They just do not spend this much time in their arch specific 
early boot.

Best regards,
Caglar

> I realized that it is a different and faster processor, but I'm pretty
> sure there are plenty of places you can trim the boot time.   It is a
> matter of time and effort.  You may want to start with the system
> requirement to see if 4 seconds is good enough and go from there.
> 
> Regards,
> 
> Steve
> 

  parent reply	other threads:[~2010-01-19  8:36 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-01-18  8:10 Kernel Start-up Time Caglar Akyuz
2010-01-18  8:39 ` Tonyliu
2010-01-18  8:54   ` Caglar Akyuz
2010-01-18 15:39     ` Steve Chen
2010-01-18 19:39       ` Dirk Behme
2010-01-19  8:40         ` Caglar Akyuz
2010-01-19  8:36       ` Caglar Akyuz [this message]
2010-01-19  9:02         ` Russell King - ARM Linux
2010-01-19 14:31           ` Caglar Akyuz
2010-01-19 11:04 ` Bahadir Balban
2010-01-19 14:40   ` Caglar Akyuz
2010-01-19 11:04 ` Johannes Stezenbach
2010-01-19 14:35   ` Caglar Akyuz

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=201001191036.21594.caglarakyuz@gmail.com \
    --to=caglarakyuz@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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;
as well as URLs for NNTP newsgroup(s).