From: Dimitrios Apostolou <jimis@gmx.net>
To: "Rafał Bilski" <rafalbilski@interia.pl>
Cc: linux-kernel@vger.kernel.org
Subject: Re: high system cpu load during intense disk i/o
Date: Mon, 06 Aug 2007 21:18:14 +0200 [thread overview]
Message-ID: <46B773F6.7060603@gmx.net> (raw)
In-Reply-To: <46B748DE.1060108@interia.pl>
Rafał Bilski wrote:
>> Hello and thanks for your reply.
> Hello again,
>> The cron job that is running every 10 min on my system is mpop (a
>> fetchmail-like program) and another running every 5 min is mrtg. Both
>> normally finish within 1-2 seconds.
>> The fact that these simple cron jobs don't finish ever is certainly
>> because of the high system CPU load. If you see the two_discs_bad.txt
>> which I attached on my original message, you'll see that *vmlinux*,
>> and specifically the *scheduler*, take up most time.
>> And the fact that this happens only when running two i/o processes but
>> when running only one everything is absolutely snappy (not at all
>> slow, see one_disc.txt), makes me sure that this is a kernel bug. I'd
>> be happy to help but I need some guidance to pinpoint the problem.
> In Your oprofile output I find "acpi_pm_read" particulary interesting.
> Unlike other VIA chipsets, which I know, Your doesn't use VLink to
> connect northbridge to southbridge. Instead PCI bus connects these two.
> As You probably know maximal PCI throughtput is 133MiB/s. In theory. In
> practice probably less.
> ACPI registers are located on southbridge. This probably means that
> processor needs access to PCI bus in order to read ACPI timer register.
> Now some math. 20GiB disk probably can send data at 20MiB/s rate. 200GiB
> disk probably about 40MiB/s. So 20+2*40=100MiB/s. I think that this
> could explain why simple inl() call takes so much time and why Your
> system isn't very responsive.
>> Thanks, Dimitris
> Let me know if You find my theory amazing or amusing.
Hello Rafal,
I find your theory very nice, but unfortunately I don't think it applies
here. As you can see from the vmstat outputs the write throughput is
about 15MB/s for both disks. When reading I get about 30MB/s again from
both disks. The other disk, the small one, is mostly idle, except for
writing little bits and bytes now and then. Since the problem occurs
when writing, 15MB/s is just too little I think for the PCI bus.
However I find it quite possible to have reached the throughput limit
because of software (driver) problems. I have done various testing
(mostly "hdparm -tT" with exactly the same PC and disks since about
kernel 2.6.8 (maybe even earlier). I remember with certainty that read
throughput the early days was about 50MB/s for each of the big disks,
and combined with RAID 0 I got ~75MB/s. Those figures have been dropping
gradually with each new kernel release and the situation today, with
2.6.22, is that hdparm gives maximum throughput 20MB/s for each disk,
and for RAID 0 too!
I have been ignoring these performance regressions because of no
stability problems until now. So could it be that I'm reaching the
20MB/s driver limit and some requests take too long to be served?
Dimitris
next prev parent reply other threads:[~2007-08-06 18:18 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-08-03 16:03 high system cpu load during intense disk i/o Dimitrios Apostolou
2007-08-05 16:03 ` Dimitrios Apostolou
2007-08-05 17:58 ` Rafał Bilski
2007-08-05 18:42 ` Dimitrios Apostolou
2007-08-05 20:08 ` Rafał Bilski
2007-08-06 16:14 ` Rafał Bilski
2007-08-06 19:18 ` Dimitrios Apostolou [this message]
2007-08-06 19:48 ` Alan Cox
2007-08-07 0:40 ` Dimitrios Apostolou
2007-08-07 0:37 ` Alan Cox
2007-08-07 13:15 ` Dimitrios Apostolou
2007-08-06 22:12 ` Rafał Bilski
2007-08-07 0:49 ` Dimitrios Apostolou
2007-08-07 9:03 ` Rafał Bilski
2007-08-07 9:43 ` Dimitrios Apostolou
2007-08-06 1:28 ` Andrew Morton
2007-08-06 14:20 ` Dimitrios Apostolou
2007-08-06 17:33 ` Andrew Morton
2007-08-06 19:27 ` Dimitrios Apostolou
2007-08-06 20:04 ` Dimitrios Apostolou
2007-08-06 16:09 ` Dimitrios Apostolou
2007-08-07 14:50 ` Dimitrios Apostolou
2007-08-08 19:08 ` Rafał Bilski
2007-08-09 8:17 ` Dimitrios Apostolou
2007-08-10 7:06 ` Rafał Bilski
2007-08-17 23:19 ` Dimitrios Apostolou
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=46B773F6.7060603@gmx.net \
--to=jimis@gmx.net \
--cc=linux-kernel@vger.kernel.org \
--cc=rafalbilski@interia.pl \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.