Line swapping scheme to reduce back invalidations in a snoop filter

A snoop filter 103 is provided in a hub controller (101, see fig 1) which manages the movement of data between multiple processors (107, 111, see fig 1) and system memory (105, see fig 1). The snoop filter comprises a cache state storage structure 209 which is logically or physically subdivided into...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: KEITH PFLEDERER, KAI CHENG, BAHAA FAHIM, SUNDARAM CHINTHAMANI, MALCOLM MANDVIWALLA
Format: Patent
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page
container_issue
container_start_page
container_title
container_volume
creator KEITH PFLEDERER
KAI CHENG
BAHAA FAHIM
SUNDARAM CHINTHAMANI
MALCOLM MANDVIWALLA
description A snoop filter 103 is provided in a hub controller (101, see fig 1) which manages the movement of data between multiple processors (107, 111, see fig 1) and system memory (105, see fig 1). The snoop filter comprises a cache state storage structure 209 which is logically or physically subdivided into a number of affinities 211A-211D in which one affinity may be provided for each processor in the system. When a request for data is received from a processor of the plurality of processors, a cache entry location is determined based, at least in part, on the request. The request may contain a way number or way hint. The data is then stored in a cache corresponding to the processor at the cache entry location, and a coherency record corresponding to the data is stored in the affinity corresponding to the cache. Storing the coherency record in an affinity may comprise storing the record at a randomly selected location or at a location selected in accordance with a way-hint replacement policy. The method may additionally determine an occurrence of a cache hit at another cache entry location of another cache in which case storing the coherency record involves swapping the coherency record with the coherency record in the affinity corresponding to the other cache. Invalidation messages are sent to processors when entries in the affinities corresponding to the processors caches must be evicted to provide for the storage of a new coherency record.
format Patent
fullrecord <record><control><sourceid>epo_EVB</sourceid><recordid>TN_cdi_epo_espacenet_GB2444818A</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>GB2444818A</sourcerecordid><originalsourceid>FETCH-epo_espacenet_GB2444818A3</originalsourceid><addsrcrecordid>eNrjZHD2ycxLVSguTywoyMxLVyhOzkjNTVUoyVcoSk0pTU5VSEpMzlbIzCtLzMlMSSzJzM8rBvIUEhWK8_LzCxTSMnNKUot4GFjTEnOKU3mhNDeDvJtriLOHbmpBfnxqcUFicmpeakm8u5ORiYmJhaGFozFhFQCR8DFI</addsrcrecordid><sourcetype>Open Access Repository</sourcetype><iscdi>true</iscdi><recordtype>patent</recordtype></control><display><type>patent</type><title>Line swapping scheme to reduce back invalidations in a snoop filter</title><source>esp@cenet</source><creator>KEITH PFLEDERER ; KAI CHENG ; BAHAA FAHIM ; SUNDARAM CHINTHAMANI ; MALCOLM MANDVIWALLA</creator><creatorcontrib>KEITH PFLEDERER ; KAI CHENG ; BAHAA FAHIM ; SUNDARAM CHINTHAMANI ; MALCOLM MANDVIWALLA</creatorcontrib><description>A snoop filter 103 is provided in a hub controller (101, see fig 1) which manages the movement of data between multiple processors (107, 111, see fig 1) and system memory (105, see fig 1). The snoop filter comprises a cache state storage structure 209 which is logically or physically subdivided into a number of affinities 211A-211D in which one affinity may be provided for each processor in the system. When a request for data is received from a processor of the plurality of processors, a cache entry location is determined based, at least in part, on the request. The request may contain a way number or way hint. The data is then stored in a cache corresponding to the processor at the cache entry location, and a coherency record corresponding to the data is stored in the affinity corresponding to the cache. Storing the coherency record in an affinity may comprise storing the record at a randomly selected location or at a location selected in accordance with a way-hint replacement policy. The method may additionally determine an occurrence of a cache hit at another cache entry location of another cache in which case storing the coherency record involves swapping the coherency record with the coherency record in the affinity corresponding to the other cache. Invalidation messages are sent to processors when entries in the affinities corresponding to the processors caches must be evicted to provide for the storage of a new coherency record.</description><language>eng</language><subject>CALCULATING ; COMPUTING ; COUNTING ; ELECTRIC DIGITAL DATA PROCESSING ; PHYSICS</subject><creationdate>2008</creationdate><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://worldwide.espacenet.com/publicationDetails/biblio?FT=D&amp;date=20080618&amp;DB=EPODOC&amp;CC=GB&amp;NR=2444818A$$EHTML$$P50$$Gepo$$Hfree_for_read</linktohtml><link.rule.ids>230,308,780,885,25563,76318</link.rule.ids><linktorsrc>$$Uhttps://worldwide.espacenet.com/publicationDetails/biblio?FT=D&amp;date=20080618&amp;DB=EPODOC&amp;CC=GB&amp;NR=2444818A$$EView_record_in_European_Patent_Office$$FView_record_in_$$GEuropean_Patent_Office$$Hfree_for_read</linktorsrc></links><search><creatorcontrib>KEITH PFLEDERER</creatorcontrib><creatorcontrib>KAI CHENG</creatorcontrib><creatorcontrib>BAHAA FAHIM</creatorcontrib><creatorcontrib>SUNDARAM CHINTHAMANI</creatorcontrib><creatorcontrib>MALCOLM MANDVIWALLA</creatorcontrib><title>Line swapping scheme to reduce back invalidations in a snoop filter</title><description>A snoop filter 103 is provided in a hub controller (101, see fig 1) which manages the movement of data between multiple processors (107, 111, see fig 1) and system memory (105, see fig 1). The snoop filter comprises a cache state storage structure 209 which is logically or physically subdivided into a number of affinities 211A-211D in which one affinity may be provided for each processor in the system. When a request for data is received from a processor of the plurality of processors, a cache entry location is determined based, at least in part, on the request. The request may contain a way number or way hint. The data is then stored in a cache corresponding to the processor at the cache entry location, and a coherency record corresponding to the data is stored in the affinity corresponding to the cache. Storing the coherency record in an affinity may comprise storing the record at a randomly selected location or at a location selected in accordance with a way-hint replacement policy. The method may additionally determine an occurrence of a cache hit at another cache entry location of another cache in which case storing the coherency record involves swapping the coherency record with the coherency record in the affinity corresponding to the other cache. Invalidation messages are sent to processors when entries in the affinities corresponding to the processors caches must be evicted to provide for the storage of a new coherency record.</description><subject>CALCULATING</subject><subject>COMPUTING</subject><subject>COUNTING</subject><subject>ELECTRIC DIGITAL DATA PROCESSING</subject><subject>PHYSICS</subject><fulltext>true</fulltext><rsrctype>patent</rsrctype><creationdate>2008</creationdate><recordtype>patent</recordtype><sourceid>EVB</sourceid><recordid>eNrjZHD2ycxLVSguTywoyMxLVyhOzkjNTVUoyVcoSk0pTU5VSEpMzlbIzCtLzMlMSSzJzM8rBvIUEhWK8_LzCxTSMnNKUot4GFjTEnOKU3mhNDeDvJtriLOHbmpBfnxqcUFicmpeakm8u5ORiYmJhaGFozFhFQCR8DFI</recordid><startdate>20080618</startdate><enddate>20080618</enddate><creator>KEITH PFLEDERER</creator><creator>KAI CHENG</creator><creator>BAHAA FAHIM</creator><creator>SUNDARAM CHINTHAMANI</creator><creator>MALCOLM MANDVIWALLA</creator><scope>EVB</scope></search><sort><creationdate>20080618</creationdate><title>Line swapping scheme to reduce back invalidations in a snoop filter</title><author>KEITH PFLEDERER ; KAI CHENG ; BAHAA FAHIM ; SUNDARAM CHINTHAMANI ; MALCOLM MANDVIWALLA</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-epo_espacenet_GB2444818A3</frbrgroupid><rsrctype>patents</rsrctype><prefilter>patents</prefilter><language>eng</language><creationdate>2008</creationdate><topic>CALCULATING</topic><topic>COMPUTING</topic><topic>COUNTING</topic><topic>ELECTRIC DIGITAL DATA PROCESSING</topic><topic>PHYSICS</topic><toplevel>online_resources</toplevel><creatorcontrib>KEITH PFLEDERER</creatorcontrib><creatorcontrib>KAI CHENG</creatorcontrib><creatorcontrib>BAHAA FAHIM</creatorcontrib><creatorcontrib>SUNDARAM CHINTHAMANI</creatorcontrib><creatorcontrib>MALCOLM MANDVIWALLA</creatorcontrib><collection>esp@cenet</collection></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>KEITH PFLEDERER</au><au>KAI CHENG</au><au>BAHAA FAHIM</au><au>SUNDARAM CHINTHAMANI</au><au>MALCOLM MANDVIWALLA</au><format>patent</format><genre>patent</genre><ristype>GEN</ristype><title>Line swapping scheme to reduce back invalidations in a snoop filter</title><date>2008-06-18</date><risdate>2008</risdate><abstract>A snoop filter 103 is provided in a hub controller (101, see fig 1) which manages the movement of data between multiple processors (107, 111, see fig 1) and system memory (105, see fig 1). The snoop filter comprises a cache state storage structure 209 which is logically or physically subdivided into a number of affinities 211A-211D in which one affinity may be provided for each processor in the system. When a request for data is received from a processor of the plurality of processors, a cache entry location is determined based, at least in part, on the request. The request may contain a way number or way hint. The data is then stored in a cache corresponding to the processor at the cache entry location, and a coherency record corresponding to the data is stored in the affinity corresponding to the cache. Storing the coherency record in an affinity may comprise storing the record at a randomly selected location or at a location selected in accordance with a way-hint replacement policy. The method may additionally determine an occurrence of a cache hit at another cache entry location of another cache in which case storing the coherency record involves swapping the coherency record with the coherency record in the affinity corresponding to the other cache. Invalidation messages are sent to processors when entries in the affinities corresponding to the processors caches must be evicted to provide for the storage of a new coherency record.</abstract><oa>free_for_read</oa></addata></record>
fulltext fulltext_linktorsrc
identifier
ispartof
issn
language eng
recordid cdi_epo_espacenet_GB2444818A
source esp@cenet
subjects CALCULATING
COMPUTING
COUNTING
ELECTRIC DIGITAL DATA PROCESSING
PHYSICS
title Line swapping scheme to reduce back invalidations in a snoop filter
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-11T17%3A44%3A32IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-epo_EVB&rft_val_fmt=info:ofi/fmt:kev:mtx:patent&rft.genre=patent&rft.au=KEITH%20PFLEDERER&rft.date=2008-06-18&rft_id=info:doi/&rft_dat=%3Cepo_EVB%3EGB2444818A%3C/epo_EVB%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_id=info:pmid/&rfr_iscdi=true