creation, context switch time of process and thread

Vladimir Murzin murzin.v at gmail.com
Sun May 27 03:36:05 EDT 2012


On Fri, May 25, 2012 at 10:59:16PM +0530, Srinivas Ramanan wrote:
> On Fri, May 25, 2012 at 12:50 PM, richard -rw- weinberger <
> richard.weinberger at gmail.com> wrote:
> 
> > On Thu, May 24, 2012 at 2:25 PM, Srinivas Ramanan
> > <srinivas.ramanan at gmail.com> wrote:
> > > Can someone give the  information of following typical values in Kernel
> > 3.x
> > > in a 2Ghz machine with sufficient RAM
> > >
> > > Process creation time ?
> > > Process context switch time ?
> > > pthread creation time ?
> > > pthread context swich  time ?
> > > kernel thread creation time ?
> > > kernel thread context switch  time ?
> >
> 
> Thanks for pointing out the tools. I will look in to them.
> To confirm that i am measuring it right, can someone give some
> (approximate) typical values for the above,
> Assuming some 200 instructions in context switching  assembly code, i guess
> the process context switch takes around 100ns. is this right?
> I guess the process creation time will be greater than process context
> switch time. correct?
> Will the pthread context switch time be different from a kernel thread
> context switch time?
> 
> 
> thanks,
> ramanan

> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

Hi

Why don't you benchmark your environment with performance measuring
tools like LMBench[1]?

I guess that things are not easy... For instance, if process uses FPU
the state of FPU is usually saved on context switch, it could take
some time... It also possible that on some architectures it is
necessary to flush cashes and tlb on context switch,..
AFAIK processes and threads are handled by the Linux kernel in the
same way, i.e. there is no difference for scheduler between process
and thread.

[1]http://www.bitmover.com/lmbench/

Best wishes
Vladimir Murzin



More information about the Kernelnewbies mailing list