From: Michael Poole <poole@troilus.org>
To: Andi Kleen <ak@suse.de>
Cc: Linus Torvalds <torvalds@transmeta.com>, linux-kernel@vger.kernel.org
Subject: Re: horrible disk thorughput on itanium
Date: 07 Dec 2001 13:14:35 -0500 [thread overview]
Message-ID: <87wuzyq4ms.fsf@sanosuke.troilus.org> (raw)
In-Reply-To: <p73n10v6spi.fsf@amdsim2.suse.de> <Pine.LNX.4.33.0112070941330.8465-100000@penguin.transmeta.com> <20011207185847.A20876@wotan.suse.de>
In-Reply-To: <20011207185847.A20876@wotan.suse.de>
Andi Kleen <ak@suse.de> writes:
> > You can be thread-safe without sucking dead baby donkeys through a straw.
> > I already mentioned two possible ways to fix it so that you have locking
> > when you need to, and no locking when you don't.
>
> Your proposals sound rather dangerous. They would silently break recompiled
> threaded programs that need the locking and don't use -D__REENTRANT (most
> people do not seem to use it). I doubt the possible pain from that is
> worth it for speeding up an basically obsolete interface like putc.
>
> i.e. if someone wants speed they definitely shouldn't use putc()
Threaded programs that need locking and don't define _THREAD_SAFE or
_REENTRANT or whatever is appropriate are already broken -- they just
don't know it yet.
FreeBSD #defines putc and getc to their unlocked versions unless
_THREAD_SAFE is defined, and people don't seem to think its libc is
broken. Many lightly threaded programs, in fact, wouldn't need or
even want the locked variants to be the default. One app I've worked
with only reads and writes any given FILE* from one thread, and I saw
an 4x speedup by switching to the unlocked variants.
It's generally a bad idea to make people pay for a feature they don't
ask for. FreeBSD's libc understands this; glibc apaprently doesn't.
-- Michael Poole
next prev parent reply other threads:[~2001-12-07 18:15 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <p73r8q86lpn.fsf@amdsim2.suse.de.suse.lists.linux.kernel>
[not found] ` <Pine.LNX.4.33.0112070710120.747-100000@mikeg.weiden.de.suse.lists.linux.kernel>
[not found] ` <9upmqm$7p4$1@penguin.transmeta.com.suse.lists.linux.kernel>
2001-12-07 13:54 ` horrible disk thorughput on itanium Andi Kleen
2001-12-07 14:20 ` Padraig Brady
2001-12-07 16:14 ` Richard Gooch
2001-12-07 17:18 ` Robert Love
2001-12-07 17:40 ` Richard Gooch
2001-12-07 17:48 ` Robert Love
2001-12-07 17:45 ` Linus Torvalds
2001-12-07 17:58 ` Andi Kleen
2001-12-07 18:14 ` Michael Poole [this message]
2001-12-07 18:35 ` Padraig Brady
2001-12-07 21:22 ` Michael Poole
2001-12-07 21:37 ` Padraig Brady
2001-12-07 22:26 ` Michael Poole
2001-12-07 18:15 ` Linus Torvalds
2001-12-07 18:41 ` Padraig Brady
2001-12-07 18:33 ` Padraig Brady
2001-12-07 20:44 ` Greg Hennessy
2001-12-07 21:37 ` Marco Colombo
2001-12-07 20:42 ` David S. Miller
[not found] ` <3C112DE4.60206@antefacto.com>
[not found] ` <20011207.130316.39156883.davem@redhat.com>
2001-12-09 1:19 ` [OT] fputc vs putc " Tom Vier
2001-12-09 1:33 ` Eric W. Biederman
2001-12-09 9:27 ` H. Peter Anvin
2001-12-09 19:14 ` Tom Vier
2001-12-09 22:15 ` H. Peter Anvin
2001-12-07 6:42 Dan Kegel
[not found] <20011206110713.A8404@cox.rr.com.suse.lists.linux.kernel>
[not found] ` <3C0FD955.4510B738@zip.com.au.suse.lists.linux.kernel>
2001-12-06 22:13 ` Andi Kleen
2001-12-07 6:11 ` Mike Galbraith
2001-12-07 6:15 ` Linus Torvalds
2001-12-07 12:32 ` Greg Hennessy
2001-12-07 17:57 ` Marco Colombo
-- strict thread matches above, loose matches on Subject: below --
2001-12-06 16:07 Greg Hennessy
2001-12-06 16:17 ` Arjan van de Ven
2001-12-06 20:47 ` Andrew Morton
2001-12-09 23:13 ` Kurt Garloff
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=87wuzyq4ms.fsf@sanosuke.troilus.org \
--to=poole@troilus.org \
--cc=ak@suse.de \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@transmeta.com \
/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