The follow six tables describe the current state of component combinations in gem5.
Color Key
| Definitely does not work
|
| Might work
|
| Should work
|
| Definitely works
|
| Unknown
|
Alpha
| Processor
|
Memory System
|
| Cpu Model
|
System
|
Processor Count
|
Classic
|
Ruby
|
| MI_example |
MOESI_hammer |
MESI_CMP_directory |
MOESI_CMP_directory |
MOESI_CMP_token
|
| Atomic
|
SE
|
uniprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| multiprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| FS
|
uniprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| multiprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| TimingSimple
|
SE
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
MI cannot support LL/SC semantics
|
|
|
|
|
| FS
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
MI cannot support LL/SC semantics
|
|
|
|
|
| In-Order
|
SE
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
MI cannot support LL/SC semantics
|
|
|
|
|
| FS
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
MI cannot support LL/SC semantics
|
|
|
|
|
| o3
|
SE
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
MI cannot support LL/SC semantics
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
| FS
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
MI cannot support LL/SC semantics
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
x86
| Processor
|
Memory System
|
| Cpu Model
|
System
|
Processor Count
|
Classic
|
Ruby
|
| MI_example |
MOESI_hammer |
MESI_CMP_directory |
MOESI_CMP_directory |
MOESI_CMP_token
|
| Atomic
|
SE
|
uniprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| multiprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| FS
|
uniprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| multiprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| TimingSimple
|
SE
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
|
|
|
|
|
| FS
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
|
|
|
|
|
| In-Order
|
SE
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
|
|
|
|
|
| FS
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
|
|
|
|
|
| o3
|
SE
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
| FS
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
ARM
| Processor
|
Memory System
|
| Cpu Model
|
System
|
Processor Count
|
Classic
|
Ruby
|
| MI_example |
MOESI_hammer |
MESI_CMP_directory |
MOESI_CMP_directory |
MOESI_CMP_token
|
| Atomic
|
SE
|
uniprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| multiprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| FS
|
uniprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| multiprocessor
|
See Note
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| TimingSimple
|
SE
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
MI cannot support LL/SC semantics
|
|
|
|
|
| FS
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
See Note
|
MI cannot support LL/SC semantics
|
|
|
|
|
| In-Order
|
SE
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
|
|
|
|
|
| FS
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
|
|
|
|
|
| o3
|
SE
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
MI cannot support LL/SC semantics
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
| FS
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
See Note
|
MI cannot support LL/SC semantics
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
- ARM MP support works, however it does not support booting with caches. You can run with caches after all CPUs have been started by using switch over or a checkpoint.
SPARC
| Processor
|
Memory System
|
| Cpu Model
|
System
|
Processor Count
|
Classic
|
Ruby
|
| MI_example |
MOESI_hammer |
MESI_CMP_directory |
MOESI_CMP_directory |
MOESI_CMP_token
|
| Atomic
|
SE
|
uniprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| multiprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| FS
|
uniprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| multiprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| TimingSimple
|
SE
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
|
|
|
|
|
| FS
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
|
|
|
|
|
| In-Order
|
SE
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
|
|
|
|
|
| FS
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
|
|
|
|
|
| o3
|
SE
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
| FS
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
PowerPC
| Processor
|
Memory System
|
| Cpu Model
|
System
|
Processor Count
|
Classic
|
Ruby
|
| MI_example |
MOESI_hammer |
MESI_CMP_directory |
MOESI_CMP_directory |
MOESI_CMP_token
|
| Atomic
|
SE
|
uniprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| multiprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| FS
|
uniprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| multiprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| TimingSimple
|
SE
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
|
|
|
|
|
| FS
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
|
|
|
|
|
| In-Order
|
SE
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
|
|
|
|
|
| FS
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
|
|
|
|
|
| o3
|
SE
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
| FS
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
MIPS
| Processor
|
Memory System
|
| Cpu Model
|
System
|
Processor Count
|
Classic
|
Ruby
|
| MI_example |
MOESI_hammer |
MESI_CMP_directory |
MOESI_CMP_directory |
MOESI_CMP_token
|
| Atomic
|
SE
|
uniprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| multiprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| FS
|
uniprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| multiprocessor
|
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
Ruby does not support atomic mode
|
| TimingSimple
|
SE
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
|
|
|
|
|
| FS
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
|
|
|
|
|
| In-Order
|
SE
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
|
|
|
|
|
| FS
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
|
|
|
|
|
| o3
|
SE
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
| FS
|
uniprocessor
|
|
|
|
|
|
|
| multiprocessor
|
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|
Ruby does not support o3 LSQ
|