CN103970678B - Catalogue designing method and device - Google Patents

Catalogue designing method and device Download PDF

Info

Publication number
CN103970678B
CN103970678B CN201410159502.9A CN201410159502A CN103970678B CN 103970678 B CN103970678 B CN 103970678B CN 201410159502 A CN201410159502 A CN 201410159502A CN 103970678 B CN103970678 B CN 103970678B
Authority
CN
China
Prior art keywords
directory
group
index information
label
catalogue
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410159502.9A
Other languages
Chinese (zh)
Other versions
CN103970678A (en
Inventor
赵亚飞
姚策
褚小伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201410159502.9A priority Critical patent/CN103970678B/en
Publication of CN103970678A publication Critical patent/CN103970678A/en
Application granted granted Critical
Publication of CN103970678B publication Critical patent/CN103970678B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention discloses a catalogue designing method and device and belongs to the technical field of computers. The method comprises the steps of establishing multiple catalogue sets according to the number of cache blocks, wherein each catalogue set comprises multiple catalogue groups, each catalogue group comprises multiple catalogue items, and each catalogue item corresponds to one cache block; configuring labels for the multiple catalogue groups respectively, wherein the labels are used for representing the occupancy states of the cache blocks corresponding to all the catalogue items contained in the catalogue groups; setting indexes for each catalogue set, each catalogue group, each catalogue item and each label respectively; storing the multiple catalogue sets and the multiple labels. According to the catalogue designing method and device, one label can represent the occupancy states of the cache blocks corresponding to all the catalogue items in each catalogue group by configuring the label for the catalogue group, storage space occupied by catalogues is saved, delay of access, of a remote node, to a local memory is reduced, and the performance of a multi-processor system is improved.

Description

Directory design method and device
Technical field
The present invention relates to field of computer technology, particularly to a kind of directory design method and device.
Background technology
In computer realm, a multicomputer system not only includes local node, also includes multiple distant-end nodes.Its In, local node at least includes a Node Controller, one or more local memory.One local memory is typically divided into many Individual cache blocks, the size of each cache blocks is generally 64 bytes or 128 bytes.Store on Node Controller one comprise a plurality of The catalogue of directory entry, every directory entry is used for recording the seizure condition to cache blocks for the distant-end node.When distant-end node request During one local memory, according to the catalogue of storage, Node Controller determines whether that other distant-end nodes occupy asked basis Ground internal memory.And in order that Node Controller can quickly and accurately determine whether that other distant-end nodes occupy is asked How internal memory, carry out directory design, becomes a problem of those skilled in the art's concern.
Prior art, when carrying out directory design, is usually taken three kinds of modes.First kind of way is 1-bit (bit) catalogue Design, a directory entry takies 1bit, represents the occupancy of cache blocks in a directory entry with binary numeral 0 or 1 State;The second way is 2-bit directory design mode, and a directory entry takies 2bit, is entered with two two in a directory entry Number processed represents the seizure condition of cache blocks;Wherein, seizure condition at least include can energy state (represent arbitrarily possible state), Shared state (representing multiple distant-end node shared buffer memory blocks) and invalid state (expression does not have any distant-end node to take cache blocks).The Three kinds of modes are accurate directory design mode, and a directory entry takies multiple bit, and a directory entry includes cache blocks Seizure condition and occupied information.Wherein, be equally divided into can energy state, shared state and invalid state for seizure condition;Occupied information is used for table Show which or which distant-end node occupies this cache blocks.
During realizing the present invention, inventor find prior art at least there is problems in that
No matter it is directed to above-mentioned any directory design mode, when the memory space of local memory is increasing, will generate The directory entry of magnanimity, when storing to the catalogue comprising magnanimity directory entry, will take substantial amounts of memory space.With locally interior As a example the total memory space deposited is 1t (tril), even if then take taking the minimum 1-bit directory design mode of memory space, The directory entry generating also needs 2g (gigabit) memory space to be stored.And take too many memory space and carry out storage catalogue and can exist The defect that the high cost of directory design, complexity are high and technical requirements are high, and also will lead to the visit to local memory for the distant-end node Ask that time delay is excessive, and then have undesirable effect to the performance of multicomputer system.
Content of the invention
In order to solve problem of the prior art, embodiments provide a kind of directory design method and device.Described Technical scheme is as follows:
A kind of first aspect, there is provided directory design method, methods described includes:
According to the number of cache blocks, set up multiple catalogue set, each catalogue set includes multiple directory group, each mesh Record group includes multiple directory entries, and a directory entry is corresponding with cache blocks;
It is respectively the plurality of directory group label allocation, described label is used for identifying all mesh included by described directory group The seizure condition of the record corresponding cache blocks of item;
It is respectively each catalogue set, each directory group, every directory entry and each label setting index.
Store multiple catalogue set and multiple label.
In the first possible implementation of first aspect, described storage multiple catalogue set and multiple label it Afterwards, methods described also includes:
When receiving the memory access request of distant-end node transmission, the target mesh being carried according to described memory access request The tab index information of record item, obtains the label of described target directory item place directory group;
According to the label of described target directory item place directory group, determine accounting for of the described corresponding cache blocks of target directory item Use state;
Based on the seizure condition of the corresponding cache blocks of described target directory item, the internal storage access responding described distant-end node please Ask.
In conjunction with the first possible implementation of first aspect, in the possible implementation of the second of first aspect In, after the multiple catalogue set of described storage and multiple label, methods described also includes:
When receiving the memory access request of distant-end node transmission, the set rope being carried according to described memory access request Fuse ceases, and determines described target directory item place catalogue set;
The directory group index information being carried according to described memory access request, in described target directory item place catalogue set Middle lookup described target directory item place directory group;
If finding described target directory item place directory group, the directory entry carrying according to described memory access request Index information determines described target directory item;
According to the label of described target directory item place directory group, determine accounting for of the described corresponding cache blocks of target directory item Use state;
Based on the seizure condition of the corresponding cache blocks of described target directory item, the internal storage access responding described distant-end node please Ask.
In conjunction with the possible implementation of the second of first aspect, in the third possible implementation of first aspect In, described search described target directory item place directory group in described target directory item place catalogue set after, described side Method also includes:
If not finding described target directory item place directory group, in described target directory item place catalogue set In, search the first directory group, described first directory group is the directory group that whole directory entries are in free state;
If finding described first directory group, according to the corresponding directory group index information of described first directory group and institute State the set index information of target directory item, generate the first tab index information;
According to described first tab index information, obtain the first label;
Update described first label, and corresponding for described first directory group directory group index information is updated to described internal memory The directory group index information that access request carries.
In conjunction with the third possible implementation of first aspect, in the 4th kind of possible implementation of first aspect In, the described set index information according to the corresponding directory group index information of described first directory group and described target directory item, Generate the first tab index information, comprising:
By multiple Data Positions of described directory group index information before multiple data bit of described set index information, It is combined into new data bit;
Described new data bit is defined as the data bit of described first tab index information.
In conjunction with the third possible implementation of first aspect, in the 5th kind of possible implementation of first aspect In, in the described catalogue set at described target directory place, after searching the first directory group, methods described also includes:
If not finding described first directory group, the second directory group is searched according to preset strategy;
According to the set index information of the corresponding directory group index information of described second directory group and described target directory item, Generate the second tab index information;
According to described second tab index information, obtain the second label;
Update described second label, and corresponding for described second directory group directory group index information is updated to described internal memory The directory group index information that access request carries.
A kind of second aspect, there is provided directory design device, described device includes:
Catalogue sets up module, for the number according to cache blocks, sets up multiple catalogue set, each catalogue set includes Multiple directory group, each directory group includes multiple directory entries, and a directory entry is corresponding with cache blocks;
Label configuration module, for being respectively the plurality of directory group label allocation, described label is used for identifying described mesh The seizure condition of the corresponding cache blocks of all directory entries included by record group;
Index setup module, sets for being respectively each catalogue set, each directory group, every directory entry and each label Put index;
Memory module, for storing multiple catalogue set and multiple label.
In the first possible implementation of second aspect, described device also includes:
Label acquisition module, for when receiving the memory access request of distant-end node transmission, visiting according to described internal memory Ask the tab index information of the target directory item that request carries, obtain the label of described target directory item place directory group;
State determining module, for the label according to described target directory item place directory group, determines described target directory The seizure condition of the corresponding cache blocks of item;
Respond module, for the seizure condition based on the corresponding cache blocks of described target directory item, responds described far-end section The memory access request of point.
In conjunction with the first possible implementation of second aspect, in the possible implementation of the second of second aspect In,
Described device also includes:
Catalogue set determining module, for when receiving the memory access request of distant-end node transmission, according to described interior Deposit the set index information that access request carries, determine described target directory item place catalogue set;
Directory group searching modul, for the directory group index information being carried according to described memory access request, in described mesh Described target directory item place directory group is searched in mark directory entry place catalogue set;
Directory entry determining module, for when finding described target directory item place directory group, visiting according to described internal memory Ask that the directory entry index information that request carries determines described target directory item;
Described state determining module, for the label according to described target directory item place directory group, determines described target The seizure condition of the corresponding cache blocks of directory entry;
Described respond module, for the seizure condition based on the corresponding cache blocks of described target directory item, responds described remote The memory access request of end node.
In conjunction with the possible implementation of the second of second aspect, in the third possible implementation of second aspect In, described device also includes:
Described directory group searching modul, is additionally operable to when not finding described target directory item place directory group, described In the catalogue set of target directory item place, search the first directory group, described first directory group is in not accounting for for whole directory entries Directory group with state;
Index information generation module, if for finding described first directory group, according to described first directory group pair The directory group index information answered and the set index information of described target directory item, generate the first tab index information;
Described label acquisition module, for according to described first tab index information, obtaining the first label;
Update module, for updating described first label, and by corresponding for described first directory group directory group index information It is updated to the directory group index information that described memory access request carries.
In conjunction with the third possible implementation of second aspect, in the 4th kind of possible implementation of second aspect In, described index information generation module, for by multiple Data Positions of described directory group index information in described index of set Before multiple data bit of information, it is combined into new data bit;Described new data bit is defined as described first tab indexes The data bit of information.
In conjunction with the third possible implementation of second aspect, in the 5th kind of possible implementation of second aspect In, described device also includes:
Described directory group searching modul, for when not finding described first directory group, searches the according to preset strategy Two directory group;
Index information generation module, for according to the corresponding directory group index information of described second directory group and described target The set index information of directory entry, generates the second tab index information;
Described label acquisition module, for according to described second tab index information, obtaining the second label;
Described update module, for updating described second label, and by corresponding for described second directory group catalogue group index Information updating is the directory group index information that described memory access request carries.
Technical scheme provided in an embodiment of the present invention has the benefit that
In the number according to cache blocks, set up the stratification catalogue set including multiple directory entries and multiple directory group, and Configure after a label for each directory group, can achieve whole corresponding cachings of directory group in one directory group of a tag identifier The seizure condition of block, thus saving the memory space of catalogue occupancy, only just can be deposited to the catalogue generating with internal memory on piece Storage, need not introduce the outer internal memory of piece.Not only save design cost, reduce the complexity of directory design, also reduce far-end section The access time delay to local memory for the point, improves the performance of multicomputer system.
Brief description
For the technical scheme being illustrated more clearly that in the embodiment of the present invention, will make to required in embodiment description below Accompanying drawing be briefly described it should be apparent that, drawings in the following description are only some embodiments of the present invention.
Fig. 1 is a kind of system architecture diagram of multicomputer system provided in an embodiment of the present invention;
Fig. 2 is the corresponding relation figure of a kind of cache blocks provided in an embodiment of the present invention and directory entry;
Fig. 3 is a kind of method flow diagram of directory design provided in an embodiment of the present invention;
Fig. 4 is a kind of method flow diagram of directory design provided in an embodiment of the present invention;
Fig. 5 is the structural representation of the first catalogue set provided in an embodiment of the present invention;
Fig. 6 is the corresponding relation figure of a kind of cache blocks provided in an embodiment of the present invention and label;
Fig. 7 is the structural representation of second catalogue set provided in an embodiment of the present invention;
Fig. 8 is the schematic diagram of the first internal memory physical address provided in an embodiment of the present invention;
Fig. 9 is a kind of method flow diagram of directory access provided in an embodiment of the present invention;
Figure 10 is the schematic diagram of second internal memory physical address provided in an embodiment of the present invention;
Figure 11 is a kind of structural representation of directory design device provided in an embodiment of the present invention.
Specific embodiment
For making the object, technical solutions and advantages of the present invention clearer, below in conjunction with accompanying drawing to embodiment party of the present invention Formula is described in further detail.
Before the embodiment of the present invention is described in detail, first it is introduced to processing system.Referring to Fig. 1, more than one Processor (cpu) system includes local node 100 and multiple distant-end node 101.Local node 100 and each distant-end node 101 pass through network 102 between node is attached.Local node 100 is connected with network between node 102 by Node Controller 103. Wherein, local node 100 includes a Node Controller 103, one or more local memory 104 and a local network 106.Local memory 104 or be connected with Node Controller 103 by local network 106, or directly with Node Controller 103 phase Even.Further, Node Controller 103 is stored with a catalogue 105, or Node Controller 103 and the catalogue 105 that is stored with Storage medium is connected.Node Controller 103 controls local memory 104 by catalogue 105.When distant-end node needs access locally interior When depositing, memory access request (rdma read is asked or write memory request) is passed through network 102 between node from distant-end node 101 and is reached section Base site controller 103.In order to safeguard that buffer consistency (cache coherence) Node Controller needs access catalogue to determine it is No have distant-end node to occupy asked local memory, then decides whether to initiate to intercept message to distant-end node.Further Ground, referring to Fig. 2, catalogue 105 includes multiple directory entries, and each directory entry is corresponding with cache blocks of local memory 104, uses To identify the seizure condition of cache blocks, that is, a directory entry is used for recording the occupied information to cache blocks for the distant-end node.
Fig. 3 is a kind of directory design method provided in an embodiment of the present invention, referring to Fig. 3, side provided in an embodiment of the present invention Method flow process includes:
301st, the number according to cache blocks, sets up multiple catalogue set, and each catalogue set includes multiple directory group, often Individual directory group includes multiple directory entries, and a directory entry is corresponding with cache blocks.
302nd, it is respectively multiple directory group label allocations, all directory entries that label is used for included by list of identifications group correspond to Cache blocks seizure condition.
303rd, it is respectively each catalogue set, each directory group, every directory entry and each label setting index.
304th, multiple catalogue set and multiple label are stored.
Method provided in an embodiment of the present invention, in the number according to cache blocks, sets up and includes multiple directory entries and multiple mesh The stratification catalogue set of record group, and configure after a label for each directory group, can achieve one catalogue of a tag identifier The seizure condition of whole corresponding cache blocks of directory group in group, thus saving the memory space of catalogue occupancy, only uses interior on piece Deposit and just the catalogue generating can be stored, the outer internal memory of piece need not be introduced.Not only save design cost, reduce directory design Complexity, also reduce the access time delay to local memory for the distant-end node, improve the performance of multicomputer system.
Alternatively, after storing multiple catalogue set and multiple label, method also includes:
When receiving the memory access request of distant-end node transmission, the target directory item being carried according to memory access request Tab index information, obtain the label of target directory item place directory group;
According to the label of target directory item place directory group, determine the seizure condition of the corresponding cache blocks of target directory item;
Based on the seizure condition of the corresponding cache blocks of target directory item, respond the memory access request of distant-end node.
Alternatively, after storing multiple catalogue set and multiple label, method also includes:
When receiving the memory access request of distant-end node transmission, believed according to the index of set that memory access request carries Breath, determines the catalogue set of target directory item place;
The directory group index information being carried according to memory access request, searches mesh in the catalogue set of target directory item place Mark directory entry place directory group;
If finding target directory item place directory group, the directory entry index information carrying according to memory access request Determine target directory item;
According to the label of target directory item place directory group, determine the seizure condition of the corresponding cache blocks of target directory item;
Based on the seizure condition of the corresponding cache blocks of target directory item, respond the memory access request of distant-end node.
Alternatively, after searching target directory item place directory group in the catalogue set of target directory item place, method is also Including:
If not finding target directory item place directory group, in the catalogue set of target directory item place, search the One directory group, the first directory group is the directory group that whole directory entries are in free state;
If finding the first directory group, according to the first directory group corresponding directory group index information and target directory item Set index information, generate the first tab index information;
According to the first tab index information, obtain the first label;
Update the first label, and corresponding for the first directory group directory group index information is updated to memory access request and carry Directory group index information.
Alternatively, the set index information according to the first directory group corresponding directory group index information and target directory item, Generate the first tab index information, comprising:
By multiple Data Positions of directory group index information before multiple data bit of set index information, it is combined into new Data bit;
New data bit is defined as the data bit of the first tab index information.
Alternatively, in the catalogue set that target directory is located, after searching the first directory group, method also includes:
If not finding the first directory group, the second directory group is searched according to preset strategy;
According to the set index information of the second directory group corresponding directory group index information and target directory item, generate second Tab index information;
According to the second tab index information, obtain the second label;
Update the second label, and corresponding for the second directory group directory group index information is updated to memory access request and carry Directory group index information.
Above-mentioned all optional technical schemes, can be using the alternative embodiment arbitrarily combining to form the present invention, and here is no longer Repeat one by one.
Fig. 4 is a kind of directory design method provided in an embodiment of the present invention, now with executive agent for Fig. 1 interior joint controller As a example, explanation explained in detail is carried out to directory design mode provided in an embodiment of the present invention.Referring to Fig. 4, the embodiment of the present invention The method flow providing includes:
401st, the number according to cache blocks, sets up multiple catalogue set, and each catalogue set includes multiple directory group, often Individual directory group includes multiple directory entries, and a directory entry is corresponding with cache blocks.
Wherein, cache blocks be typically sized to 64 bytes.Certainly, the size of cache blocks, in addition to above-mentioned 64 bytes, can be also Other sizes, for example, 32 bytes or 128 bytes etc., the present embodiment is not especially limited to the size of cache blocks.Slow determining After the size of counterfoil, the number of the cache blocks of local node depends on total memory space of local node.Total with local node Memory space is 1t, the size of cache blocks is for as a example 64 bytes, then the number of cache blocks is a total ofFor number Numerous cache blocks, need to set up a directory entry for each cache blocks, to record the seizure condition to cache blocks for the distant-end node. Wherein, cache blocks can be taken by a distant-end node, also can be taken by multiple distant-end nodes, also can not be by any far-end section Point takies.When carrying out directory design, we take stratification directory design mode as shown in Figure 5.First, according to cache blocks Number set up multiple catalogue set, afterwards multiple directory group are set in each catalogue set, finally in each directory group The multiple directory entries of middle setting, thus complete the stratification setting of catalogue.So that total memory space of local node is as 1t as a example, then lead to Often set up 1000 catalogue set, in each catalogue set, generally comprise 16 directory group, each directory group includes 1000 Directory entry, the seizure condition of each one cache blocks of directory entry record.Further, since the size being limited to memory space limits, Substantial amounts of directory group generally will not be comprised in one catalogue set.Under normal circumstances, only include in a catalogue set several or Tens directory group.Further, if wanting to improve the design accuracy of catalogue, also can be by reducing the catalogue that each directory entry includes The mode of item number is realized.But reduce the directory entry number that each directory entry includes, then mean the increase of catalogue set, enter And the internal memory that catalogue takies also can increase.In order to pursue design accuracy, storage catalogue can be carried out using the outer internal memory of piece, such as use Sdram (synchronous dynamic random access memory, synchronous DRAM).
402nd, it is respectively multiple directory group label allocations, the directory entry that label is used for included by list of identifications group is corresponding slow The seizure condition of counterfoil.
In embodiments of the present invention, in order to reduce the internal memory usage amount for storage catalogue, increased the design of label.Its In, each label takies 1bit, and each label is corresponding with a directory group, for identifying cache blocks corresponding with this directory group Seizure condition.The catalogue generating in step 401 includes how many directory group, just there are how many labels, multiple labels can Constitute a label vector as shown in Figure 6.This label vector can be carried out to the seizure condition of whole cache blocks of local memory Mark.Continue taking Fig. 5 as a example, because Fig. 5 includes 1000*16=16000 directory group, so the total storage when local memory When space is 1t, altogether need to configure 16000 labels.If a label is 0, all cache blocks that this label is identified are Free state (does not have any distant-end node that cache blocks are taken);If a label is 1, this label is identified All cache blocks be can energy state (refer to arbitrarily possible state, cache blocks may unoccupied, may be by a distant-end node Take, may be taken by multiple distant-end nodes).
Additionally, in the method that first execution the present embodiment provides, namely there is not any distant-end node to local node When cache blocks are taken, whole labels is all 0;When, in subsequent process, the Node Controller of local node receives far During the memory access request that end node sends, label can be updated;That is, when cache blocks are changed into taking shape from free state During state, the label of the corresponding directory entry of this cache blocks will be changed into 1 from 0.Correspondingly, if cache blocks are changed into vacant from seizure condition State, that is, distant-end node releases this cache blocks, then the label of the corresponding directory entry of this cache blocks will be changed into 0 from 1.At this In inventive embodiments, a label just can identify the occupancy shape of the corresponding cache blocks of whole directory entries included by a directory group State, for directory design mode of the prior art, can greatly save the memory space of catalogue occupancy.
403rd, it is respectively each catalogue set, each directory group, every directory entry and each label setting index.
In embodiments of the present invention, because catalogue includes the data of magnanimity, so the seizure condition in query caching block When, if carrying out inquiring about in the way of traveling through, the substantial amounts of time will be consumed.So that total memory space of local memory is as 1t as a example, then Comprise altogether in the catalogue generating 1000 catalogue set, 16000 directory group, 234Individual directory entry, if not to catalogue set, mesh If record group, directory entry and label setting index, then when searching the corresponding target directory item of cache blocks to be visited, by pole It takes.So after carrying out directory design according to above-mentioned steps 401 and step 402, also needing as catalogue set, directory group, mesh Record item and label setting index, so that the position in quick lock in target directory item place catalogue in mass data.
When for each catalogue set, each directory group, every directory entry and each label setting index, can take and use two The mode that system number is indexed.As a example thinking catalogue set setting index, if there are 1000 catalogue set, can use 10 Binary number 1000 catalogue set are indexed.Right with 0000000000,0000000001,0000000010 etc. successively 1000 catalogue set are identified.The setting indexed mode of directory group, directory entry and label indexes with the setting of catalogue set Mode is consistent, and here is omitted.Certainly, except above-mentioned in the way of binary number is indexed in addition to, also can take other ropes Draw mode, the present embodiment is not especially limited to this.The embodiment of the present invention is only lifted in the way of binary number is indexed Example explanation.Additionally, in catalogue as shown in Figure 5, in each catalogue set in addition to including each directory group, may also include each The corresponding directory group index information (tag) of individual directory group, the catalogue set including directory group index information (tag) is as shown in Figure 7.
404th, multiple catalogue set and multiple label are stored.
In embodiments of the present invention, when storing multiple catalogue set and multiple label, above-mentioned items can be stored in this On the Node Controller of ground node;Also above-mentioned every storage can be on other storage mediums that Node Controller connects.Tool Body takes which kind of storage mode the present embodiment is not especially limited to this.Can depend on the circumstances.Empty with total storage of local node Between for as a example 1t, then adopting the memory consumption of directory design mode label provided in an embodiment of the present invention to be 1tb/64byte/ 1kbit=16mbit;The memory consumption 1k*16*14bit=224kbit of tag;The memory consumption 1k*16*1k* directory entry of directory entry Length=16m* directory entry length.From above-mentioned calculating, this directory design committed memory is limited, completely can be by internal memory on piece To complete.So for compared to existing directory design mode, greatly reducing memory consumption.
It should be noted that after carrying out the directory design of stratification by above-mentioned steps 401 to 404, working as node control When device receives the memory access request of distant-end node transmission, just column catalogue can be entered according to the information carrying in memory access request Access, so that it is determined that the seizure condition of the corresponding cache blocks of target directory item, and according to the corresponding cache blocks of target directory item Seizure condition, the memory access request of response distant-end node.Detailed process is referring to following step 405 to step 407.
405th, when receiving the memory access request of distant-end node transmission, the target mesh being carried according to memory access request The tab index information of record item, obtains the label of target directory item place directory group.
Wherein, memory access request includes the physical address of target memory.The physical address of this target memory includes Tab index information, directory entry index information and cache blocks index information.Referring to Fig. 8, the total memory space with local node is As a example 1t, then the physical address of target memory has 40bit.Wherein, tab index information occupies 24bit, and catalogue entry index is believed Breath occupies 10bit, and cache blocks index information occupies 6bit.
In embodiments of the present invention, Node Controller receive distant-end node transmission memory access request after, by root Enter the access of column catalogue according to the relevant information that this memory access request carries, namely search target in the catalogue being stored in itself Directory entry (the request corresponding directory entry of cache blocks), or search target mesh in the storage medium of the coupled catalogue that is stored with Record item, determines the seizure condition of the corresponding cache blocks of target directory item.And in order to determine the corresponding cache blocks of target directory item Seizure condition, also needs first to determine the label of target directory item place directory group.In the mark obtaining target directory item place directory group During label, due to carrying the tab index information of target directory item in memory access request, and a tab index information can be only One one label of mark, so just can get the label of target directory item place directory group according to this tab index information.? In the embodiment of the present invention, due to being that a directory group distributes a label in step 402, so being located by target directory item The label of directory group, just can determine that the seizure condition of the corresponding cache blocks of target directory item.
406th, the label according to target directory item place directory group, determines the occupancy shape of the corresponding cache blocks of target directory item State.
In embodiments of the present invention, label takies 1bit.If the label of target directory item place directory group is 0, really The corresponding cache blocks of the directory entry that sets the goal are free state, namely do not have any distant-end node corresponding to target directory item Cache blocks are written and read operating;If the label of target directory item place directory group is 1 it is determined that target directory item is corresponding slow Counterfoil be can energy state (arbitrarily possible state), the corresponding cache blocks of target directory item may take by a distant-end node, May be taken by multiple distant-end nodes, or even be likely to not shared by any distant-end node.
407th, the seizure condition based on the corresponding cache blocks of target directory item, the memory access request of response distant-end node.
In embodiments of the present invention, if determining that the corresponding cache blocks of target directory item are vacant according to above-mentioned steps 406 State, then Node Controller can directly distribute the corresponding cache blocks of target directory item to distant-end node, so that distant-end node is carried out Read-write operation.If according to above-mentioned steps 406 determine the corresponding cache blocks of target directory item be can energy state, Node Controller also needs Send to other distant-end nodes in addition to sending memory access request and intercept message, to determine whether distant-end node to target The corresponding cache blocks of directory entry are taken.If Node Controller determines that having other distant-end nodes to occupy target directory item corresponds to Cache blocks, and other distant-end nodes allow share this cache blocks, then Node Controller can directly distribute target directory item correspond to Cache blocks to distant-end node, so that distant-end node is written and read operating.Other distant-end nodes are had to account for if Node Controller determines With the corresponding cache blocks of target directory item, and other distant-end nodes do not allow to share this cache blocks, then Node Controller is not just This cache blocks can be distributed be written and read operating to distant-end node, for this kind of situation, Node Controller can be to transmission internal storage access The distant-end node of request is responded and is accessed failure information, to remind to distant-end node.
Additionally, distant-end node take cache blocks be written and read operation after, typically can release busy immediately cache blocks.And Node Controller is unknown to this situation, needs distant-end node active that cache blocks release message is sent to Node Controller, So that Node Controller enters the renewal of row label according to cache blocks release message.If cache blocks release message is not sent out by distant-end node Give Node Controller, if then other distant-end nodes ask the cache blocks taking before this distant-end node, Node Controller will Corresponding cache blocks will not be distributed to other distant-end nodes.The occurrence of in order to avoid this kind, Node Controller is responding it During the memory access request of his distant-end node, transmission is also needed to intercept message, to determine whether that really having distant-end node to occupy asks The cache blocks asked.
It should be noted that after carrying out stratification directory design, except taking above-mentioned steps 405 to step 407 institute Outside the directory access mode based on tab index information shown, also can be taken based on set index information, directory group index information And the directory access mode of directory entry index information.Detailed process refers to step 901 as shown in Figure 9 to step 910.
901st, when receiving the memory access request of distant-end node transmission, the set rope being carried according to memory access request Fuse ceases, and determines the catalogue set of target directory item place.
Wherein, memory access request includes the physical address of target memory.The physical address of this target memory includes Directory group index information, set index information, directory entry index information and cache blocks index information.Referring to Figure 10, saved with local As a example total memory space of point is 1t, then the physical address of target memory has 40bit.Wherein, directory group index information occupies 14bit, set index information occupies 10bit, and directory entry index information occupies 10bit, and cache blocks index information occupies 6bit.
In embodiments of the present invention, Node Controller receive distant-end node transmission memory access request after, by root Enter the access of column catalogue according to the relevant information that this memory access request carries, namely search target in the catalogue being stored in itself Directory entry (the request corresponding directory entry of cache blocks), or search target mesh in the storage medium of the coupled catalogue that is stored with Record item, determines the seizure condition of the corresponding cache blocks of target directory item.And in order to determine the corresponding cache blocks of target directory item Seizure condition, also needs first to determine the catalogue set of target directory item place.When determining the catalogue set of target directory item place, due to Carry set index information in memory access request, and set index information can one catalogue set of unique mark, institute So that the catalogue set of target directory item place just be can determine that according to this set index information.
902nd, according to directory group index information, the catalogue set of target directory item place is searched target directory item place mesh Record group;If finding target directory item place directory group, execution step 903;If not finding target directory item to be located Directory group, then execution step 905.
In embodiments of the present invention, after determining the catalogue set of target directory item place, next just will be in target directory Target directory item place directory group is searched in item place catalogue set.When searching target directory item place directory group, specifically may be used Using following manner: because each directory group in the catalogue set of target directory item place all corresponds to a directory group index information (tag), so the bibliography information that can carry memory access request is with each of target directory item place catalogue set The directory group index information of directory group is compared;If the bibliography information that memory access request carries is with target directory item In the catalogue set of place, the directory group index information of a directory group is identical, then execute following step 903;If internal storage access please Ask the bibliography information carrying equal with the directory group index information of any one directory group in the catalogue set of target directory item place Differ, then execute following step 905.
903rd, target directory item is determined according to directory entry index information;According to the label of target directory item place directory group, Determine the seizure condition of the corresponding cache blocks of target directory item.
Due to determining the catalogue set of target directory item place according to above-mentioned steps 901, determined according to above-mentioned steps 902 Target directory item place directory group, thus this step only need to carry out positioning according to directory entry index information to target directory item be Can.Because a directory entry index information can carry out unique mark to a directory entry in directory group, so according to directory entry rope Fuse breath traversal target directory item place directory group, just can find target directory item.Due to target directory item place directory group A corresponding label, so according to the label of target directory item place directory group, just can determine that target directory thinks corresponding caching The seizure condition of block.Determine that the mode of the seizure condition of the corresponding cache blocks of target directory item is consistent with above-mentioned steps 406, herein Repeat no more.After having executed this step, execute following step 904.
904th, the seizure condition based on the corresponding cache blocks of target directory item, the memory access request of response distant-end node.
With above-mentioned 407 in the same manner, here is omitted for this step.
905th, in the catalogue set of target directory item place, search the first directory group, the first directory group is whole directory entries It is in the directory group of free state;If finding the first directory group, execution step 907;If not finding first Directory group, then execution step 908.
Due to, in the catalogue set of target directory item place, not finding target directory item place directory group, therefore to enter The replacement operation of column catalogue group, so that subsequent process interior joint controller is according to the occupancy shape of the corresponding cache blocks of target directory item State responds the memory access request of distant-end node.When entering column catalogue replacement operation, first in target directory item place directory set Search the first directory group in conjunction, namely in the first directory group, the corresponding cache blocks of all directory entries are and are accounted for by any distant-end node With;If finding the first directory group in the catalogue set of target directory item place, execute following step 906;If in target mesh Do not find the first directory group in record item place catalogue set, then execute following step 908.
906th, the set index information according to the first directory group corresponding directory group index information and target directory item, generates First tab index information.
In embodiments of the present invention, in the collection according to the first directory group corresponding directory group index information and target directory item Close index information, when generating the first tab index information, following manner specifically can be taken to realize:
By multiple Data Positions of directory group index information before multiple data bit of set index information, it is combined into new Data bit;New data bit is defined as the data bit of the first tab index information.
So that total memory space of local memory is as 1t as a example, then the directory group index information of the first directory group is 14, mesh The set index information of mark directory entry is 10.With the directory group index information of the first directory group for 00000000000011, mesh As a example the set index information of mark directory entry is 1000000001, then the first tab index information is 000000000000111000000001.After having executed this step, execute following step 907.
907th, according to the first tab index information, obtain the first label;Update the first label, and the first directory group is corresponded to Directory group index information be updated to the directory group index information that memory access request carries.
In embodiments of the present invention, because a tab index information can carry out unique mark to a label, so root Index information according to the first label can get the first label in quick multiple labels in storage.Getting the first label Afterwards, the first label is updated, will the first label set to 0.And corresponding for the first directory group directory group index information is updated The directory group index information carrying for memory access request.That is, by corresponding for the first directory group directory group index information and mark Sign index information to be replaced, obtain a new directory group.
908th, the second directory group is searched according to preset strategy.
In embodiments of the present invention, preset strategy can be lru (least recently used minimum use in the recent period) plan Slightly.Namely when searching the second directory group, directory group can be accessed for by minimum for target directory item place catalogue set near-mid term As the second directory group.If the minimum in the recent period directory group that is accessed for exists multiple, such as, recent access times are the catalogue of 0 time Group exists multiple, then can arbitrarily select a directory group as the second directory group in multiple directory group.Wherein, may refer in the recent period work as Front time and previous hour or previous minute or in the previous second between time range, the present embodiment to referred in the recent period when Between range size specifically do not limited.
909th, the set index information according to the second directory group corresponding directory group index information and target directory item, generates Second tab index information.
With above-mentioned steps 906 in the same manner, here is omitted for this step.
910th, according to the second tab index information, obtain the second label;Update the second label, and the second directory group is corresponded to Directory group index information be updated to the directory group index information that memory access request carries.
In embodiments of the present invention, because a tab index information can carry out unique mark to a label, so root Index information according to the second label can get the second label in quick multiple labels in storage.Getting the second label Afterwards, the second label is updated, 1 will be put by the second label.And corresponding for the second directory group directory group index information is updated The directory group index information carrying for memory access request.That is, by corresponding for the second directory group directory group index information and mark Sign index information to be replaced, obtain a new directory group.
It should be noted that local memory is in addition to being controlled by Node Controller, also can be by ha (home Agent, local agent) it is controlled.Wherein, ha be numa (non uniform memory access achitecture, Non-uniform accessing Distributed shared memory technology) node for management system internal memory safeguards cc it is believed that being one in system The Memory Controller Hub of agreement.If local memory 104 is managed by ha in Fig. 1, ha passes through local network 106 and node control Device 103 is connected, then Node Controller 103 is exactly now a network interconnection chip.
Method provided in an embodiment of the present invention, in the number according to cache blocks, sets up and includes multiple directory entries and multiple mesh The stratification catalogue set of record group, and configure after a label for each directory group, can achieve one catalogue of a tag identifier The seizure condition of whole corresponding cache blocks of directory group in group, thus saving the memory space of catalogue occupancy, only uses interior on piece Deposit and just the catalogue generating can be stored, the outer internal memory of piece need not be introduced, not only save design cost, reduce directory design Complexity, also reduce the access time delay to local memory for the distant-end node, improve the performance of multicomputer system.
Figure 11 is a kind of directory design device provided in an embodiment of the present invention, and referring to Figure 11, this device includes: catalogue is set up Module 1101, label configuration module 1102, index setup module 1103, memory module 1104.
Wherein, catalogue sets up module 1101, for the number according to cache blocks, sets up multiple catalogue set, each catalogue Set includes multiple directory group, and each directory group includes multiple directory entries, and a directory entry is corresponding with cache blocks;Mark Label configuration module 1102 catalogue is set up module 1101 and is connected, and for being respectively multiple directory group label allocations, label is used for identifying The seizure condition of the corresponding cache blocks of all directory entries included by directory group;Index setup module 1103 and label configuration module 1102 connections, for being respectively each catalogue set, each directory group, every directory entry and each label setting index;Storage Module 1104 index setup module 1103 connects, for storing multiple catalogue set and multiple label.
Alternatively, this device also includes:
Label acquisition module, for when receiving the memory access request of distant-end node transmission, asking according to internal storage access Seek the tab index information of the target directory item carrying, obtain the label of target directory item place directory group;
State determining module, for the label according to target directory item place directory group, determines that target directory item is corresponding The seizure condition of cache blocks;
Respond module, for the seizure condition based on the corresponding cache blocks of target directory item, responds the internal memory of distant-end node Access request.
Alternatively, this device also includes:
Catalogue set determining module, for when receiving the memory access request of distant-end node transmission, visiting according to internal memory Ask the set index information that request carries, determine the catalogue set of target directory item place;
Directory group searching modul, for the directory group index information being carried according to memory access request, in target directory item Target directory item place directory group is searched in the catalogue set of place;
Directory entry determining module, for when finding target directory item place directory group, taking according to memory access request The directory entry index information of band determines target directory item;
State determining module, for the label according to target directory item place directory group, determines that target directory item is corresponding The seizure condition of cache blocks;
Respond module, for the seizure condition based on the corresponding cache blocks of target directory item, responds the internal memory of distant-end node Access request.
Alternatively, this device also includes:
Directory group searching modul, for when not finding target directory item place directory group, being located in target directory item In catalogue set, search the first directory group, the first directory group is the directory group that whole directory entries are in free state;
Index information generation module, if for finding the first directory group, according to the corresponding catalogue of the first directory group Group index information and the set index information of target directory item, generate the first tab index information;
Label acquisition module, for according to the first tab index information, obtaining the first label;
Update module, for updating the first label, and corresponding for the first directory group directory group index information is updated to interior Deposit the directory group index information that access request carries.
Alternatively, index information generation module, for by multiple Data Positions of directory group index information in index of set Before multiple data bit of information, it is combined into new data bit;New data bit is defined as the number of the first tab index information According to position.
Alternatively, this device also includes:
Directory group searching modul, for when not finding the first directory group, searching the second directory group according to preset strategy;
Index information generation module, for according to the second directory group corresponding directory group index information and target directory item Set index information, generates the second tab index information;
Label acquisition module, for according to the second tab index information, obtaining the second label;
Update module, for updating the second label, and corresponding for the second directory group directory group index information is updated to interior Deposit the directory group index information that access request carries.
In sum, device provided in an embodiment of the present invention, in the number according to cache blocks, sets up and includes multiple directory entries With the stratification catalogue set of multiple directory group, and for each directory group configure a label after, can achieve a tag identifier The seizure condition of whole corresponding cache blocks of directory group in one directory group, thus save the memory space of catalogue occupancy, only Just the catalogue generating can be stored with internal memory on piece, the outer internal memory of piece need not be introduced, not only save design cost, reduce The complexity of directory design, also reduces the access time delay to local memory for the distant-end node, improves the property of multicomputer system Energy.
It should be understood that the directory design device that above-described embodiment provides is when carrying out directory design, only with above-mentioned each The division of functional module is illustrated, and in practical application, can distribute above-mentioned functions by different work(as desired Module can complete, the internal structure of device will be divided into different functional modules, with complete described above all or portion Divide function.In addition, the directory design device that above-described embodiment provides belongs to same design with directory design method embodiment, it is concrete The process of realization refers to embodiment of the method, repeats no more here.
The embodiments of the present invention are for illustration only, do not represent the quality of embodiment.
One of ordinary skill in the art will appreciate that all or part of step realizing above-described embodiment can pass through hardware To complete it is also possible to the hardware being instructed correlation by program is completed, described program can be stored in a kind of computer-readable In storage medium, storage medium mentioned above can be read only memory, disk or CD etc..
The foregoing is only presently preferred embodiments of the present invention, not in order to limit the present invention, all spirit in the present invention and Within principle, any modification, equivalent substitution and improvement made etc., should be included within the scope of the present invention.

Claims (12)

1. a kind of directory design method is it is characterised in that methods described includes:
According to the number of cache blocks, set up multiple catalogue set, each catalogue set includes multiple directory group, each directory group Include multiple directory entries, a directory entry is corresponding with cache blocks;
It is respectively the plurality of directory group label allocation, described label is used for identifying all directory entries included by described directory group The seizure condition of corresponding cache blocks;
It is respectively each catalogue set, each directory group, every directory entry and each label setting index;
Store multiple catalogue set and multiple label.
2. method according to claim 1 is it is characterised in that after described storage multiple catalogue set and multiple label, Methods described also includes:
When receiving the memory access request of distant-end node transmission, the target directory item being carried according to described memory access request Tab index information, obtain the label of described target directory item place directory group;
According to the label of described target directory item place directory group, determine the occupancy shape of the corresponding cache blocks of described target directory item State;
Based on the seizure condition of the corresponding cache blocks of described target directory item, respond the memory access request of described distant-end node.
3. method according to claim 1 is it is characterised in that after described storage multiple catalogue set and multiple label, Methods described also includes:
When receiving the memory access request of distant-end node transmission, believed according to the index of set that described memory access request carries Breath, determines the catalogue set of target directory item place;
The directory group index information being carried according to described memory access request, looks in described target directory item place catalogue set Look for described target directory item place directory group;
If finding described target directory item place directory group, the catalogue entry index carrying according to described memory access request Information determines described target directory item;
According to the label of described target directory item place directory group, determine the occupancy shape of the corresponding cache blocks of described target directory item State;
Based on the seizure condition of the corresponding cache blocks of described target directory item, respond the memory access request of described distant-end node.
4. method according to claim 3 is it is characterised in that described look in described target directory item place catalogue set After looking for described target directory item place directory group, methods described also includes:
If not finding described target directory item place directory group, in described target directory item place catalogue set, look into Look for the first directory group, described first directory group is the directory group that whole directory entries are in free state;
If finding described first directory group, according to the corresponding directory group index information of described first directory group and described mesh The set index information of mark directory entry, generates the first tab index information;
According to described first tab index information, obtain the first label;
Update described first label, and corresponding for described first directory group directory group index information is updated to described internal storage access Ask the directory group index information carrying.
5. method according to claim 4 it is characterised in that described according to the corresponding directory group rope of described first directory group Fuse breath and the set index information of described target directory item, generate the first tab index information, comprising:
By multiple Data Positions of described directory group index information before multiple data bit of described set index information, combination The data bit of Cheng Xin;
Described new data bit is defined as the data bit of described first tab index information.
6. method according to claim 4 it is characterised in that described described target directory be located catalogue set in, After searching the first directory group, methods described also includes:
If not finding described first directory group, the second directory group is searched according to preset strategy;
According to the set index information of the corresponding directory group index information of described second directory group and described target directory item, generate Second tab index information;
According to described second tab index information, obtain the second label;
Update described second label, and corresponding for described second directory group directory group index information is updated to described internal storage access Ask the directory group index information carrying.
7. a kind of directory design device is it is characterised in that described device includes:
Catalogue sets up module, for the number according to cache blocks, sets up multiple catalogue set, each catalogue set includes multiple Directory group, each directory group includes multiple directory entries, and a directory entry is corresponding with cache blocks;
Label configuration module, for being respectively the plurality of directory group label allocation, described label is used for identifying described directory group The seizure condition of the included corresponding cache blocks of all directory entries;
Index setup module, for being respectively each catalogue set, each directory group, every directory entry and each label setting rope Draw;
Memory module, for storing multiple catalogue set and multiple label.
8. device according to claim 7 is it is characterised in that described device also includes:
Label acquisition module, for when receiving the memory access request of distant-end node transmission, asking according to described internal storage access Seek the tab index information of the target directory item carrying, obtain the label of described target directory item place directory group;
State determining module, for the label according to described target directory item place directory group, determines that described target directory item is right The seizure condition of the cache blocks answered;
Respond module, for the seizure condition based on the corresponding cache blocks of described target directory item, responds described distant-end node Memory access request.
9. device according to claim 7 is it is characterised in that described device also includes:
Catalogue set determining module, for when receiving the memory access request of distant-end node transmission, visiting according to described internal memory Ask the set index information that request carries, determine the catalogue set of target directory item place;
Directory group searching modul, for the directory group index information being carried according to described memory access request, in described target mesh Described target directory item place directory group is searched in record item place catalogue set;
Directory entry determining module, for when finding described target directory item place directory group, asking according to described internal storage access The directory entry index information carrying is asked to determine described target directory item;
State determining module, for the label according to described target directory item place directory group, determines that described target directory item is right The seizure condition of the cache blocks answered;
Respond module, for the seizure condition based on the corresponding cache blocks of described target directory item, responds described distant-end node Memory access request.
10. device according to claim 9 is it is characterised in that described device also includes:
Described directory group searching modul, for when not finding described target directory item place directory group, in described target mesh In record item place catalogue set, search the first directory group, described first directory group is in free state for whole directory entries Directory group;
Index information generation module, if for finding described first directory group, corresponding according to described first directory group Directory group index information and the set index information of described target directory item, generate the first tab index information;
Label acquisition module, for according to described first tab index information, obtaining the first label;
Update module, for updating described first label, and corresponding for described first directory group directory group index information is updated The directory group index information carrying for described memory access request.
11. devices according to claim 10 it is characterised in that described index information generation module, for by described mesh Multiple Data Positions of record group index information, before multiple data bit of described set index information, are combined into new data Position;Described new data bit is defined as the data bit of described first tab index information.
12. devices according to claim 10 are it is characterised in that described device also includes:
Described directory group searching modul, for when not finding described first directory group, searching the second mesh according to preset strategy Record group;
Index information generation module, for according to the corresponding directory group index information of described second directory group and described target directory The set index information of item, generates the second tab index information;
Described label acquisition module, for according to described second tab index information, obtaining the second label;
Described update module, for updating described second label, and by corresponding for described second directory group directory group index information It is updated to the directory group index information that described memory access request carries.
CN201410159502.9A 2014-04-21 2014-04-21 Catalogue designing method and device Active CN103970678B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410159502.9A CN103970678B (en) 2014-04-21 2014-04-21 Catalogue designing method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410159502.9A CN103970678B (en) 2014-04-21 2014-04-21 Catalogue designing method and device

Publications (2)

Publication Number Publication Date
CN103970678A CN103970678A (en) 2014-08-06
CN103970678B true CN103970678B (en) 2017-01-25

Family

ID=51240204

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410159502.9A Active CN103970678B (en) 2014-04-21 2014-04-21 Catalogue designing method and device

Country Status (1)

Country Link
CN (1) CN103970678B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016049807A1 (en) * 2014-09-29 2016-04-07 华为技术有限公司 Cache directory processing method and directory controller of multi-core processor system
US9575893B2 (en) * 2014-10-22 2017-02-21 Mediatek Inc. Snoop filter for multi-processor system and related snoop filtering method
CN108664417B (en) * 2017-03-31 2022-10-25 华为技术有限公司 Directory updating method and device
CN108733678B (en) * 2017-04-14 2021-11-09 华为技术有限公司 Data searching method, device and related equipment
CN107368435B (en) * 2017-07-19 2020-03-06 郑州云海信息技术有限公司 Simplified directory and method for realizing Cache consistency monitoring by utilizing same
CN110059026B (en) * 2018-01-19 2021-06-29 华为技术有限公司 Directory processing method, device and storage system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6922755B1 (en) * 2000-02-18 2005-07-26 International Business Machines Corporation Directory tree multinode computer system
CN102132262A (en) * 2008-06-30 2011-07-20 超威半导体公司 Snoop filtering mechanism
CN102880555A (en) * 2012-07-28 2013-01-16 福州大学 Memory algorithm facing real-time system
CN103188518A (en) * 2011-12-29 2013-07-03 中国航天科工集团第二研究院七〇六所 Wireless network video storage system and wireless network video monitoring method thereof

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8407424B2 (en) * 2005-11-07 2013-03-26 Silicon Graphics International Corp. Data coherence method and apparatus for multi-node computer system
US7624234B2 (en) * 2006-08-31 2009-11-24 Hewlett-Packard Development Company, L.P. Directory caches, and methods for operation thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6922755B1 (en) * 2000-02-18 2005-07-26 International Business Machines Corporation Directory tree multinode computer system
CN102132262A (en) * 2008-06-30 2011-07-20 超威半导体公司 Snoop filtering mechanism
CN103188518A (en) * 2011-12-29 2013-07-03 中国航天科工集团第二研究院七〇六所 Wireless network video storage system and wireless network video monitoring method thereof
CN102880555A (en) * 2012-07-28 2013-01-16 福州大学 Memory algorithm facing real-time system

Also Published As

Publication number Publication date
CN103970678A (en) 2014-08-06

Similar Documents

Publication Publication Date Title
CN103970678B (en) Catalogue designing method and device
CN105740164B (en) Multi-core processor supporting cache consistency, reading and writing method, device and equipment
US10114749B2 (en) Cache memory system and method for accessing cache line
CN103246616B (en) A kind of globally shared buffer replacing method of access frequency within long and short cycle
US9274961B2 (en) Method for building multi-processor system with nodes having multiple cache coherency domains
CN102629941B (en) Caching method of a virtual machine mirror image in cloud computing system
US8818942B2 (en) Database system with multiple layer distribution
US7774551B2 (en) Hierarchical cache coherence directory structure
KR102044023B1 (en) Data Storage System based on a key-value and Operating Method thereof
US20130290650A1 (en) Distributed active data storage system
CN103106286B (en) Method and device for managing metadata
US20150058570A1 (en) Method of constructing share-f state in local domain of multi-level cache coherency domain system
CN106843772A (en) A kind of system and method based on uniformity bus extension nonvolatile memory
CN102314506B (en) Based on the distributed buffering district management method of dynamic index
CN104536724A (en) Hash table concurrent access performance optimization method under multi-core environment
CN107969153A (en) A kind of resource allocation methods, device and NUMA system
CN104811493A (en) Network-aware virtual machine mirroring storage system and read-write request handling method
CN108427537A (en) Distributed memory system and its file write-in optimization method, client process method
US7925857B2 (en) Method for increasing cache directory associativity classes via efficient tag bit reclaimation
US20170364442A1 (en) Method for accessing data visitor directory in multi-core system and device
CN109684237A (en) Data access method and device based on multi-core processor
CN103455284A (en) Method and device for reading and writing data
US9547590B2 (en) Managing memory
CN105095105B (en) A kind of method and device of Cache subregions
CN106326143A (en) Cache distribution, data access and data sending method, processor and system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant