gem5.prebuilt.viper.board module

class gem5.prebuilt.viper.board.ViperBoard(clk_freq: str, processor: AbstractProcessor, memory: AbstractMemorySystem, cache_hierarchy: AbstractCacheHierarchy, gpus: List[BaseViperGPU] | None = None)

Bases: X86Board

A derivative of X86Board capable of full system simulation for X86 with a GPU device. Provides all the functionality of the X86Board with helper methods specific to booting a disk with GPU libraries installed.

abstract = False
cxx_exports = []
cxx_extra_bases = []
cxx_param_exports = []
cxx_template_params = []
get_coherence_protocol()
get_default_kernel_args() List[str]

Returns a default list of arguments for the workload kernel. We assume the following strings may be used as placeholders, to be replaced when set_kernel_disk_workload is executed:

  • {root_value} : set to get_default_kernel_root_val().

Returns:

A default list of arguments for the workload kernel.

get_devices()

Get the devices connected to the board.

Currently, this is only used for GPUs by the ViperBoard.

Returns:

The devices connected to the board or None.

get_disk_device()

Set a default disk device, in case user does not specify a disk device.

Returns:

The disk device.

get_pci_host()
make_gpu_app(gpu: BaseViperGPU, app: str, debug: bool = False)
override_create = False