All of lore.kernel.org
 help / color / mirror / Atom feed
From: Russell Coker <russell@coker.com.au>
To: "Christopher R. Hertel" <crh@ubiqx.mn.org>
Cc: Simo Sorce <idra@samba.org>, Andrew Bartlett <abartlet@samba.org>,
	Darrel Goeddel <dgoeddel@TrustedCS.com>,
	James Morris <jmorris@redhat.com>,
	Chad Hanson <chanson@TrustedCS.com>,
	Stephen Smalley <sds@epoch.ncsc.mil>,
	Multiple recipients of list SAMBA-TECHNICAL
	<samba-technical@samba.org>,
	tng-technical@samba-tng.org, SE-Linux <selinux@tycho.nsa.gov>
Subject: Re: dynamic context transitions
Date: Thu, 2 Dec 2004 12:46:13 +1100	[thread overview]
Message-ID: <200412021246.23614.russell@coker.com.au> (raw)
In-Reply-To: <20041201231224.GD5862@Favog.ubiqx.mn.org>

On Thursday 02 December 2004 10:12, "Christopher R. Hertel" <crh@ubiqx.mn.org> 
wrote:
> I've been asking about this in different places.  I've heard theories,
> mostly.  This is happening in Linux (dunno if it's been tested elsewhere)
> and one theory is that the forked process speeds are good because Linux
> basically does a really good job with those.  Meanwhile, thread speed is
> bad because the multiple threads are all within a single process and the
> single process gets only it's own share of processor time.

I believe that in Linux with the NPTL each thread gets scheduled independently 
by default.  Also if the threads were scheduled together then that would only 
cause problems if there were other programs using CPU time, in the case of a 
server running only a multi-threaded daemon it should not cause any problems.

> I don't know much about thread handling on Linux, but I would also imagine
> that there is a bit of an impact on all threads when one thread makes a
> system call.

For thread libraries that have application code implementing threads on top of 
a non-threaded libc or kernel (Green Threads for Java and every Ada runtime 
for DOS are the two best examples that I can think of) then a blocking system 
call in one thread will block all the other threads.

One problem with threads is that certain libc calls use locking when linked in 
a multi-threaded manner.  In version 1.9x of my Bonnie++ benchmark suite I 
have a test program called getc_putc to test this.  On older versions of 
glibc the performance difference between non-threaded and threaded versions 
of a program when calling getc() and putc() was significant.  Now it seems 
that there's hardly any difference.  I suspect that because of these changes 
to glibc and other changes that presumably accompanied them the difference 
betwen threaded and non-threaded programs for such things is much less than 
it used to be.

-- 
http://www.coker.com.au/selinux/   My NSA Security Enhanced Linux packages
http://www.coker.com.au/bonnie++/  Bonnie++ hard drive benchmark
http://www.coker.com.au/postal/    Postal SMTP/POP benchmark
http://www.coker.com.au/~russell/  My home page

--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.

  parent reply	other threads:[~2004-12-02  1:46 UTC|newest]

Thread overview: 138+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-10-29 19:10 dynamic context transitions Darrel Goeddel
2004-10-29 21:18 ` Luke Kenneth Casson Leighton
2004-10-30  9:06   ` Luke Kenneth Casson Leighton
2004-11-01 13:20     ` Stephen Smalley
2004-11-01 14:10       ` Luke Kenneth Casson Leighton
2004-11-01 16:23         ` Darrel Goeddel
2004-11-01 16:39           ` Stephen Smalley
2004-11-01 18:45           ` Luke Kenneth Casson Leighton
2004-11-01 20:10           ` James Morris
2004-11-01 20:35             ` Luke Kenneth Casson Leighton
2004-11-01 20:25               ` Stephen Smalley
2004-11-01 21:00                 ` Luke Kenneth Casson Leighton
2004-11-01 20:50                   ` Stephen Smalley
2004-11-01 22:21                     ` Luke Kenneth Casson Leighton
2004-11-08 14:42                 ` Russell Coker
     [not found]                   ` <1100395104.13794.12.camel@piglett.bartlett.house>
2004-11-14 11:15                     ` Luke Kenneth Casson Leighton
     [not found]                       ` <1100431351.13794.510.camel@piglett.bartlett.house>
     [not found]                         ` <20041114162453.GN5031@lkcl.net>
     [not found]                           ` <1100449615.30740.14.camel@localhost.localdomain>
2004-11-14 21:54                             ` Luke Kenneth Casson Leighton
     [not found]                               ` <20041201231224.GD5862@Favog.ubiqx.mn.org>
2004-12-02  1:46                                 ` Russell Coker [this message]
2004-11-08 14:39               ` Russell Coker
     [not found]               ` <20041203211212.GA5243@lkcl.net>
     [not found]                 ` <16817.7759.874421.597181@samba.org>
2004-12-04 11:39                   ` Russell Coker
2004-11-01 21:27           ` Karl MacMillan
2004-11-01 22:33             ` Luke Kenneth Casson Leighton
2004-11-02  0:25               ` Karl MacMillan
2004-11-02 13:43             ` Stephen Smalley
2004-11-02 14:16               ` Karl MacMillan
2004-11-02 14:19                 ` Stephen Smalley
2004-11-03 20:21                   ` Colin Walters
2004-11-25 19:48                 ` Russell Coker
2004-11-25 21:35                   ` Luke Kenneth Casson Leighton
2004-11-26  3:28                     ` Russell Coker
2004-11-26 19:23                       ` Valdis.Kletnieks
2004-11-26 18:58                     ` Valdis.Kletnieks
2004-11-02  2:18           ` Colin Walters
2004-11-02  9:08             ` Luke Kenneth Casson Leighton
2004-11-02 13:59             ` Stephen Smalley
2004-11-02 14:59               ` Colin Walters
2004-11-01 16:45         ` Colin Walters
2004-11-01 18:23           ` Luke Kenneth Casson Leighton
2004-10-30  2:41 ` James Morris
2004-10-31 22:47 ` Frank Mayer
2004-11-01 13:37   ` Stephen Smalley
2004-11-02  1:03     ` Karl MacMillan
2004-11-02 15:33       ` Stephen Smalley
2004-11-02 17:39         ` Karl MacMillan
2004-11-02 18:02           ` Stephen Smalley
2004-11-02 21:33             ` Karl MacMillan
2004-11-03 13:53               ` Stephen Smalley
2004-11-03 15:08                 ` Karl MacMillan
2004-11-25 20:12               ` Russell Coker
2004-11-03 17:53         ` Luke Kenneth Casson Leighton
2004-11-03 18:27         ` Luke Kenneth Casson Leighton
2004-11-01 15:51 ` Stephen Smalley
2004-11-01 16:56 ` Stephen Smalley
2004-11-01 21:44   ` Karl MacMillan
2004-11-12 18:42   ` Amy L Herzog
2004-11-15 14:07     ` Stephen Smalley
2004-11-19 13:48       ` Joshua D. Guttman
2004-11-19 14:33         ` Stephen Smalley
2004-11-19 16:29           ` Darrel Goeddel
2004-11-19 17:17             ` Stephen Smalley
2004-11-24 15:30               ` Darrel Goeddel
2004-11-24 15:31                 ` Stephen Smalley
2004-11-29 14:54                   ` Darrel Goeddel
2004-11-29 21:24                     ` Stephen Smalley
2004-11-29 23:41                       ` Darrel Goeddel
2004-11-30 12:58                         ` Stephen Smalley
2004-11-30 15:14                           ` Darrel Goeddel
2004-11-30 16:02                             ` Stephen Smalley
2004-11-30 18:27                               ` Stephen Smalley
2004-11-30 21:00                                 ` Stephen Smalley
2004-11-12 18:24 ` Stephen Smalley
2004-11-12 20:58   ` Valdis.Kletnieks
  -- strict thread matches above, loose matches on Subject: below --
2004-11-01 14:11 Chad Hanson
2004-11-01 17:14 Chad Hanson
2004-11-01 20:04 ` Frank Mayer
2004-11-01 20:28   ` Stephen Smalley
2004-11-01 18:28 Chad Hanson
2004-11-01 20:47 ` Luke Kenneth Casson Leighton
2004-11-01 20:55 ` Stephen Smalley
2004-11-01 22:58   ` Luke Kenneth Casson Leighton
2004-11-02 13:47     ` Stephen Smalley
2004-11-02 14:06       ` Frank Mayer
2004-11-02 14:22         ` Stephen Smalley
2004-11-02 14:36           ` Frank Mayer
2004-11-03 18:47             ` Luke Kenneth Casson Leighton
2004-11-02 14:13       ` Frank Mayer
2004-11-03 15:38       ` Luke Kenneth Casson Leighton
2004-11-02 19:30     ` Valdis.Kletnieks
2004-11-03 15:55       ` Luke Kenneth Casson Leighton
2004-11-03 16:03         ` Stephen Smalley
2004-11-01 21:33 Chad Hanson
2004-11-02 13:31 ` Frank Mayer
2004-11-23  5:53   ` Russell Coker
2004-11-01 21:45 Chad Hanson
2004-11-02 15:25 Chad Hanson
2004-11-02 18:49 Chad Hanson
2004-11-02 21:34 ` Stephen Smalley
2004-11-02 22:06 ` Karl MacMillan
2004-11-03 15:36 Chad Hanson
2004-11-03 15:46 ` Karl MacMillan
2004-11-03 17:26 ` Luke Kenneth Casson Leighton
2004-11-04 16:50   ` Stephen Smalley
2004-11-04 17:25     ` Luke Kenneth Casson Leighton
2004-11-04 19:46     ` James Morris
2004-11-05  5:31     ` Colin Walters
2004-11-05 12:49       ` Stephen Smalley
2004-11-05 13:01         ` Frank Mayer
2004-11-05 13:13           ` Stephen Smalley
2004-11-05 15:55             ` Frank Mayer
2004-11-05 16:33               ` Luke Kenneth Casson Leighton
2004-11-05 16:41               ` Stephen Smalley
2004-11-05 17:07                 ` Frank Mayer
2004-11-05 17:48                   ` Stephen Smalley
2004-11-05 16:01         ` Colin Walters
2004-11-05 12:52       ` Frank Mayer
2004-11-05 13:11         ` Stephen Smalley
2004-11-05 15:04         ` Darrel Goeddel
2004-11-05 15:20           ` Stephen Smalley
2004-11-05 15:33             ` Karl MacMillan
2004-11-05 15:35               ` Stephen Smalley
2004-11-05 15:34             ` Darrel Goeddel
2004-11-05 16:01           ` Frank Mayer
2004-11-05 16:29           ` Luke Kenneth Casson Leighton
2004-11-05 16:44             ` Stephen Smalley
2004-11-03 18:00 Chad Hanson
2004-11-14 20:23 Luke Kenneth Casson Leighton
2004-11-15 13:25 ` Stephen Smalley
2004-11-15 14:34   ` Luke Kenneth Casson Leighton
2004-11-15 14:52     ` Stephen Smalley
2004-11-15  1:57 Luke Kenneth Casson Leighton
2004-11-15 13:29 ` Stephen Smalley
2005-02-15 21:34 Luke Kenneth Casson Leighton
2005-02-15 22:21 ` Darrel Goeddel
2005-02-15 22:56   ` Luke Kenneth Casson Leighton
2005-02-16 13:05 ` Stephen Smalley
2005-02-16 14:08   ` Luke Kenneth Casson Leighton
2005-02-16 14:00     ` Stephen Smalley
2005-02-16 15:19       ` Luke Kenneth Casson Leighton

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=200412021246.23614.russell@coker.com.au \
    --to=russell@coker.com.au \
    --cc=abartlet@samba.org \
    --cc=chanson@TrustedCS.com \
    --cc=crh@ubiqx.mn.org \
    --cc=dgoeddel@TrustedCS.com \
    --cc=idra@samba.org \
    --cc=jmorris@redhat.com \
    --cc=samba-technical@samba.org \
    --cc=sds@epoch.ncsc.mil \
    --cc=selinux@tycho.nsa.gov \
    --cc=tng-technical@samba-tng.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.