Language safety in a multithread environment

Article: Fall Processor Forum 2006: IBM's POWER6
By: Linus Torvalds (torvalds.delete@this.osdl.org), October 25, 2006 7:37 am
Room: Moderated Discussions
Tzvetan Mikov (tzvetanmi@yahoo.com) on 10/24/06 wrote:
>
>What I am concerned about is the specific case of
>initializing an object's metadata.

Ok. In that case, all your examples are ok, within the
confines of the memory ordering of x86, at least.

As long as the metadata of an object has been written
before you write the pointer to that object to a
globally visible data structure, you're ok. That means,
by definition, that anybody who reads that data will
always have to have the data dependency of first reading
the pointer, and then following the pointer to see the
meta-data.

So as long as your metadata is always strictly behind the
pointer (and not accessible in parallel some other way
from other threads), you're ok.

That is not true on all architectures, but it's true on
the common ones. In fact, the only architecture where I
know it's not true is alpha, which has a memory
ordering that can allow even a dependent read to see
"earlier" state unless you have a read barrier.

>Examine this scenario:

>/* Thread 1 allocating an object: globalObj = new Integer(10) */
>extern Integer *globalObj;
>....
>register Integer * tmp1;
>tmp1 = heaptop;
>heaptop += sizeof(Integer);
>tmp1->vtable = &vtable;
>MB();
>globalObj = tmp1;
>globalObj->value = 10;


So here the only problem would appear to be the fact that
another thread may see "globalObj" before the value
is initialized. You might be better off writing the initial
initializer as "tmp->value = 10" before the write barrier
too.

And again, I'm hoping you never intend to run this on
alpha ;)

>/* Thread 2 accessing the object */
>register Integer * tmp2;
>if ((tmp2 = globalObj) != null)
>tmp2->virtualFunc();

>In Thread 2 it should be safe to call tmp2->virtualFunc()
>because it is known that it isn't null. The function will
>return incorrect results because the write to >"globalObj->value" is still not visible (which is the
>bug), but it should not crash in an uncontrollable way.

Ok, you already knew about the bug.

And yes, I agree. It's ok from that sense on any
architecture where data-dependencies act as read barriers.

>That is why we need the MB() after the object >initialization. In practice we need it after any object
>allocation because 99% of the allocated objects escape.
>We are concerned that it adds a significant penalty - as
>you can see in this case the allocation itself is very
>cheap, so every instruction counts.

Please change the MB() to a WMB(), and have separate
macros for different barriers, because:

>You said that a "write barrier" is very cheap. Can you
>elaborate a little on that ?

On most architectures, a write barrier tends to be just
a matter of controlling the store buffer, perhaps just
a flag saying "don't reorder across this mark". In contrast,
read barriers (and full memory barriers) tend to actually
be a fairly disruptive event for OoO instruction execution.

For example, on x86, a write barrier is literally nothing
at all, since stores are defined to appear to happen in-
order anyway architecturally. So the only thing you
need for a write barrier is literally just a compiler
optimization barrier so that the compiler will not order
things around it. So there is zero run-time cost,
and only a very low compiler scheduling opportunity cost.

In contrast, a full memory barrier tends to be a locked
instruction, and can range from a few tens of cycles to
a few hundred cycles (the latter on NetBurst) because
it tends to basically serialize the whole pipeline.

>I always advice everybody to use full blown locks around
>every shared access, even if it sometimes appears grossly
>inefficient. In practice it never is that inefficient
>because in a good design the shared data doesn't end up
>on the critical path. (Of course I am talking only about
>application level programming)

Right. Use locks. They are a lot easier to think about
and you're less likely to have nasty bugs.

And yes, in systems programming, just about every
critical section needs locking. It's often the biggest
cost. Count yourself lucky in app space..

