Difference between revisions of "Status Matrix"
From gem5
(add note about x86 locked accesses not working on classic caches in timing mode) |
(→ISA Support Matrices) |
||
| (25 intermediate revisions by 5 users not shown) | |||
| Line 16: | Line 16: | ||
== Notes == | == Notes == | ||
| + | Below [[Classic Memory System | Classic]] and [[Ruby]] refers to the two memory systems that we have in gem5. [[MI_example|MI]], [[MESI Two Level | MESI]] and [[Ruby#SLICC + Coherence protocols: | MOESI]] (multiple flavors) are the coherence protocols that are supported in Ruby memory system. Then we have the CPU models: [[SimpleCPU | AtomicSimple]], [[SimpleCPU | TimingSimple]], [[InOrder]] and [[O3CPU | O3]]. | ||
Numbers in the squares below refer to the following notes: | Numbers in the squares below refer to the following notes: | ||
| Line 21: | Line 22: | ||
# Ruby does not support atomic-mode accesses | # Ruby does not support atomic-mode accesses | ||
# The MI_example protocol cannot support LL/SC semantics | # The MI_example protocol cannot support LL/SC semantics | ||
| − | |||
| − | |||
# 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. | # 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 == | == ISA Support Matrices == | ||
| + | |||
| + | '''''THIS PAGE WAS LAST UPDATED IN 2015. IT IS LIKELY OUT OF DATE. USE THIS AS A GUIDELINE.''''' | ||
=== Alpha === | === Alpha === | ||
| Line 33: | Line 34: | ||
!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 42: | ||
|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 52: | ||
| 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 61: | ||
|- | |- | ||
!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 69: | ||
| 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 79: | ||
!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 87: | ||
| 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 96: | ||
|- | |- | ||
!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 104: | ||
| 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 112: | ||
| 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 122: | ||
| 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 131: | ||
|- | |- | ||
!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 139: | ||
| 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 147: | ||
| 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 157: | ||
| 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 | ||
| − | | style="background: | + | | style="background: orange; color: white" | |
| − | | style="background: | + | | style="background: orange; color: white" | |
| − | | style="background: | + | | style="background: orange; color: white" | |
| − | | style="background: | + | | style="background: orange; color: white" | |
|- | |- | ||
!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 174: | ||
| 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 | ||
| − | | style="background: | + | | style="background: orange; color: white" | |
| − | | style="background: | + | | style="background: orange; color: white" | |
| − | | style="background: | + | | style="background: orange; color: white" | |
| − | | style="background: | + | | style="background: orange; color: white" | |
|- | |- | ||
|} | |} | ||
| − | === | + | === ARM === |
{| border="1" class="wikitable" align=center style="background:#B0C4DE;" | {| border="1" class="wikitable" align=center style="background:#B0C4DE;" | ||
| Line 189: | Line 190: | ||
!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 198: | ||
|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: | + | | style="background: green; color: white" | |
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| Line 207: | Line 208: | ||
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: | + | | style="background: green; color: white" | |
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| Line 216: | Line 217: | ||
|- | |- | ||
!rowspan="2"|FS | !rowspan="2"|FS | ||
| − | | | + | |uni |
| − | | style="background: | + | | style="background: green; color: white" | |
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| Line 224: | Line 225: | ||
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: | + | | style="background: green; color: white" | |
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| Line 233: | Line 234: | ||
|- | |- | ||
!rowspan="4"|TimingSimple | !rowspan="4"|TimingSimple | ||
| − | !rowspan="2"|SE | + | !rowspan="2"|SE |
| − | | | + | |uni |
| − | | style="background: | + | | style="background: green; color: white" | |
| − | | style="background: | + | | style="background: orange; color: white"| |
| − | | style="background: | + | | style="background: orange; color: white"| |
| + | | style="background: orange; color: white" | | ||
| style="background: orange; color: white" | | | style="background: orange; color: white" | | ||
| style="background: orange; color: white" | | | style="background: orange; color: white" | | ||
| − | |||
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: red; color: white" | Note | + | | style="background: green; color: white" | |
| − | | style="background: | + | | style="background: red; color: white"| Note 2 |
| − | | style="background: | + | | style="background: orange; color: white"| |
| + | | style="background: orange; color: white" | | ||
| style="background: orange; color: white" | | | style="background: orange; color: white" | | ||
| style="background: orange; color: white" | | | style="background: orange; color: white" | | ||
| − | |||
|- | |- | ||
!rowspan="2"|FS | !rowspan="2"|FS | ||
| − | | | + | |uni |
| − | | style="background: | + | | style="background: green; color: white" | |
| − | | style="background: | + | | style="background: orange; color: white"| |
| − | | style="background: | + | | style="background: orange; color: white"| |
| + | | style="background: orange; color: white" | | ||
| style="background: orange; color: white" | | | style="background: orange; color: white" | | ||
| style="background: orange; color: white" | | | style="background: orange; color: white" | | ||
| − | |||
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: red; color: white" | Note | + | | style="background: green; color: white" | |
| − | | style="background: | + | | style="background: red; color: white"| Note 2 |
| − | | style="background: | + | | style="background: orange; color: white"| |
| + | | style="background: orange; color: white" | | ||
| style="background: orange; color: white" | | | style="background: orange; color: white" | | ||
| style="background: orange; color: white" | | | style="background: orange; color: white" | | ||
| − | |||
|- | |- | ||
| − | !rowspan="4"| | + | !rowspan="4"|InOrder |
!rowspan="2"|SE | !rowspan="2"|SE | ||
| − | | | + | |uni |
| − | | style="background: | + | | style="background: green; color: white" | |
| style="background: red; color: white" | | | style="background: red; color: white" | | ||
| style="background: red; color: white" | | | style="background: red; color: white" | | ||
| Line 277: | Line 278: | ||
| style="background: red; color: white" | | | style="background: red; color: white" | | ||
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: | + | | style="background: green; color: white" | |
| style="background: red; color: white" | | | style="background: red; color: white" | | ||
| style="background: red; color: white" | | | style="background: red; color: white" | | ||
| Line 286: | Line 287: | ||
|- | |- | ||
!rowspan="2"|FS | !rowspan="2"|FS | ||
| − | | | + | |uni |
| − | | style="background: | + | | style="background: green; color: white" | |
| style="background: red; color: white" | | | style="background: red; color: white" | | ||
| style="background: red; color: white" | | | style="background: red; color: white" | | ||
| Line 294: | Line 295: | ||
| style="background: red; color: white" | | | style="background: red; color: white" | | ||
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: | + | | style="background: green; color: white" | |
| style="background: red; color: white" | | | style="background: red; color: white" | | ||
| style="background: red; color: white" | | | style="background: red; color: white" | | ||
| Line 302: | Line 303: | ||
| style="background: red; color: white" | | | style="background: red; color: white" | | ||
|- | |- | ||
| − | !rowspan="4"| | + | !rowspan="4"|O3 |
| − | !rowspan="2"|SE | + | !rowspan="2"|SE |
| − | | | + | |uni |
| − | | style="background: | + | | style="background: green; color: white" | |
| + | | style="background: orange; color: white"| | ||
| + | | style="background: orange; color: white"| | ||
| + | | style="background: orange; color: white" | | ||
| + | | style="background: orange; color: white" | | ||
| style="background: orange; color: white" | | | style="background: orange; color: white" | | ||
| + | |- | ||
| + | |multi | ||
| + | | style="background: green; color: white" | | ||
| + | | style="background: red; color: white"| Note 2 | ||
| style="background: orange; color: white" | | | style="background: orange; color: white" | | ||
| style="background: orange; color: white" | | | style="background: orange; color: white" | | ||
| style="background: orange; color: white" | | | style="background: orange; color: white" | | ||
| style="background: orange; color: white" | | | style="background: orange; color: white" | | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
|- | |- | ||
!rowspan="2"|FS | !rowspan="2"|FS | ||
| − | | | + | |uni |
| − | | style="background: | + | | style="background: green; color: white" | |
| − | | style="background: red; color: white" | | + | | style="background: red; color: white"| Note 2 |
| − | | style="background: | + | | style="background: orange; color: white"| |
| − | | style="background: | + | | style="background: orange; color: white" | |
| − | | style="background: | + | | style="background: orange; color: white" | |
| − | | style="background: | + | | style="background: orange; color: white" | |
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: | + | | style="background: green; color: white" | |
| − | | style="background: red; color: white" | Note | + | | style="background: red; color: white"| Note 2 |
| − | | style="background: | + | | style="background: orange; color: white" | |
| − | | style="background: | + | | style="background: orange; color: white" | |
| − | | style="background: | + | | style="background: orange; color: white" | |
| − | | style="background: | + | | style="background: orange; color: white" | |
|- | |- | ||
|} | |} | ||
| − | === | + | === x86 === |
{| border="1" class="wikitable" align=center style="background:#B0C4DE;" | {| border="1" class="wikitable" align=center style="background:#B0C4DE;" | ||
| Line 345: | Line 346: | ||
!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 354: | ||
|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: | + | | style="background: yellow;" | |
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| Line 363: | Line 364: | ||
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: | + | | style="background: yellow;" | |
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| Line 372: | Line 373: | ||
|- | |- | ||
!rowspan="2"|FS | !rowspan="2"|FS | ||
| − | | | + | |uni |
| − | | style="background: | + | | style="background: yellow;" | |
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| Line 380: | Line 381: | ||
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: | + | | style="background: yellow;" | |
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| Line 389: | Line 390: | ||
|- | |- | ||
!rowspan="4"|TimingSimple | !rowspan="4"|TimingSimple | ||
| − | !rowspan="2"|SE | + | !rowspan="2"|SE |
| − | | | + | |uni |
| − | | style="background: | + | | style="background: yellow;" | |
| − | | style="background: | + | | style="background: yellow;" | |
| − | | style="background: | + | | style="background: yellow;" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | style="background: yellow;" | |
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: | + | | style="background: yellow;" | Note 3 |
| − | | style="background: | + | | style="background: yellow;" | |
| − | | style="background: | + | | style="background: yellow;" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | style="background: yellow;" | |
|- | |- | ||
!rowspan="2"|FS | !rowspan="2"|FS | ||
| − | | | + | |uni |
| + | | style="background: yellow;" | Note 3 | ||
| + | | style="background: yellow;" | | ||
| + | | style="background: yellow;" | | ||
| style="background: green; color: white" | | | style="background: green; color: white" | | ||
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | style="background: yellow;" | |
| − | |||
| − | |||
| − | |||
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: | + | | style="background: yellow;" | Note 3 |
| − | | style="background: | + | | style="background: yellow;" | |
| − | | style="background: | + | | style="background: yellow;" | |
| − | | style="background: | + | | style="background: green; color: white" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | 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 433: | Line 434: | ||
| 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 443: | ||
|- | |- | ||
!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 451: | ||
| 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 459: | ||
| style="background: red; color: white" | | | style="background: red; color: white" | | ||
|- | |- | ||
| − | !rowspan="4"| | + | !rowspan="4"|O3 |
| − | !rowspan="2"|SE | + | !rowspan="2"|SE |
| − | | | + | |uni |
| − | | style="background: | + | | style="background: yellow;" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: | + | | style="background: yellow;" | Note 3 |
| − | | style="background: red; color: white"| Note 2 | + | | style="background: red; color: white" | Note 2 |
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
|- | |- | ||
!rowspan="2"|FS | !rowspan="2"|FS | ||
| − | | | + | |uni |
| − | | style="background: | + | | style="background: orange; color: white" | Note 3 |
| − | | style="background: | + | | style="background: red; color: white" | Note 2 |
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: | + | | style="background: orange; color: white" | Note 3 |
| − | | style="background: red; color: white"| Note 2 | + | | style="background: red; color: white" | Note 2 |
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
| − | | style="background: | + | | style="background: yellow; color: white" | |
|- | |- | ||
|} | |} | ||
| Line 501: | Line 502: | ||
!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 510: | ||
|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 520: | ||
| 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 529: | ||
|- | |- | ||
!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 537: | ||
| 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 547: | ||
!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 555: | ||
| 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 564: | ||
|- | |- | ||
!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 572: | ||
| 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 580: | ||
| 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 590: | ||
| 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 599: | ||
|- | |- | ||
!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 607: | ||
| 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 615: | ||
| 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; | + | | style="background: yellow;" | |
| style="background: orange; color: white"| | | style="background: orange; color: white"| | ||
| style="background: orange; color: white"| | | style="background: orange; color: white"| | ||
| Line 624: | Line 625: | ||
| style="background: orange; color: white" | | | style="background: orange; color: white" | | ||
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: yellow; | + | | style="background: yellow;" | |
| − | | style="background: red; color: white" | Note | + | | style="background: red; color: white" | Note 2 |
| − | | style="background: | + | | style="background: orange; color: white" | |
| − | | style="background: | + | | style="background: orange; color: white" | |
| − | | style="background: | + | | style="background: orange; color: white" | |
| − | | style="background: | + | | style="background: orange; color: white" | |
|- | |- | ||
!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 642: | ||
| 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 | + | | style="background: red; color: white" |Note 2 |
| − | | style="background: red; color: white" | | + | | style="background: red; color: white" | |
| − | | style="background: red; color: white" | | + | | style="background: red; color: white" | |
| − | | style="background: red; color: white" | | + | | style="background: red; color: white" | |
| − | | style="background: red; color: white" | | + | | style="background: red; color: white" | |
|- | |- | ||
|} | |} | ||
| Line 657: | Line 658: | ||
!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 666: | ||
|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 676: | ||
| 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 685: | ||
|- | |- | ||
!rowspan="2"|FS | !rowspan="2"|FS | ||
| − | | | + | |uni |
| − | | style="background: | + | | style="background: red;" | |
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| Line 692: | Line 693: | ||
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: | + | | style="background: red;" | |
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| Line 702: | Line 703: | ||
!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 711: | ||
| 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 720: | ||
|- | |- | ||
!rowspan="2"|FS | !rowspan="2"|FS | ||
| − | | | + | |uni |
| − | | style="background: | + | | style="background: red;" | |
| − | | style="background: | + | | style="background: red; color: white"| |
| − | | style="background: | + | | style="background: red; color: white"| |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; color: white" | |
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: | + | | style="background: red;" | |
| − | | style="background: | + | | style="background: red; color: white"| |
| − | | style="background: | + | | style="background: red; color: white"| |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; 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 746: | ||
| 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 755: | ||
|- | |- | ||
!rowspan="2"|FS | !rowspan="2"|FS | ||
| − | | | + | |uni |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; color: white"| |
| − | | style="background: | + | | style="background: red; color: white"| |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; color: white" | |
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; color: white"| |
| − | | style="background: | + | | style="background: red; color: white"| |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; 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 781: | ||
| style="background: purple; color: white" | | | style="background: purple; color: white" | | ||
|- | |- | ||
| − | | | + | |multi |
| style="background: orange;" | | | style="background: orange;" | | ||
| − | | style="background: red; color: white" | Note | + | | style="background: red; color: white" | Note 2 |
| − | + | | style="background: purple; color: white" | | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | | style="background: purple; color: white"| | ||
| style="background: purple; color: white" | | | style="background: purple; color: white" | | ||
| style="background: purple; color: white" | | | style="background: purple; color: white" | | ||
| style="background: purple; color: white" | | | style="background: purple; color: white" | | ||
|- | |- | ||
| − | | | + | !rowspan="2"|FS |
| − | | style="background: | + | |uni |
| − | | style="background: red; color: white" | Note | + | | style="background: red;" | |
| − | | style="background: red; color: white" | | + | | style="background: red; color: white"| |
| − | | style="background: red; color: white" | | + | | style="background: red; color: white"| |
| − | | style="background: red; color: white" | | + | | style="background: red; color: white" | |
| − | | style="background: red; color: white" | | + | | style="background: red; color: white" | |
| + | | style="background: red; color: white" | | ||
| + | |- | ||
| + | |multi | ||
| + | | style="background: red;" | | ||
| + | | style="background: red; color: white" | Note 2 | ||
| + | | style="background: red; color: white" | | ||
| + | | style="background: red; color: white" | | ||
| + | | style="background: red; color: white" | | ||
| + | | style="background: red; color: white" | | ||
|- | |- | ||
|} | |} | ||
| Line 813: | Line 814: | ||
!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 822: | ||
|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 832: | ||
| 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 841: | ||
|- | |- | ||
!rowspan="2"|FS | !rowspan="2"|FS | ||
| − | | | + | |uni |
| − | | style="background: | + | | style="background: red;" | |
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| Line 848: | Line 849: | ||
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: | + | | style="background: red;" | |
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| style="background: red; color: white" | Note 1 | | style="background: red; color: white" | Note 1 | ||
| Line 858: | Line 859: | ||
!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 867: | ||
| 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 876: | ||
|- | |- | ||
!rowspan="2"|FS | !rowspan="2"|FS | ||
| − | | | + | |uni |
| − | | style="background: | + | | style="background: red;" | |
| − | | style="background: | + | | style="background: red; color: white"| |
| − | | style="background: | + | | style="background: red; color: white"| |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; color: white" | |
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: | + | | style="background: red;" | |
| − | | style="background: | + | | style="background: red; color: white"| |
| − | | style="background: | + | | style="background: red; color: white"| |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; color: white" | |
|- | |- | ||
| − | !rowspan="4"| | + | !rowspan="4"|InOrder |
!rowspan="2"|SE | !rowspan="2"|SE | ||
| − | | | + | |uni |
| − | | style="background: | + | | style="background: red;" | |
| style="background: purple; color: white"| | | style="background: purple; color: white"| | ||
| style="background: purple; color: white"| | | style="background: purple; color: white"| | ||
| Line 901: | Line 902: | ||
| style="background: purple; color: white" | | | style="background: purple; color: white" | | ||
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: | + | | style="background: red;" | |
| style="background: purple; color: white"| | | style="background: purple; color: white"| | ||
| style="background: purple; color: white"| | | style="background: purple; color: white"| | ||
| Line 910: | Line 911: | ||
|- | |- | ||
!rowspan="2"|FS | !rowspan="2"|FS | ||
| − | | | + | |uni |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; color: white"| |
| − | | style="background: | + | | style="background: red; color: white"| |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; color: white" | |
|- | |- | ||
| − | | | + | |multi |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; color: white"| |
| − | | style="background: | + | | style="background: red; color: white"| |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; color: white" | |
| − | | style="background: | + | | style="background: red; 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 937: | ||
| style="background: purple; color: white" | | | style="background: purple; color: white" | | ||
|- | |- | ||
| − | | | + | |multi |
| style="background: orange;" | | | style="background: orange;" | | ||
| − | | style="background: red; color: white" | Note | + | | style="background: red; color: white" | Note 2 |
| − | + | | style="background: purple; color: white" | | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | | style="background: purple; color: white"| | ||
| style="background: purple; color: white" | | | style="background: purple; color: white" | | ||
| style="background: purple; color: white" | | | style="background: purple; color: white" | | ||
| style="background: purple; color: white" | | | style="background: purple; color: white" | | ||
|- | |- | ||
| − | | | + | !rowspan="2"|FS |
| − | | style="background: | + | |uni |
| − | | style="background: red; color: white" | Note | + | | style="background: red;" | |
| − | | style="background: red; color: white" | | + | | style="background: red; color: white"| |
| − | | style="background: red; color: white" | | + | | style="background: red; color: white"| |
| − | | style="background: red; color: white" | | + | | style="background: red; color: white" | |
| − | | style="background: red; color: white" | | + | | style="background: red; color: white" | |
| + | | style="background: red; color: white" | | ||
| + | |- | ||
| + | |multi | ||
| + | | style="background: red;" | | ||
| + | | style="background: red; color: white" | Note 2 | ||
| + | | style="background: red; color: white" | | ||
| + | | style="background: red; color: white" | | ||
| + | | style="background: red; color: white" | | ||
| + | | style="background: red; color: white" | | ||
|- | |- | ||
|} | |} | ||
Latest revision as of 13:06, 23 February 2018
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
Below Classic and Ruby refers to the two memory systems that we have in gem5. MI, MESI and MOESI (multiple flavors) are the coherence protocols that are supported in Ruby memory system. Then we have the CPU models: AtomicSimple, TimingSimple, InOrder and O3.
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
- 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
THIS PAGE WAS LAST UPDATED IN 2015. IT IS LIKELY OUT OF DATE. USE THIS AS A GUIDELINE.
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 | |||||||
| FS | uni | |||||||
| multi | Note 2 | |||||||
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 1 | Note 1 | Note 1 | Note 1 | Note 1 | |||
| TimingSimple | SE | uni | ||||||
| multi | Note 2 | |||||||
| FS | uni | |||||||
| multi | Note 2 | |||||||
| InOrder | SE | uni | ||||||
| multi | ||||||||
| FS | uni | |||||||
| multi | ||||||||
| O3 | SE | uni | ||||||
| multi | Note 2 | |||||||
| FS | uni | Note 2 | ||||||
| multi | Note 2 | |||||||
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 3 | |||||||
| FS | uni | Note 3 | ||||||
| multi | Note 3 | |||||||
| InOrder | SE | uni | ||||||
| multi | ||||||||
| FS | uni | |||||||
| multi | ||||||||
| O3 | SE | uni | ||||||
| multi | Note 3 | Note 2 | ||||||
| FS | uni | Note 3 | Note 2 | |||||
| multi | Note 3 | Note 2 | ||||||
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 2 | |||||||
| FS | uni | |||||||
| multi | Note 2 | |||||||
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 2 | |||||||
| FS | uni | |||||||
| multi | Note 2 | |||||||
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 2 | |||||||
| FS | uni | |||||||
| multi | Note 2 | |||||||