Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 31 Mar 2002 09:29:05 -0800 (PST)
From:      John Polstra <jdp@polstra.com>
To:        smp@freebsd.org
Cc:        dillon@apollo.backplane.com
Subject:   Re: RE: Syscall contention tests return, userret() bugs/issues.
Message-ID:  <200203311729.g2VHT5h18352@vashon.polstra.com>
In-Reply-To: <200203292207.g2TM7Fi67491@apollo.backplane.com>
References:  <XFMail.20020329155622.jhb@FreeBSD.org> <200203292207.g2TM7Fi67491@apollo.backplane.com>

next in thread | previous in thread | raw e-mail | index | archive | help
In article <200203292207.g2TM7Fi67491@apollo.backplane.com>, Matthew
Dillon <dillon@apollo.backplane.com> wrote:

>     This won't save you from stalls.  Whenever one cpu writes to
>     the cache, on IA32, it's write-through to main-memory which
>     invalidates all other cpu's caches for that cache line.

No, it's not nearly that bad.  See section 9.2 of the IA-32 Intel
Architecture Software Developer's Manual, Volume 3 (24547203.pdf from
developer.intel.com).  It describes what happens in a couple of
different scenarios, for example:

    Beginning with the P6 family processors, if a processor detects
    (through snooping) that another processor is trying to access a
    memory location that it has modified in its cache, but has not
    yet written back to system memory, the snooping processor will
    signal the other processor (by means of the HITM# signal) that
    the cache line is held in modified state and will preform an
    implicit write-back of the modified data. The implicit write-back
    is transferred directly to the initial requesting processor and
    snooped by the memory controller to assure that system memory has
    been updated. Here, the processor with the valid data may pass
    the data to the other proces-sors without actually writing it to
    system memory; however, it is the responsibility of the memory
    controller to snoop this operation and update memory.

John
-- 
  John Polstra
  John D. Polstra & Co., Inc.                        Seattle, Washington USA
  "Disappointment is a good sign of basic intelligence."  -- Chögyam Trungpa


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-smp" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200203311729.g2VHT5h18352>