Difference between revisions of "Status Matrix"
From gem5
					
										
					
					 (add note about x86 locked accesses not working on classic caches in timing mode)  | 
				 (a little more cleanup and compaction)  | 
				||
| Line 33: | Line 33: | ||
!colspan="6"|Memory System  | !colspan="6"|Memory System  | ||
|-  | |-  | ||
| − | !rowspan="2"|  | + | !rowspan="2"|Model  | 
!rowspan="2"|System  | !rowspan="2"|System  | ||
| − | !rowspan="2"|  | + | !rowspan="2"|Count  | 
!rowspan="2"|Classic  | !rowspan="2"|Classic  | ||
!colspan="5"|Ruby  | !colspan="5"|Ruby  | ||
| Line 41: | Line 41: | ||
|MI_example||MOESI_hammer||MESI_CMP_directory||MOESI_CMP_directory||MOESI_CMP_token  | |MI_example||MOESI_hammer||MESI_CMP_directory||MOESI_CMP_directory||MOESI_CMP_token  | ||
|-  | |-  | ||
| − | !rowspan="4"|  | + | !rowspan="4"|AtomicSimple  | 
!rowspan="2"|SE    | !rowspan="2"|SE    | ||
| − | |  | + | |uni  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 51: | Line 51: | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 60: | Line 60: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 68: | Line 68: | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 78: | Line 78: | ||
!rowspan="4"|TimingSimple  | !rowspan="4"|TimingSimple  | ||
!rowspan="2"|SE  | !rowspan="2"|SE  | ||
| − | |  | + | |uni  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| Line 86: | Line 86: | ||
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: red; color: white" | Note 2  | | style="background: red; color: white" | Note 2  | ||
| Line 95: | Line 95: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| Line 103: | Line 103: | ||
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: red; color: white" | Note 2  | | style="background: red; color: white" | Note 2  | ||
| Line 111: | Line 111: | ||
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
|-  | |-  | ||
| − | !rowspan="4"|  | + | !rowspan="4"|InOrder  | 
!rowspan="2"|SE  | !rowspan="2"|SE  | ||
| − | |  | + | |uni  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
| Line 121: | Line 121: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: red; color: white" | Note 2  | | style="background: red; color: white" | Note 2  | ||
| Line 130: | Line 130: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
| Line 138: | Line 138: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: red; color: white" | Note 2  | | style="background: red; color: white" | Note 2  | ||
| Line 146: | Line 146: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | !rowspan="4"|  | + | !rowspan="4"|O3  | 
!rowspan="2"|SE  | !rowspan="2"|SE  | ||
| − | |  | + | |uni  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: orange; color: white" |  | | style="background: orange; color: white" |  | ||
| Line 156: | Line 156: | ||
| style="background: orange; color: white" |  | | style="background: orange; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: red; color: white" | Note 2  | | style="background: red; color: white" | Note 2  | ||
| Line 165: | Line 165: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: orange; color: white" |  | | style="background: orange; color: white" |  | ||
| Line 173: | Line 173: | ||
| style="background: orange; color: white" |  | | style="background: orange; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: red; color: white" | Note 2  | | style="background: red; color: white" | Note 2  | ||
| Line 189: | Line 189: | ||
!colspan="6"|Memory System  | !colspan="6"|Memory System  | ||
|-  | |-  | ||
| − | !rowspan="2"|  | + | !rowspan="2"|Model  | 
!rowspan="2"|System  | !rowspan="2"|System  | ||
| − | !rowspan="2"|  | + | !rowspan="2"|Count  | 
!rowspan="2"|Classic  | !rowspan="2"|Classic  | ||
!colspan="5"|Ruby  | !colspan="5"|Ruby  | ||
| Line 197: | Line 197: | ||
|MI_example||MOESI_hammer||MESI_CMP_directory||MOESI_CMP_directory||MOESI_CMP_token  | |MI_example||MOESI_hammer||MESI_CMP_directory||MOESI_CMP_directory||MOESI_CMP_token  | ||
|-  | |-  | ||
| − | !rowspan="4"|  | + | !rowspan="4"|AtomicSimple  | 
!rowspan="2"|SE    | !rowspan="2"|SE    | ||
| − | |  | + | |uni  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 207: | Line 207: | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 216: | Line 216: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 224: | Line 224: | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 234: | Line 234: | ||
!rowspan="4"|TimingSimple  | !rowspan="4"|TimingSimple  | ||
!rowspan="2"|SE  | !rowspan="2"|SE  | ||
| − | |  | + | |uni  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| Line 242: | Line 242: | ||
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: red; color: white" | Note 5  | | style="background: red; color: white" | Note 5  | ||
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| Line 251: | Line 251: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| Line 259: | Line 259: | ||
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: red; color: white" | Note 5  | | style="background: red; color: white" | Note 5  | ||
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| Line 267: | Line 267: | ||
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
|-  | |-  | ||
| − | !rowspan="4"|  | + | !rowspan="4"|InOrder  | 
!rowspan="2"|SE  | !rowspan="2"|SE  | ||
| − | |  | + | |uni  | 
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| Line 277: | Line 277: | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| style="background: red; color: white" |    | | style="background: red; color: white" |    | ||
| Line 286: | Line 286: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| Line 294: | Line 294: | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| Line 302: | Line 302: | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
|-  | |-  | ||
| − | !rowspan="4"|  | + | !rowspan="4"|O3  | 
!rowspan="2"|SE  | !rowspan="2"|SE  | ||
| − | |  | + | |uni  | 
| style="background: yellow; color: white" |  | | style="background: yellow; color: white" |  | ||
| style="background: orange; color: white" |  | | style="background: orange; color: white" |  | ||
| Line 312: | Line 312: | ||
| style="background: orange; color: white" |  | | style="background: orange; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: red; color: white" | Note 5  | | style="background: red; color: white" | Note 5  | ||
| style="background: red; color: white" | Note 3  | | style="background: red; color: white" | Note 3  | ||
| Line 321: | Line 321: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| Line 329: | Line 329: | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: red; color: white" | Note 5  | | style="background: red; color: white" | Note 5  | ||
| style="background: red; color: white" | Note 3  | | style="background: red; color: white" | Note 3  | ||
| Line 345: | Line 345: | ||
!colspan="6"|Memory System  | !colspan="6"|Memory System  | ||
|-  | |-  | ||
| − | !rowspan="2"|  | + | !rowspan="2"|Model  | 
!rowspan="2"|System  | !rowspan="2"|System  | ||
| − | !rowspan="2"|  | + | !rowspan="2"|Count  | 
!rowspan="2"|Classic  | !rowspan="2"|Classic  | ||
!colspan="5"|Ruby  | !colspan="5"|Ruby  | ||
| Line 353: | Line 353: | ||
|MI_example||MOESI_hammer||MESI_CMP_directory||MOESI_CMP_directory||MOESI_CMP_token  | |MI_example||MOESI_hammer||MESI_CMP_directory||MOESI_CMP_directory||MOESI_CMP_token  | ||
|-  | |-  | ||
| − | !rowspan="4"|  | + | !rowspan="4"|AtomicSimple  | 
!rowspan="2"|SE    | !rowspan="2"|SE    | ||
| − | |  | + | |uni  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 363: | Line 363: | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 372: | Line 372: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 380: | Line 380: | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: green; color: white" | Note 4  | | style="background: green; color: white" | Note 4  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 390: | Line 390: | ||
!rowspan="4"|TimingSimple  | !rowspan="4"|TimingSimple  | ||
!rowspan="2"|SE    | !rowspan="2"|SE    | ||
| − | |  | + | |uni  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: orange; color: white"|  | | style="background: orange; color: white"|  | ||
| Line 398: | Line 398: | ||
| style="background: orange; color: white" |  | | style="background: orange; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: red; color: white"| Note 2  | | style="background: red; color: white"| Note 2  | ||
| Line 407: | Line 407: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: orange; color: white"|  | | style="background: orange; color: white"|  | ||
| Line 415: | Line 415: | ||
| style="background: orange; color: white" |  | | style="background: orange; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: green; color: white" | Note 4  | | style="background: green; color: white" | Note 4  | ||
| style="background: red; color: white"| Note 2  | | style="background: red; color: white"| Note 2  | ||
| Line 423: | Line 423: | ||
| style="background: orange; color: white" |  | | style="background: orange; color: white" |  | ||
|-  | |-  | ||
| − | !rowspan="4"|  | + | !rowspan="4"|InOrder  | 
!rowspan="2"|SE  | !rowspan="2"|SE  | ||
| − | |  | + | |uni  | 
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| Line 433: | Line 433: | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| style="background: red; color: white" |    | | style="background: red; color: white" |    | ||
| Line 442: | Line 442: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| Line 450: | Line 450: | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| Line 458: | Line 458: | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
|-  | |-  | ||
| − | !rowspan="4"|  | + | !rowspan="4"|O3  | 
!rowspan="2"|SE    | !rowspan="2"|SE    | ||
| − | |  | + | |uni  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: orange; color: white"|  | | style="background: orange; color: white"|  | ||
| Line 468: | Line 468: | ||
| style="background: orange; color: white" |  | | style="background: orange; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: red; color: white"| Note 2  | | style="background: red; color: white"| Note 2  | ||
| Line 477: | Line 477: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: green; color: white" |  | | style="background: green; color: white" |  | ||
| style="background: orange; color: white"|  | | style="background: orange; color: white"|  | ||
| Line 485: | Line 485: | ||
| style="background: orange; color: white" |  | | style="background: orange; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: green; color: white" | Note 4  | | style="background: green; color: white" | Note 4  | ||
| style="background: red; color: white"| Note 2  | | style="background: red; color: white"| Note 2  | ||
| Line 501: | Line 501: | ||
!colspan="6"|Memory System  | !colspan="6"|Memory System  | ||
|-  | |-  | ||
| − | !rowspan="2"|  | + | !rowspan="2"|Model  | 
!rowspan="2"|System  | !rowspan="2"|System  | ||
| − | !rowspan="2"|  | + | !rowspan="2"|Count  | 
!rowspan="2"|Classic  | !rowspan="2"|Classic  | ||
!colspan="5"|Ruby  | !colspan="5"|Ruby  | ||
| Line 509: | Line 509: | ||
|MI_example||MOESI_hammer||MESI_CMP_directory||MOESI_CMP_directory||MOESI_CMP_token  | |MI_example||MOESI_hammer||MESI_CMP_directory||MOESI_CMP_directory||MOESI_CMP_token  | ||
|-  | |-  | ||
| − | !rowspan="4"|  | + | !rowspan="4"|AtomicSimple  | 
!rowspan="2"|SE    | !rowspan="2"|SE    | ||
| − | |  | + | |uni  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 519: | Line 519: | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 528: | Line 528: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: orange; color: white" |  | | style="background: orange; color: white" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 536: | Line 536: | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: red; color: white" |    | | style="background: red; color: white" |    | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 546: | Line 546: | ||
!rowspan="4"|TimingSimple  | !rowspan="4"|TimingSimple  | ||
!rowspan="2"|SE    | !rowspan="2"|SE    | ||
| − | |  | + | |uni  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: orange; color: white"|  | | style="background: orange; color: white"|  | ||
| Line 554: | Line 554: | ||
| style="background: orange; color: white" |  | | style="background: orange; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: orange; color: white"|  | | style="background: orange; color: white"|  | ||
| Line 563: | Line 563: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: orange; color: white" |  | | style="background: orange; color: white" |  | ||
| style="background: orange; color: white" |  | | style="background: orange; color: white" |  | ||
| Line 571: | Line 571: | ||
| style="background: orange; color: white" |  | | style="background: orange; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: red; color: white" |    | | style="background: red; color: white" |    | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| Line 579: | Line 579: | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
|-  | |-  | ||
| − | !rowspan="4"|  | + | !rowspan="4"|InOrder  | 
!rowspan="2"|SE    | !rowspan="2"|SE    | ||
| − | |  | + | |uni  | 
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| style="background: red; color: white"|  | | style="background: red; color: white"|  | ||
| Line 589: | Line 589: | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| style="background: red; color: white"|  | | style="background: red; color: white"|  | ||
| Line 598: | Line 598: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| Line 606: | Line 606: | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: red; color: white" |    | | style="background: red; color: white" |    | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| Line 614: | Line 614: | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
|-  | |-  | ||
| − | !rowspan="4"|  | + | !rowspan="4"|O3  | 
!rowspan="2"|SE    | !rowspan="2"|SE    | ||
| − | |  | + | |uni  | 
| style="background: yellow; color: white" |  | | style="background: yellow; color: white" |  | ||
| style="background: orange; color: white"|  | | style="background: orange; color: white"|  | ||
| Line 624: | Line 624: | ||
| style="background: orange; color: white" |  | | style="background: orange; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: yellow; color: white" |  | | style="background: yellow; color: white" |  | ||
| style="background: red; color: white" | Note 3  | | style="background: red; color: white" | Note 3  | ||
| Line 633: | Line 633: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
| Line 641: | Line 641: | ||
| style="background: red; color: white" |  | | style="background: red; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: red; color: white" |    | | style="background: red; color: white" |    | ||
| style="background: red; color: white" | Note 3  | | style="background: red; color: white" | Note 3  | ||
| Line 657: | Line 657: | ||
!colspan="6"|Memory System  | !colspan="6"|Memory System  | ||
|-  | |-  | ||
| − | !rowspan="2"|  | + | !rowspan="2"|Model  | 
!rowspan="2"|System  | !rowspan="2"|System  | ||
| − | !rowspan="2"|  | + | !rowspan="2"|Count  | 
!rowspan="2"|Classic  | !rowspan="2"|Classic  | ||
!colspan="5"|Ruby  | !colspan="5"|Ruby  | ||
| Line 665: | Line 665: | ||
|MI_example||MOESI_hammer||MESI_CMP_directory||MOESI_CMP_directory||MOESI_CMP_token  | |MI_example||MOESI_hammer||MESI_CMP_directory||MOESI_CMP_directory||MOESI_CMP_token  | ||
|-  | |-  | ||
| − | !rowspan="4"|  | + | !rowspan="4"|AtomicSimple  | 
!rowspan="2"|SE    | !rowspan="2"|SE    | ||
| − | |  | + | |uni  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 675: | Line 675: | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: orange;" |  | | style="background: orange;" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 684: | Line 684: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 692: | Line 692: | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: orange;" |  | | style="background: orange;" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 702: | Line 702: | ||
!rowspan="4"|TimingSimple  | !rowspan="4"|TimingSimple  | ||
!rowspan="2"|SE    | !rowspan="2"|SE    | ||
| − | |  | + | |uni  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 710: | Line 710: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: orange;" |  | | style="background: orange;" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 719: | Line 719: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 727: | Line 727: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: orange;" |  | | style="background: orange;" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 735: | Line 735: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | !rowspan="4"|  | + | !rowspan="4"|InOrder  | 
!rowspan="2"|SE    | !rowspan="2"|SE    | ||
| − | |  | + | |uni  | 
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 745: | Line 745: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 754: | Line 754: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 762: | Line 762: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 770: | Line 770: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | !rowspan="4"|  | + | !rowspan="4"|O3  | 
!rowspan="2"|SE    | !rowspan="2"|SE    | ||
| − | |  | + | |uni  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 780: | Line 780: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: orange;" |  | | style="background: orange;" |  | ||
| style="background: red; color: white" | Note 3  | | style="background: red; color: white" | Note 3  | ||
| Line 789: | Line 789: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 797: | Line 797: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: orange;" |  | | style="background: orange;" |  | ||
| style="background: red; color: white" | Note 3  | | style="background: red; color: white" | Note 3  | ||
| Line 813: | Line 813: | ||
!colspan="6"|Memory System  | !colspan="6"|Memory System  | ||
|-  | |-  | ||
| − | !rowspan="2"|  | + | !rowspan="2"|Model  | 
!rowspan="2"|System  | !rowspan="2"|System  | ||
| − | !rowspan="2"|  | + | !rowspan="2"|Count  | 
!rowspan="2"|Classic  | !rowspan="2"|Classic  | ||
!colspan="5"|Ruby  | !colspan="5"|Ruby  | ||
| Line 821: | Line 821: | ||
|MI_example||MOESI_hammer||MESI_CMP_directory||MOESI_CMP_directory||MOESI_CMP_token  | |MI_example||MOESI_hammer||MESI_CMP_directory||MOESI_CMP_directory||MOESI_CMP_token  | ||
|-  | |-  | ||
| − | !rowspan="4"|  | + | !rowspan="4"|AtomicSimple  | 
!rowspan="2"|SE    | !rowspan="2"|SE    | ||
| − | |  | + | |uni  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 831: | Line 831: | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: orange;" |  | | style="background: orange;" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 840: | Line 840: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 848: | Line 848: | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: orange;" |  | | style="background: orange;" |  | ||
| style="background: red; color: white" | Note 1  | | style="background: red; color: white" | Note 1  | ||
| Line 858: | Line 858: | ||
!rowspan="4"|TimingSimple  | !rowspan="4"|TimingSimple  | ||
!rowspan="2"|SE    | !rowspan="2"|SE    | ||
| − | |  | + | |uni  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 866: | Line 866: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: orange;" |  | | style="background: orange;" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 875: | Line 875: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 883: | Line 883: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: orange;" |  | | style="background: orange;" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 891: | Line 891: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | !rowspan="4"|  | + | !rowspan="4"|InOrder  | 
!rowspan="2"|SE    | !rowspan="2"|SE    | ||
| − | |  | + | |uni  | 
| style="background: orange;" |  | | style="background: orange;" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 901: | Line 901: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: orange;" |  | | style="background: orange;" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 910: | Line 910: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 918: | Line 918: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 926: | Line 926: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | !rowspan="4"|  | + | !rowspan="4"|O3  | 
!rowspan="2"|SE    | !rowspan="2"|SE    | ||
| − | |  | + | |uni  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 936: | Line 936: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: orange;" |  | | style="background: orange;" |  | ||
| style="background: red; color: white" | Note 3  | | style="background: red; color: white" | Note 3  | ||
| Line 945: | Line 945: | ||
|-  | |-  | ||
!rowspan="2"|FS  | !rowspan="2"|FS  | ||
| − | |  | + | |uni  | 
| style="background: yellow;" |  | | style="background: yellow;" |  | ||
| style="background: purple; color: white"|  | | style="background: purple; color: white"|  | ||
| Line 953: | Line 953: | ||
| style="background: purple; color: white" |  | | style="background: purple; color: white" |  | ||
|-  | |-  | ||
| − | |  | + | |multi  | 
| style="background: orange;" |  | | style="background: orange;" |  | ||
| style="background: red; color: white" | Note 3  | | style="background: red; color: white" | Note 3  | ||
Revision as of 20:03, 18 September 2011
The follow six tables describe the current state of component combinations in gem5.
Contents
Color Key
| Definitely does not work | 
| Might work | 
| Should work | 
| Definitely works | 
| Unknown | 
Notes
Numbers in the squares below refer to the following notes:
- Ruby does not support atomic-mode accesses
 - The MI_example protocol cannot support LL/SC semantics
 - Ruby does not support probing the O3 LSQ to enforce non-weak consistency models
 - ARM MP does not support booting with caches, but works otherwise. You can boot without caches then switch to running with caches using either a checkpoint/resume or on-line CPU switchover.
 - Classic caches do not support x86 locked (atomic RMW) accesses. The AtomicSimple CPU model enforces atomic RMW accesses itself, so this only affects correctness for timing-mode CPU models.
 
ISA Support Matrices
Alpha
| Processor | Memory System | |||||||
|---|---|---|---|---|---|---|---|---|
| Model | System | Count | Classic | Ruby | ||||
| MI_example | MOESI_hammer | MESI_CMP_directory | MOESI_CMP_directory | MOESI_CMP_token | ||||
| AtomicSimple | SE | uni | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | |
| multi | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | |||
| FS | uni | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | ||
| multi | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | |||
| TimingSimple | SE | uni | ||||||
| multi | Note 2 | |||||||
| FS | uni | |||||||
| multi | Note 2 | |||||||
| InOrder | SE | uni | ||||||
| multi | Note 2 | |||||||
| FS | uni | |||||||
| multi | Note 2 | |||||||
| O3 | SE | uni | ||||||
| multi | Note 2 | Note 3 | Note 3 | Note 3 | Note 3 | |||
| FS | uni | |||||||
| multi | Note 2 | Note 3 | Note 3 | Note 3 | Note 3 | |||
x86
| Processor | Memory System | |||||||
|---|---|---|---|---|---|---|---|---|
| Model | System | Count | Classic | Ruby | ||||
| MI_example | MOESI_hammer | MESI_CMP_directory | MOESI_CMP_directory | MOESI_CMP_token | ||||
| AtomicSimple | SE | uni | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | |
| multi | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | |||
| FS | uni | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | ||
| multi | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | |||
| TimingSimple | SE | uni | ||||||
| multi | Note 5 | |||||||
| FS | uni | |||||||
| multi | Note 5 | |||||||
| InOrder | SE | uni | ||||||
| multi | ||||||||
| FS | uni | |||||||
| multi | ||||||||
| O3 | SE | uni | ||||||
| multi | Note 5 | Note 3 | Note 3 | Note 3 | Note 3 | Note 3 | ||
| FS | uni | |||||||
| multi | Note 5 | Note 3 | Note 3 | Note 3 | Note 3 | Note 3 | ||
ARM
| Processor | Memory System | |||||||
|---|---|---|---|---|---|---|---|---|
| Model | System | Count | Classic | Ruby | ||||
| MI_example | MOESI_hammer | MESI_CMP_directory | MOESI_CMP_directory | MOESI_CMP_token | ||||
| AtomicSimple | SE | uni | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | |
| multi | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | |||
| FS | uni | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | ||
| multi | Note 4 | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | ||
| TimingSimple | SE | uni | ||||||
| multi | Note 2 | |||||||
| FS | uni | |||||||
| multi | Note 4 | Note 2 | ||||||
| InOrder | SE | uni | ||||||
| multi | ||||||||
| FS | uni | |||||||
| multi | ||||||||
| O3 | SE | uni | ||||||
| multi | Note 2 | Note 3 | Note 3 | Note 3 | Note 3 | |||
| FS | uni | |||||||
| multi | Note 4 | Note 2 | Note 3 | Note 3 | Note 3 | Note 3 | ||
SPARC
| Processor | Memory System | |||||||
|---|---|---|---|---|---|---|---|---|
| Model | System | Count | Classic | Ruby | ||||
| MI_example | MOESI_hammer | MESI_CMP_directory | MOESI_CMP_directory | MOESI_CMP_token | ||||
| AtomicSimple | SE | uni | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | |
| multi | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | |||
| FS | uni | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | ||
| multi | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | |||
| TimingSimple | SE | uni | ||||||
| multi | ||||||||
| FS | uni | |||||||
| multi | ||||||||
| InOrder | SE | uni | ||||||
| multi | ||||||||
| FS | uni | |||||||
| multi | ||||||||
| O3 | SE | uni | ||||||
| multi | Note 3 | Note 3 | Note 3 | Note 3 | Note 3 | |||
| FS | uni | |||||||
| multi | Note 3 | Note 3 | Note 3 | Note 3 | Note 3 | |||
PowerPC
| Processor | Memory System | |||||||
|---|---|---|---|---|---|---|---|---|
| Model | System | Count | Classic | Ruby | ||||
| MI_example | MOESI_hammer | MESI_CMP_directory | MOESI_CMP_directory | MOESI_CMP_token | ||||
| AtomicSimple | SE | uni | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | |
| multi | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | |||
| FS | uni | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | ||
| multi | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | |||
| TimingSimple | SE | uni | ||||||
| multi | ||||||||
| FS | uni | |||||||
| multi | ||||||||
| InOrder | SE | uni | ||||||
| multi | ||||||||
| FS | uni | |||||||
| multi | ||||||||
| O3 | SE | uni | ||||||
| multi | Note 3 | Note 3 | Note 3 | Note 3 | Note 3 | |||
| FS | uni | |||||||
| multi | Note 3 | Note 3 | Note 3 | Note 3 | Note 3 | |||
MIPS
| Processor | Memory System | |||||||
|---|---|---|---|---|---|---|---|---|
| Model | System | Count | Classic | Ruby | ||||
| MI_example | MOESI_hammer | MESI_CMP_directory | MOESI_CMP_directory | MOESI_CMP_token | ||||
| AtomicSimple | SE | uni | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | |
| multi | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | |||
| FS | uni | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | ||
| multi | Note 1 | Note 1 | Note 1 | Note 1 | Note 1 | |||
| TimingSimple | SE | uni | ||||||
| multi | ||||||||
| FS | uni | |||||||
| multi | ||||||||
| InOrder | SE | uni | ||||||
| multi | ||||||||
| FS | uni | |||||||
| multi | ||||||||
| O3 | SE | uni | ||||||
| multi | Note 3 | Note 3 | Note 3 | Note 3 | Note 3 | |||
| FS | uni | |||||||
| multi | Note 3 | Note 3 | Note 3 | Note 3 | Note 3 | |||