gem5.coherence_protocol.html
gem5.coherence_protocol module¶
Specifies the coherence protocol enum
- class gem5.coherence_protocol.CoherenceProtocol(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)¶
Bases:
Enum
- AMD_MOESI_HAMMER = 'AMD_MOESI_hammer'¶
- CHI = 'CHI'¶
- GARNET_STANDALONE = 'Garnet_standalone'¶
- GPU_VIPER = 'GPU_VIPER'¶
- MESI_THREE_LEVEL = 'MESI_Three_Level'¶
- MESI_THREE_LEVEL_HTM = 'MESI_Three_Level_HTM'¶
- MESI_TWO_LEVEL = 'MESI_Two_Level'¶
- MI_EXAMPLE = 'MI_example'¶
- MOESI_AMD_BASE = 'MOESI_AMD_Base'¶
- MOESI_CMP_DIRECTORY = 'MOESI_CMP_directory'¶
- MOESI_CMP_TOKEN = 'MOESI_CMP_token'¶
- MSI = 'MSI'¶
- NULL = 'no protocol (classic only)'¶
- gem5.coherence_protocol.get_protocol_from_str(protocol_str: str) CoherenceProtocol ¶
Will return the correct enum given the input string. This is matched on the enum’s value. E.g., “CHI” will return CoherenceProtocol.CHI. Throws an exception if the input string is invalid.
get_protocols_str_set()
can be used to determine the valid strings.This is for parsing text inputs that specify protocol targets.
- Parameters:
input – The protocol to return, as a string. Case-insensitive.
- gem5.coherence_protocol.get_protocols_str_set()¶