Linus
< Previous Post in ThreadNext Post in Thread >
TopicPosted ByDate
POWER6 article onlineDavid Kanter2006/10/16 10:31 PM
  POWER6 article onlineNiels Jørgen Kruse2006/10/16 11:59 PM
    POWER6 article onlineDavid Kanter2006/10/17 12:03 AM
      Interesting cachesPaul Aaron Clayton2006/10/17 06:35 AM
  POWER6 article onlinerwessel2006/10/17 12:17 AM
    POWER6 article onlineGabriele Svelto2006/10/17 12:49 AM
      POWER6 article onlinerwessel2006/10/17 12:55 AM
      POWER6 article onlineDavid Kanter2006/10/17 01:01 AM
        POWER6 article onlineGabriele Svelto2006/10/17 01:06 AM
  BCD arithmetic remarkRob Thorpe2006/10/17 06:57 AM
    BCD arithmetic remarkDavid Kanter2006/10/17 08:04 AM
      BCD arithmetic remarkRob Thorpe2006/10/17 08:33 AM
        Java perfSerge Monkewitz2006/10/17 12:25 PM
          Java perfRob Thorpe2006/10/18 04:27 AM
            Java perfsp2006/10/18 04:50 AM
              Java perfRob Thorpe2006/10/18 08:36 AM
                Data parallelism in .NET using GPUsStephen Goss2006/10/18 11:48 PM
                  Data parallelism in .NET using GPUssp2006/10/19 01:08 AM
                    Data parallelism in .NET using GPUsStephen Goss2006/10/21 02:22 AM
                      Data parallelism in .NET using GPUsfastpathguru2006/11/01 02:30 PM
                        Data parallelism in .NET using GPUsIan Ameline2006/11/01 05:31 PM
                Java perfGabriele Svelto2006/10/19 12:23 AM
                  Java perfRob Thorpe2006/10/19 02:58 AM
              Numerical Java perfWes Felter2006/10/18 10:25 AM
                Numerical Java perfsp2006/10/18 10:46 AM
                  Numerical Java perfRob Thorpe2006/10/18 11:23 AM
                    Numerical Java perfTzvetan Mikov2006/10/18 11:44 AM
                      Numerical Java perfRob Thorpe2006/10/19 04:30 AM
                        Numerical Java perfsp2006/10/19 05:22 AM
                          Numerical Java perfGabriele Svelto2006/10/19 05:33 AM
                          Numerical Java perfRob Thorpe2006/10/19 07:08 AM
                            Numerical Java perfJuho Snellman2006/10/20 08:38 AM
                              Numerical Java perfRob Thorpe2006/10/23 04:54 AM
                                SBCL garbage collectorJuho Snellman2006/10/25 03:29 AM
                          Numerical Java perfTzvetan Mikov2006/10/19 09:04 AM
                        Language safety in a multithread environmentTzvetan Mikov2006/10/19 09:34 AM
                          Language safety in a multithread environmentRicardo B2006/10/19 11:43 AM
                            Language safety in a multithread environmentTzvetan Mikov2006/10/19 12:11 PM
                              Language safety in a multithread environmentRicardo B2006/10/19 02:23 PM
                                Language safety in a multithread environmentTzvetan Mikov2006/10/19 04:08 PM
                                  Language safety in a multithread environmentRicardo B2006/10/20 05:04 AM
                                    Language safety in a multithread environmentTzvetan Mikov2006/10/20 01:53 PM
                                      Language safety in a multithread environmentRicardo B2006/10/20 02:06 PM
                                      PSRicardo B2006/10/20 02:12 PM
                                        PSTzvetan Mikov2006/10/20 03:30 PM
                          Language safety in a multithread environmentGabriele Svelto2006/10/20 01:26 AM
                            Language safety in a multithread environmentTzvetan Mikov2006/10/20 01:34 PM
                              Language safety in a multithread environmentS. Rao2006/10/20 08:39 PM
                                Language safety in a multithread environmentTzvetan Mikov2006/10/21 09:39 AM
                                  Language safety in a multithread environmentS. Rao2006/10/21 03:54 PM
                                    Language safety in a multithread environmentRicardo B2006/10/21 04:45 PM
                                    Language safety in a multithread environmentTzvetan Mikov2006/10/22 09:42 AM
                                      Language safety in a multithread environmentRob Thorpe2006/10/23 09:35 AM
                                        Language safety in a multithread environmentLinus Torvalds2006/10/23 04:06 PM
                                          Language safety in a multithread environmentTzvetan Mikov2006/10/23 11:55 PM
                                            Language safety in a multithread environmentLinus Torvalds2006/10/24 07:35 AM
                                              Language safety in a multithread environmentTzvetan Mikov2006/10/24 11:26 AM
                                                ClarificationTzvetan Mikov2006/10/24 12:15 PM
                                                Language safety in a multithread environmentLinus Torvalds2006/10/25 07:37 AM
                                                  Language safety in a multithread environmentRob Thorpe2006/10/25 07:52 AM
                                                  Language safety in a multithread environmentTzvetan Mikov2006/10/25 09:01 AM
                                                    Language safety in a multithread environmentLinus Torvalds2006/10/25 05:24 PM
                                                      Language safety in a multithread environmentS. Rao2006/10/25 06:08 PM
                                                        Other approachesRob Thorpe2006/10/26 10:09 AM
                                                          Hang on I forgot the other approachesRob Thorpe2006/10/26 10:27 AM
                                                            Hang on I forgot the other approachesS. Rao2006/10/26 02:16 PM
                                                      Language safety in a multithread environmentGabriele Svelto2006/10/26 03:56 AM
                                                        Language safety in a multithread environmentLinus Torvalds2006/10/26 07:52 AM
                                                          Language safety in a multithread environmentGabriele Svelto2006/10/26 08:11 AM
                                                            "Safety" and different types of safetyRob Thorpe2006/10/26 08:58 AM
                                                              "Safety" and different types of safetyLinus Torvalds2006/10/26 09:26 AM
                                                                "Safety" and different types of safetyRob Thorpe2006/10/26 09:50 AM
                                                                  "Safety" and different types of safetyTzvetan Mikov2006/10/26 10:56 AM
                                                                    Exactly!Gabriele Svelto2006/10/27 12:29 AM
                                                                  message passing languagesFoo_2006/10/28 01:19 AM
                                                        Language safety in a multithread environmentRob Thorpe2006/10/26 10:45 AM
                                                          RecapTzvetan Mikov2006/10/26 11:19 AM
                                                            Information and ickiness on JavaRob Thorpe2006/10/27 04:38 AM
                                                              Excellent threadJasonB2006/10/27 02:57 PM
                                                                Excellent threadsp2006/10/28 12:38 AM
                                                              Information and ickiness on JavaTzvetan Mikov2006/10/27 05:12 PM
                                                      Language safety in a multithread environmentTzvetan Mikov2006/10/26 08:17 AM
                                                        Language safety in a multithread environmentLinus Torvalds2006/10/26 08:57 AM
                                                          Language safety in a multithread environmentRob Thorpe2006/10/26 09:38 AM
                                                            Language safety in a multithread environmentS. Rao2006/10/26 02:51 PM
                                                              Language safety in a multithread environmentRob Thorpe2006/10/27 01:26 AM
                                                                Language safety in a multithread environmentLinus Torvalds2006/10/27 08:40 AM
                                                                  Language safety in a multithread environmentRob Thorpe2006/10/27 09:06 AM
                                                                    Language safety in a multithread environmentLinus Torvalds2006/10/27 10:53 AM
                                                                      Language safety in a multithread environmentrwessel2006/10/27 03:21 PM
                                                                        Explicit vs implicit barriersTzvetan Mikov2006/10/27 05:39 PM
                                                                          Explicit vs implicit barriersLinus Torvalds2006/10/27 06:28 PM
                                                                            Explicit vs implicit barriersTzvetan Mikov2006/10/28 06:02 PM
                                                                              Explicit vs implicit barriersLinus Torvalds2006/10/28 07:55 PM
                                                                                Explicit vs implicit barriersRob Thorpe2006/10/31 12:37 PM
                                                                            Explicit vs implicit barriersRob Thorpe2006/10/31 12:15 PM
                                                                          Explicit vs implicit barriersrwessel2006/10/27 06:39 PM
                                                                      Why OoO stores are evil but OoO loads are o.k.?Michael S2006/10/28 02:10 PM
                                                                        Why OoO stores are evil but OoO loads are o.k.?Linus Torvalds2006/10/28 04:29 PM
                                                                          Why OoO stores are evil but OoO loads are o.k.?Ricardo B2006/10/30 06:36 AM
                                                                            Why OoO stores are evil but OoO loads are o.k.?Linus Torvalds2006/10/30 09:57 AM
                                                                              Why OoO stores are evil but OoO loads are o.k.?Tzvetan Mikov2006/10/30 11:55 AM
                                                                                Why OoO stores are evil but OoO loads are o.k.?Michael S2006/10/30 12:14 PM
                                                                                  Why OoO stores are evil but OoO loads are o.k.?Tzvetan Mikov2006/10/30 12:20 PM
                                                                                    Why OoO stores are evil but OoO loads are o.k.?Michael S2006/10/30 01:11 PM
                                                                                      A reference would be nice :-) (NT)Tzvetan Mikov2006/10/30 01:32 PM
                                                                                        A reference Michael S2006/10/30 03:37 PM
                                                                                          A reference Tzvetan Mikov2006/11/03 08:57 PM
                                                                                            check your e-mbox (NT)Michael S2006/11/04 12:47 PM
                                                                                      Why OoO stores are evil but OoO loads are o.k.?David Kanter2006/10/30 01:40 PM
                                                                                        Why OoO stores are evil but OoO loads are o.k.?Michael S2006/10/30 02:28 PM
                                                                                          Why OoO stores are evil but OoO loads are o.k.?David Kanter2006/10/30 02:43 PM
                                                                                            Why OoO stores are evil but OoO loads are o.k.?Michael S2006/10/30 04:36 PM
                                                                                              Why OoO stores are evil but OoO loads are o.k.?David Kanter2006/10/30 10:14 PM
                                                                                Why OoO stores are evil but OoO loads are o.k.?Linus Torvalds2006/10/30 12:53 PM
                                                                      Language safety in a multithread environmentRob Thorpe2006/10/31 11:25 AM
                                                                        Language safety in a multithread environmentLinus Torvalds2006/10/31 12:59 PM
                                                                          Language safety in a multithread environmentRob Thorpe2006/10/31 01:38 PM
                                                                            Language safety in a multithread environmentLinus Torvalds2006/10/31 02:02 PM
                                                                              Language safety in a multithread environmentLinus Torvalds2006/10/31 03:54 PM
                                                                                Will reply tommorrow, very busy today (NT)Rob Thorpe2006/11/01 11:14 AM
                                                                              Language safety in a multithread environmentRob Thorpe2006/11/02 01:30 PM
                                                                                Language safety in a multithread environmentrwessel2006/11/02 02:06 PM
                                                                                  Language safety in a multithread environmentGabriele Svelto2006/11/03 02:39 AM
                                                                                    Language safety in a multithread environmentLinus Torvalds2006/11/03 09:40 AM
                                                                                      Language safety in a multithread environmentGabriele Svelto2006/11/03 10:12 AM
                                                                                        Language safety in a multithread environmentLinus Torvalds2006/11/03 01:20 PM
                                                                                          Language safety in a multithread environmentGabriele Svelto2006/11/06 03:42 AM
                                                                                      Language safety in a multithread environmentEric Bron2006/11/04 04:47 AM
                                                                                        Language safety in a multithread environmentGabriele Svelto2006/11/06 04:13 AM
                                                                                      Language safety in a multithread environmentWilco2006/11/04 12:29 PM
                                                                                        Language safety in a multithread environmentRicardo B2006/11/04 02:54 PM
                                                                                        Language safety in a multithread environmentGabriele Svelto2006/11/06 03:54 AM
                                                                                          Language safety in a multithread environmentWilco2006/11/06 12:26 PM
                                                                                            Language safety in a multithread environmentGabriele Svelto2006/11/07 01:54 AM
                                                                                              Language safety in a multithread environmentWilco2006/11/07 04:34 PM
                                                                                                Language safety in a multithread environmentGabriele Svelto2006/11/08 02:29 AM
                                                                                      Language safety in a multithread environmentrwessel2006/11/04 10:13 PM
                                                                                        Language safety in a multithread environmentrwessel2006/11/04 10:23 PM
                                                                                      Language safety in a multithread environmentMichael S2006/11/05 04:05 AM
                                                                                        Language safety in a multithread environmentLinus Torvalds2006/11/05 10:14 AM
                                                                                          unaligned SSE testsEric Bron2006/11/05 02:26 PM
                                                                                            unaligned SSE testsMichael S2006/11/05 03:47 PM
                                                                                              unaligned SSE testsEric Bron2006/11/05 04:23 PM
                                                                                                unaligned SSE testsMichael S2006/11/05 05:03 PM
                                                                                                  unaligned SSE testsEric Bron2006/11/05 05:28 PM
                                                                                                    Now results make sense. How about Psc? (NT)Michael S2006/11/05 05:37 PM
                                                                                                      tomorrow, it's 01:43 PM where I'm (NT)Eric Bron2006/11/05 05:44 PM
                                                                                                        I mean 01:43 AM (NT)Eric Bron2006/11/05 05:45 PM
                                                                                                      PSC scoresEric Bron2006/11/06 02:25 AM
                                                                                                        PSC scoresMichael S2006/11/06 04:28 AM
                                                                                                          PSC scoresIan Ameline2006/11/06 09:00 AM
                                                                                                            meaningful performance gainMichael S2006/11/06 09:33 AM
                                                                                                              meaningful performance gainLinus Torvalds2006/11/06 11:15 AM
                                                                                                                Dynamically resolved alignmentDavid Kanter2006/11/06 12:49 PM
                                                                                                                  Dynamically resolved alignmentRicardo B2006/11/06 01:46 PM
                                                                                                                  Dynamically resolved alignmentLinus Torvalds2006/11/06 01:48 PM
                                                                                                                meaningful performance gainEric Bron2006/11/07 02:23 AM
                                                                                                        RE: "I suppose we will have to continue to align" ...Not really :)redpriest2006/11/06 05:11 PM
                                                                                                          Your point?Michael S2006/11/06 05:47 PM
                                                                                                            Actually Michael, it's quite a bit more than that.redpriest2006/11/06 06:30 PM
                                                                                                              Actually Michael, it's quite a bit more than that.anonymous2006/11/06 08:36 PM
                                                                                                                Actually Michael, it's quite a bit more than that.Linus Torvalds2006/11/06 09:01 PM
                                                                                                                  Actually Michael, it's quite a bit more than that.Rob Thorpe2006/11/07 03:31 AM
                                                                                                                  Actually Michael, it's quite a bit more than that.anonymous2006/11/07 07:27 AM
                                                                                                              link vs linqMichael S2006/11/07 02:04 AM
                                                                                                                link vs linqanonymous2006/11/07 07:13 AM
                                                                                                                  Thank you (NT)Michael S2006/11/07 08:04 AM
                                                                                                          Barcelona dreamsEric Bron2006/11/07 01:08 AM
                                                                                          Language safety in a multithread environmentWilco2006/11/05 03:14 PM
                                                                                            Language safety in a multithread environmentRicardo B2006/11/05 03:56 PM
                                                                                              Language safety in a multithread environmentWilco2006/11/05 06:52 PM
                                                                                                Language safety in a multithread environmentRicardo B2006/11/05 09:09 PM
                                                                                                  Language safety in a multithread environmentWilco2006/11/06 02:25 PM
                                                                                                    Language safety in a multithread environmentRicardo B2006/11/06 03:48 PM
                                                                                                      Language safety in a multithread environmentWilco2006/11/06 04:44 PM
                                                                                                        Language safety in a multithread environmentRicardo B2006/11/06 04:53 PM
                                                                                                        A common problemRob Thorpe2006/11/07 09:45 AM
                                                                                                          A common problemWilco2006/11/09 04:46 PM
                                                                                                            A common problemRob Thorpe2006/11/10 08:29 AM
                                                                                                              A common problemrwessel2006/11/13 04:47 PM
                                                                                                                A common problemWilco2006/11/13 05:51 PM
                                                                                                                  A common problemRob Thorpe2006/11/14 03:38 AM
                                                                                                                    A common problemLinus Torvalds2006/11/14 09:37 AM
                                                                                                                      A common problemRob Thorpe2006/11/14 11:18 AM
                                                                                                                        A common problemagony2006/11/14 02:57 PM
                                                                                                                          A common problemrwessel2006/11/14 04:13 PM
                                                                                                                            A common problemAndi Kleen2006/11/15 04:24 AM
                                                                                                                              A common problemrwessel2006/11/15 04:42 PM
                                                                                                                        A common problemDoug Siebert2006/11/14 09:50 PM
                                                                                                                          x86 versus other platformsDavid Kanter2006/11/15 12:58 AM
                                                                                                                            x86 versus other platformsj2006/11/15 01:57 AM
                                                                                                                          A common problemRob Thorpe2006/11/15 11:56 AM
                                                                                                                            A common problemWilco2006/11/15 01:54 PM
                                                                                                                              A common problemCarlie Coats2006/11/16 06:44 AM
                                                                                                                              A common problemLinus Torvalds2006/11/16 10:03 AM
                                                                                                                      A common problemCarlie Coats2006/11/16 06:38 AM
                                                                                                                        A common problemRob Thorpe2006/11/16 07:29 AM
                                                                                                                    A common problemWilco2006/11/15 02:13 PM
                                                                                                                      A common problemRob Thorpe2006/11/16 09:20 AM
                                                                                                                        A common problemrwessel2006/11/16 04:27 PM
                                                                                                                        A common problemWilco2006/11/17 02:20 PM
                                                                                                                          A common problemRob Thorpe2006/11/20 04:14 AM
                                                                                          You are aiming too lowMichael S2006/11/05 04:19 PM
                                                                                            And you're aiming quite highRob Thorpe2006/11/06 08:00 AM
                                                                                    Language safety in a multithread environmentWilco2006/11/04 11:20 AM
                                                                                      Language safety in a multithread environmentGabriele Svelto2006/11/06 04:10 AM
                                                                                        Language safety in a multithread environmentWilco2006/11/06 10:59 AM
                                                                                          Language safety in a multithread environmentGabriele Svelto2006/11/08 02:47 AM
                                                                                            Language safety in a multithread environmentWilco2006/11/13 05:13 PM
                                                                                              Language safety in a multithread environmentGabriele Svelto2006/11/14 02:15 AM
                                                                                                Language safety in a multithread environmentWilco2006/11/17 02:51 PM
                                                                                    Language safety in a multithread environmentrwessel2006/11/04 10:11 PM
                                                                                  Language safety in a multithread environmentRob Thorpe2006/11/03 09:58 AM
                                                                  Language safety in a multithread environmentbandwidth2006/10/27 06:47 PM
                                                                    Language safety in a multithread environmentLinus Torvalds2006/10/27 07:52 PM
                                                                      Language safety in a multithread environmentLinus Torvalds2006/10/27 08:10 PM
                                                                        Language safety in a multithread environmentbandwidth2006/10/28 03:17 AM
                                                                      Language safety in a multithread environmentbandwidth2006/10/28 03:09 AM
                                                                        Language safety in a multithread environmentLinus Torvalds2006/10/28 09:23 AM
                                                                      Language safety in a multithread environmentGabriele Svelto2006/10/30 03:26 AM
                                                                        Language safety in a multithread environmentRicardo B2006/10/30 06:52 AM
                                                                        Language safety in a multithread environmentJasonB2006/10/30 07:12 AM
                                                                          Language safety in a multithread environmentGabriele Svelto2006/10/30 07:28 AM
                                                                            Language safety in a multithread environmentJasonB2006/10/30 08:32 AM
                                                                              Language safety in a multithread environmentGabriele Svelto2006/10/30 08:48 AM
                                                                                Language safety in a multithread environmentJasonB2006/10/30 09:21 AM
                                                                          Language safety in a multithread environmentRicardo B2006/10/30 07:31 AM
                                                                            Language safety in a multithread environmentGabriele Svelto2006/10/30 07:43 AM
                                                                              Language safety in a multithread environmentRicardo B2006/10/30 07:54 AM
                                                                                Language safety in a multithread environmentGabriele Svelto2006/10/30 08:02 AM
                                                                                  Language safety in a multithread environmentRicardo B2006/10/30 08:12 AM
                                                                                    Language safety in a multithread environmentGabriele Svelto2006/10/30 08:29 AM
                                                                                      Language safety in a multithread environmentRicardo B2006/10/30 08:40 AM
                                                                                Language safety in a multithread environmentdraugaz2006/10/30 12:31 PM
                                                                              Language safety in a multithread environmentLinus Torvalds2006/10/30 10:09 AM
                                                                                Language safety in a multithread environmentGabriele Svelto2006/10/31 02:01 AM
                                                                                  Language safety in a multithread environmentLinus Torvalds2006/10/31 08:59 AM
                                                                    Language safety in a multithread environmentpgerassi2006/10/27 08:00 PM
                                                                      Language safety in a multithread environmentbandwidth2006/10/28 03:25 AM
                                                                        Language safety in a multithread environmentpgerassi2006/10/31 01:32 AM
                                                                      Language safety in a multithread environmentRob Thorpe2006/10/31 06:52 AM
                                                        pythonFoo_2006/10/28 01:51 AM
                                                          pythonTzvetan Mikov2006/10/28 04:55 PM
                                                            pythonFoo_2006/10/29 03:51 AM
                                                          pythonRob Thorpe2006/10/31 05:01 AM
                                        Language safety in a multithread environmentTzvetan Mikov2006/10/24 10:53 AM
                                          Language safety in a multithread environmentRob Thorpe2006/10/25 01:00 AM
                                          Language safety in a multithread environment (Lock-free structures)Ray2006/10/28 11:25 AM
                                            Language safety in a multithread environment (Lock-free structures)Linus Torvalds2006/10/28 11:58 AM
                                              Language safety in a multithread environment (Lock-free structures)Ray2006/10/28 04:47 PM
                                                Language safety in a multithread environment (Lock-free structures)Linus Torvalds2006/10/28 08:02 PM
                                        Language safety in a multithread environmentJuho Snellman2006/10/25 03:59 AM
                                          Language safety in a multithread environmentRob Thorpe2006/10/25 04:38 AM
                                            Language safety in a multithread environmentJuho Snellman2006/10/25 06:38 AM
                                              Language safety in a multithread environmentRob Thorpe2006/10/25 07:06 AM
                                                More on this topicRob Thorpe2006/10/25 08:41 AM
                                                  More on this topicTzvetan Mikov2006/10/25 10:17 AM
                                                    More on this topicRob Thorpe2006/10/26 02:02 AM
                                                Language safety in a multithread environmentJuho Snellman2006/10/25 10:33 AM
                                                  Language safety in a multithread environmentRob Thorpe2006/10/26 01:48 AM
                                      Language safety in a multithread environmentS. Rao2006/10/23 03:40 PM
                                        Language safety in a multithread environmentTzvetan Mikov2006/10/23 11:38 PM
                                        Language safety in a multithread environmentGabriele Svelto2006/10/24 01:02 AM
                                          Language safety in a multithread environmentS. Rao2006/10/24 12:40 PM
                                        Comparison to stack allocationRob Thorpe2006/10/24 03:09 AM
                                          Comparison to stack allocationS. Rao2006/10/24 12:32 PM
                                            Exactly, see my other post (NT)Rob Thorpe2006/10/25 12:53 AM
                          Language safety in a multithread environmentDavid Wragg2006/10/20 02:46 AM
                            Language safety in a multithread environmentTzvetan Mikov2006/10/21 09:24 AM
                          Ugh, evil problemRob Thorpe2006/10/20 03:56 AM
                            Ugh, evil problemGabriele Svelto2006/10/20 04:38 AM
                              Ugh, evil problemRob Thorpe2006/10/20 05:47 AM
                                Ugh, evil problemGabriele Svelto2006/10/20 05:54 AM
                                Ugh, evil problemRicardo B2006/10/20 06:43 AM
                            Ugh, evil problemJasonB2006/10/20 06:17 AM
                              Ugh, evil problemS. Rao2006/10/20 08:09 PM
                                Ugh, evil problemJasonB2006/10/21 07:58 AM
                                SecondedRob Thorpe2006/10/23 01:53 AM
                          Copying GC Rob Thorpe2006/10/23 02:51 AM
                            Copying GC Tzvetan Mikov2006/10/23 11:13 PM
                              Copying GC Rob Thorpe2006/10/24 01:22 AM
              Python + native extensionsFoo_2006/10/18 02:29 PM
                Python + native extensionssp2006/10/19 01:05 AM
  z9 - Power5 connection?foobar2006/10/17 01:15 PM
    z9 - Power5 connection?David Kanter2006/10/17 02:03 PM
      z9 - Power5 connection?foobar2006/10/17 02:33 PM
        z9 - Power5 connection?rwessel2006/10/17 07:39 PM
          z9 - Power5 connection?foobar2006/10/17 08:38 PM
            Sounds like I should edit the article...David Kanter2006/10/17 10:48 PM
            z9 - Power5 connection?Jesper Frimann2006/10/17 11:59 PM
Reply to this Topic
Name:
Email:
Topic:
Body: No Text
How do you spell avocado?