* [PATCH] latency-profiling
@ 2001-09-20 6:05 Roger Larsson
2001-09-20 19:55 ` george anzinger
2001-09-20 20:17 ` Karim Yaghmour
0 siblings, 2 replies; 4+ messages in thread
From: Roger Larsson @ 2001-09-20 6:05 UTC (permalink / raw)
To: linux-kernel, Robert Love
[-- Attachment #1: Type: text/plain, Size: 3639 bytes --]
Hi,
I ported my old latency-profiling patch to 2.4.10-pre10 with
the reschedulable kernel patch. (I have not checked that it is
preemption safe itself...)
This patch works a little different from Robert Loves.
Since it samples the execution location at ticks.
It is possible to instrument an ordinary kernel too...
These are the results (>5 ms):
Sep 19 20:09:28 jeloin kernel: Latency 17ms PID 316 %% ifconfig
Sep 19 20:09:28 jeloin kernel: Trace:
[mousedev:__insmod_mousedev_O/lib/modules/2.4.10-pre10/kernel/drivers+-93829/96]
[__rdtsc_delay+20/28]
Sep 19 20:12:48 jeloin kernel: Latency 10ms PID 870 %% artsd
Sep 19 20:12:48 jeloin kernel: Trace: [console_softint+230/232]
[__rdtsc_delay+20/28]
Sep 19 20:13:28 jeloin kernel: Latency 8ms PID 667 %% X
Sep 19 20:13:28 jeloin kernel: Trace: [__rdtsc_delay+22/28]
Sep 19 20:13:53 jeloin kernel: Latency 35ms PID 972 %% bash
Sep 19 20:13:53 jeloin kernel: Trace: [unmap_buffer+100/132]
[kmem_cache_free+140/148] [block_flushpage+43/112]
Sep 19 20:14:19 jeloin kernel: Latency 40ms PID 979 %% bash
Sep 19 20:14:19 jeloin kernel: Trace: [__refile_buffer+95/108]
[block_flushpage+43/112] [remove_inode_page+36/64] [__lru_cache_del+1/272]
Sep 19 20:15:55 jeloin kernel: Latency 21ms PID 1038 %% cp
Sep 19 20:15:55 jeloin kernel: Trace: [truncate_list_pages+200/456]
[try_to_free_buffers+332/556]
Sep 19 20:32:18 jeloin kernel: Latency 6ms PID 7 %% kupdated
Sep 19 20:32:19 jeloin kernel: Latency 5ms PID 1214 %% mmap002
Sep 19 20:35:18 jeloin kernel: Latency 22ms PID 1214 %% mmap002
Sep 19 20:35:18 jeloin kernel: Trace: [zap_page_range+318/628]
[zap_page_range+382/628]
Sep 19 21:49:22 jeloin kernel: Latency 10ms PID 0 %% swapper
Sep 19 21:49:22 jeloin kernel: Trace: [schedule+463/1032]
Sep 19 22:37:45 jeloin kernel: Latency 5ms PID 2439 %% y2bignfat
Sep 19 22:37:45 jeloin kernel: Latency 5ms PID 2446 %% y2bignfat
Sep 19 22:46:18 jeloin kernel: Latency 5ms PID 2552 %% y2bignfat
Sep 19 22:46:18 jeloin kernel: Trace: [zap_page_range+382/628]
Sep 19 22:46:18 jeloin kernel: Latency 5ms PID 2555 %% y2bignfat
Sep 19 22:46:18 jeloin kernel: Trace: [zap_page_range+318/628]
Sep 19 22:46:18 jeloin kernel: Latency 5ms PID 2559 %% y2bignfat
Sep 19 22:46:18 jeloin kernel: Latency 5ms PID 2571 %% y2bignfat
Sep 19 22:46:19 jeloin kernel: Latency 5ms PID 2573 %% y2bignfat
Sep 19 22:46:19 jeloin kernel: Latency 5ms PID 2574 %% y2bignfat
Sep 19 22:46:19 jeloin kernel: Latency 5ms PID 2578 %% y2bignfat
Sep 19 22:46:19 jeloin kernel: Latency 5ms PID 2579 %% y2bignfat
Sep 19 22:46:19 jeloin kernel: Trace: [zap_page_range+382/628]
Sep 19 22:46:19 jeloin kernel: Latency 5ms PID 2593 %% y2bignfat
Sep 19 22:46:19 jeloin kernel: Trace: [zap_page_range+318/628]
Sep 19 22:46:19 jeloin kernel: Latency 5ms PID 2594 %% y2bignfat
Sep 19 22:46:20 jeloin kernel: Latency 5ms PID 2596 %% y2bignfat
Sep 20 07:27:57 jeloin kernel: Latency 59ms PID 281 %% cardmgr
Sep 20 07:27:57 jeloin kernel: Trace: [__rdtsc_delay+20/28]
[__rdtsc_delay+20/28] [__rdtsc_delay+22/28] [__rdtsc_delay+20/28]
[__rdtsc_delay+20/28]
Sep 20 07:27:57 jeloin kernel: Trace: [__rdtsc_delay+20/28]
Sep 20 07:27:57 jeloin kernel: Latency 24ms PID 316 %% ifconfig
Sep 20 07:27:57 jeloin kernel: Trace: [__rdtsc_delay+20/28]
[mousedev:__insmod_mousedev_O/lib/modules/2.4.10-pre10/kernel/drivers+-93829/96]
[mousedev:__insmod_mousedev_O/lib/modules/2.4.10-pre10/kernel/drivers+-93562/96]
Sep 20 07:27:59 jeloin kernel: Latency 8ms PID 649 %% X
Sep 20 07:27:59 jeloin kernel: Trace: [aux_write_ack+54/60]
--
Roger Larsson
Skellefteå
Sweden
[-- Attachment #2: latency-profiling-2.4.10-pre10-preempt-r16.patch.gz --]
[-- Type: application/x-gzip, Size: 2178 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] latency-profiling
2001-09-20 6:05 [PATCH] latency-profiling Roger Larsson
@ 2001-09-20 19:55 ` george anzinger
2001-09-20 20:31 ` Roger Larsson
2001-09-20 20:17 ` Karim Yaghmour
1 sibling, 1 reply; 4+ messages in thread
From: george anzinger @ 2001-09-20 19:55 UTC (permalink / raw)
To: Roger Larsson; +Cc: linux-kernel, Robert Love
Roger Larsson wrote:
>
> Hi,
>
> I ported my old latency-profiling patch to 2.4.10-pre10 with
> the reschedulable kernel patch. (I have not checked that it is
> preemption safe itself...)
>
> This patch works a little different from Robert Loves.
> Since it samples the execution location at ticks.
> It is possible to instrument an ordinary kernel too...
It gives experienced latencies rather than potential latencies, but more
important from the developer/maintainers point of view, "Robert Loves"
patch provides information on the bad guys, i.e. the reason for the long
latency, which, hopefully, will allow them to be addressed by competent
maintainers.
George
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] latency-profiling
2001-09-20 19:55 ` george anzinger
@ 2001-09-20 20:31 ` Roger Larsson
0 siblings, 0 replies; 4+ messages in thread
From: Roger Larsson @ 2001-09-20 20:31 UTC (permalink / raw)
To: george anzinger, Roger Larsson; +Cc: linux-kernel, Robert Love
On Thursdayen den 20 September 2001 21.55, george anzinger wrote:
> Roger Larsson wrote:
> > Hi,
> >
> > I ported my old latency-profiling patch to 2.4.10-pre10 with
> > the reschedulable kernel patch. (I have not checked that it is
> > preemption safe itself...)
> >
> > This patch works a little different from Robert Loves.
> > Since it samples the execution location at ticks.
> > It is possible to instrument an ordinary kernel too...
>
> It gives experienced latencies rather than potential latencies, but more
> important from the developer/maintainers point of view, "Robert Loves"
> patch provides information on the bad guys, i.e. the reason for the long
> latency, which, hopefully, will allow them to be addressed by competent
> maintainers.
>
Yes, but my technique can be applied to any kernel. It does not require
an preemptible kernel...
I.e. measures time from the moment a reschedulation was reqired to it
is actually done - independent of how it is done...
And if you run something that needs periodic reshedules you will detect
actual problems.
And thus it can be used as a bench, it is hard to describe skips in music,
textual data is easier to send by mail...
But I agree that Roberts is better to find the critical ones!
/RogerL
--
Roger Larsson
Skellefteå
Sweden
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] latency-profiling
2001-09-20 6:05 [PATCH] latency-profiling Roger Larsson
2001-09-20 19:55 ` george anzinger
@ 2001-09-20 20:17 ` Karim Yaghmour
1 sibling, 0 replies; 4+ messages in thread
From: Karim Yaghmour @ 2001-09-20 20:17 UTC (permalink / raw)
To: Roger Larsson; +Cc: linux-kernel, Robert Love
Roger Larsson wrote:
> This patch works a little different from Robert Loves.
> Since it samples the execution location at ticks.
> It is possible to instrument an ordinary kernel too...
You could also try the Linux Trace Toolkit which would provide
you with much more accurate results and exact times instead of
samples. LTT is here: http://www.opersys.com/LTT
Cheers,
Karim
===================================================
Karim Yaghmour
karym@opersys.com
Embedded and Real-Time Linux Expert
===================================================
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2001-09-21 2:12 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2001-09-20 6:05 [PATCH] latency-profiling Roger Larsson
2001-09-20 19:55 ` george anzinger
2001-09-20 20:31 ` Roger Larsson
2001-09-20 20:17 ` Karim Yaghmour
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox