4.3.1. System Configuration#
4.3.1.1. Base#
- class simbricks.orchestration.system.base.System(name: str = '76f9ad0e-0a57-4956-9ee2-3d98788f7015')#
Defines System configuration of the whole simulation
- latencies(amount: int, ratio: Time, channel_type: Any | None = None) None#
- toJSON() dict#
- classmethod fromJSON(json_obj: dict, enforce_dummies: bool = False) Self#
- id() int#
- class simbricks.orchestration.system.base.Component(s: System)#
Defines a component that is a part of the System Configuration.
Components could e.g. be hosts, NICs, switches.
- async prepare(inst: inst_base.Instantiation) None#
- toJSON() dict#
- id() int#
- class simbricks.orchestration.system.base.DummyComponent(s: System)#
-
- id() int#
- async prepare(inst: inst_base.Instantiation) None#
- toJSON() dict#
- class simbricks.orchestration.system.base.Interface(c: Component)#
Specifies a single Interface of a Component.
A host component could e.g. have multiple PCI Interfaces.
- is_connected() bool#
- disconnect() None#
- T = ~T#
- toJSON() dict#
- classmethod fromJSON(system: System, json_obj: dict) Self#
Deserializes an Interface from its JSON representation.
Note: This function will not set the component which is done by the component base classes ‘fromJSON’ method.
- id() int#
- class simbricks.orchestration.system.base.DummyInterface(c: Component)#
- classmethod fromJSON(system: System, json_obj: dict) Self#
Deserializes an Interface from its JSON representation.
Note: This function will not set the component which is done by the component base classes ‘fromJSON’ method.
- T = ~T#
- disconnect() None#
- id() int#
- is_connected() bool#
- toJSON() dict#
4.3.1.2. Eth#
- class simbricks.orchestration.system.eth.EthInterface(c: Component)#
-
- T = ~T#
- disconnect() None#
- classmethod fromJSON(system: System, json_obj: dict) Self#
Deserializes an Interface from its JSON representation.
Note: This function will not set the component which is done by the component base classes ‘fromJSON’ method.
- id() int#
- is_connected() bool#
- toJSON() dict#
- class simbricks.orchestration.system.eth.EthChannel(a: EthInterface, b: EthInterface)#
- disconnect()#
- id() int#
- set_latency(amount: int, ratio: Time = Time.Nanoseconds) None#
- toJSON() dict#
- class simbricks.orchestration.system.eth.EthSimpleNIC(s: System)#
- add_ipv4(ip: str) None#
- add_if(interface: EthInterface) None#
- connect_eth_peer_if(peer_i: EthInterface) EthChannel#
- toJSON() dict#
- id() int#
- async prepare(inst: inst_base.Instantiation) None#
- class simbricks.orchestration.system.eth.BaseEthNetComponent(s: System)#
- add_if(i: EthInterface) None#
- toJSON() dict#
- connect_eth_peer_if(peer_i: EthInterface) EthChannel#
- id() int#
- async prepare(inst: inst_base.Instantiation) None#
- class simbricks.orchestration.system.eth.EthWire(s: System)#
- add_if(i: EthInterface) None#
- connect_eth_peer_if(peer_i: EthInterface) EthChannel#
- id() int#
- async prepare(inst: inst_base.Instantiation) None#
- toJSON() dict#
- class simbricks.orchestration.system.eth.EthSwitch(s: System)#
- add_if(i: EthInterface) None#
- connect_eth_peer_if(peer_i: EthInterface) EthChannel#
- id() int#
- async prepare(inst: inst_base.Instantiation) None#
- toJSON() dict#
4.3.1.3. PCIe#
- class simbricks.orchestration.system.pcie.PCIeHostInterface(c: Component)#
- T = ~T#
- disconnect() None#
- classmethod fromJSON(system: System, json_obj: dict) Self#
Deserializes an Interface from its JSON representation.
Note: This function will not set the component which is done by the component base classes ‘fromJSON’ method.
- id() int#
- is_connected() bool#
- toJSON() dict#
- class simbricks.orchestration.system.pcie.PCIeDeviceInterface(c: Component)#
-
- T = ~T#
- disconnect() None#
- classmethod fromJSON(system: System, json_obj: dict) Self#
Deserializes an Interface from its JSON representation.
Note: This function will not set the component which is done by the component base classes ‘fromJSON’ method.
- id() int#
- is_connected() bool#
- toJSON() dict#
- class simbricks.orchestration.system.pcie.PCIeChannel(host: PCIeHostInterface, dev: PCIeDeviceInterface)#
- host_if() PCIeHostInterface#
- dev_if() PCIeDeviceInterface#
- disconnect()#
- id() int#
- set_latency(amount: int, ratio: Time = Time.Nanoseconds) None#
- toJSON() dict#
4.3.1.4. Mem#
- class simbricks.orchestration.system.mem.MemHostInterface(c: Component)#
- T = ~T#
- disconnect() None#
- classmethod fromJSON(system: System, json_obj: dict) Self#
Deserializes an Interface from its JSON representation.
Note: This function will not set the component which is done by the component base classes ‘fromJSON’ method.
- id() int#
- is_connected() bool#
- toJSON() dict#
- class simbricks.orchestration.system.mem.MemDeviceInterface(c: Component)#
-
- T = ~T#
- disconnect() None#
- classmethod fromJSON(system: System, json_obj: dict) Self#
Deserializes an Interface from its JSON representation.
Note: This function will not set the component which is done by the component base classes ‘fromJSON’ method.
- id() int#
- is_connected() bool#
- toJSON() dict#
- class simbricks.orchestration.system.mem.MemChannel(host: MemHostInterface, dev: MemDeviceInterface)#
- host_if() MemHostInterface#
- dev_if() MemDeviceInterface#
- disconnect()#
- id() int#
- set_latency(amount: int, ratio: Time = Time.Nanoseconds) None#
- toJSON() dict#
- class simbricks.orchestration.system.mem.MemSimpleDevice(s: System)#
- add_if(interface: MemDeviceInterface) None#
- toJSON() dict#
- id() int#
- async prepare(inst: inst_base.Instantiation) None#
- class simbricks.orchestration.system.mem.MemInterconnect(s: System)#
- add_if(interface: MemDeviceInterface | MemHostInterface) None#
- connect_host(peer_if: MemHostInterface) MemChannel#
- connect_device(peer_if: MemDeviceInterface) MemChannel#
- add_route(dev: MemHostInterface, vaddr: int, len: int, paddr: int = 0)#
- toJSON() dict#
- id() int#
- async prepare(inst: inst_base.Instantiation) None#
4.3.1.5. NIC#
- class simbricks.orchestration.system.nic.SimplePCIeNIC(s: System)#
- add_if(interface: EthInterface | PCIeDeviceInterface) None#
- add_ipv4(ip: str) None#
- connect_eth_peer_if(peer_i: EthInterface) EthChannel#
- id() int#
- async prepare(inst: inst_base.Instantiation) None#
- toJSON() dict#
- class simbricks.orchestration.system.nic.IntelI40eNIC(s: System)#
- add_if(interface: EthInterface | PCIeDeviceInterface) None#
- add_ipv4(ip: str) None#
- connect_eth_peer_if(peer_i: EthInterface) EthChannel#
- id() int#
- async prepare(inst: inst_base.Instantiation) None#
- toJSON() dict#
- class simbricks.orchestration.system.nic.IntelE1000NIC(s: System)#
- add_if(interface: EthInterface | PCIeDeviceInterface) None#
- add_ipv4(ip: str) None#
- connect_eth_peer_if(peer_i: EthInterface) EthChannel#
- id() int#
- async prepare(inst: inst_base.Instantiation) None#
- toJSON() dict#