All of lore.kernel.org
 help / color / mirror / Atom feed
From: Brian Bloniarz <bmb@athenacr.com>
To: Chris Wedgwood <cw@f00f.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
	Greg KH <gregkh@suse.de>, Alan Cox <alan@lxorguk.ukuu.org.uk>,
	OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>,
	Jef Driesen <jefdriesen@telenet.be>,
	linux-kernel@vger.kernel.org
Subject: Re: Slow pty's (was Re: libdivecomputer interfaces?)
Date: Thu, 10 Jun 2010 18:25:22 -0400	[thread overview]
Message-ID: <4C116652.8010408@athenacr.com> (raw)
In-Reply-To: <20100610181042.GA19210@puku.stupidest.org>

On 06/10/2010 02:10 PM, Chris Wedgwood wrote:
> (sorry if this reponse isn't on target, i was just pointed to this
> thread a few minutes ago)
> 
> 
> On Thu, Jun 10, 2010 at 10:25:36AM -0700, Linus Torvalds wrote:
> 
>>  I thought we long since (ie back last fall) fixed the latency
>> problems with pty's, but there does seem to be something very fishy
>> going on there still.
> 
> this might not be related, but i have slow serial ports with NOHZ that
> goes away when i revert 39c0cbe2150cbd848a25ba6cdb271d1ad46818ad.

Unrelated or not, I think Chris is right about this. Somewhere before
-rc1, the emulated serial console on my KVM instance became slow
to echo input. I just tested with the commit reverted and it's
back to normal.

> commit 39c0cbe2150cbd848a25ba6cdb271d1ad46818ad
> Author: Mike Galbraith <efault@gmx.de>
> Date:   Thu Mar 11 17:17:13 2010 +0100
> 
>     sched: Rate-limit nohz
> 
>     Entering nohz code on every micro-idle is costing ~10% throughput for netperf
>     TCP_RR when scheduling cross-cpu.  Rate limiting entry fixes this, but raises
>     ticks a bit.  On my Q6600, an idle box goes from ~85 interrupts/sec to 128.
> 
>     The higher the context switch rate, the more nohz entry costs.  With this patch
>     and some cycle recovery patches in my tree, max cross cpu context switch rate is
>     improved by ~16%, a large portion of which of which is this ratelimiting.
> 
> and looking at the only two interesting hunks it's not clear why:
> 
> +int nohz_ratelimit(int cpu)
> +{
> +       struct rq *rq = cpu_rq(cpu);
> +       u64 diff = rq->clock - rq->nohz_stamp;
> +
> +       rq->nohz_stamp = rq->clock;
> +
> +       return diff < (NSEC_PER_SEC / HZ) >> 1;
> +}
> 
> +       if (nohz_ratelimit(cpu))
> +               goto end;
> +
> 
> network latnecy is fine, and if i create lots of wakeups (network IO
> is fine) then the serial port latency is noticable
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/


  reply	other threads:[~2010-06-10 22:25 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-06-10 17:25 Slow pty's (was Re: libdivecomputer interfaces?) Linus Torvalds
2010-06-10 18:07 ` OGAWA Hirofumi
2010-06-10 18:10 ` Chris Wedgwood
2010-06-10 22:25   ` Brian Bloniarz [this message]
2010-06-10 22:30     ` Linus Torvalds
2010-06-16 15:03     ` Jiri Kosina
2010-06-16 15:16       ` Mike Galbraith
2010-06-17  6:39         ` Mike Galbraith
2010-06-17  7:00           ` Mike Galbraith
2010-06-17 10:50             ` Mike Galbraith
2010-06-17 13:24               ` Peter Zijlstra
2010-06-17 14:11                 ` Thomas Gleixner
2010-06-17 14:14                 ` Mike Galbraith
2010-06-17 14:56                 ` Brian Bloniarz
2010-06-17 16:02                   ` [PATCH] nohz: Fix nohz ratelimit Peter Zijlstra
2010-06-17 17:39                     ` [tip:timers/urgent] " tip-bot for Peter Zijlstra
2010-11-12 18:45 ` Slow pty's (was Re: libdivecomputer interfaces?) Jef Driesen

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=4C116652.8010408@athenacr.com \
    --to=bmb@athenacr.com \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=cw@f00f.org \
    --cc=gregkh@suse.de \
    --cc=hirofumi@mail.parknet.co.jp \
    --cc=jefdriesen@telenet.be \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@linux-foundation.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 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.