Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ycai
simbricks
Commits
64ce8d89
Commit
64ce8d89
authored
Aug 26, 2024
by
Hejing Li
Browse files
experiment.py: add a function to find simulator instance
parent
aa5e87e5
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
24 additions
and
3 deletions
+24
-3
experiments/simbricks/orchestration/experiments.py
experiments/simbricks/orchestration/experiments.py
+24
-3
No files found.
experiments/simbricks/orchestration/experiments.py
View file @
64ce8d89
...
...
@@ -24,8 +24,21 @@ import itertools
import
typing
as
tp
from
simbricks.orchestration
import
simulators
import
simbricks.orchestration.simulation
as
simulation
import
simbricks.orchestration.system
as
system
import
simbricks.orchestration.simulation.base
as
sim_base
import
simbricks.orchestration.simulation.net
as
sim_net
import
simbricks.orchestration.simulation.host
as
sim_host
import
simbricks.orchestration.simulation.channel
as
sim_channel
import
simbricks.orchestration.simulation.pcidev
as
sim_pcidev
import
simbricks.orchestration.system.base
as
system_base
import
simbricks.orchestration.system.host.base
as
system_host_base
import
simbricks.orchestration.system.eth
as
system_eth
import
simbricks.orchestration.system.mem
as
system_mem
import
simbricks.orchestration.system.nic
as
system_nic
import
simbricks.orchestration.system.pcie
as
system_pcie
from
simbricks.orchestration.proxy
import
NetProxyConnecter
,
NetProxyListener
from
simbricks.orchestration.simulators
import
(
HostSim
,
I40eMultiNIC
,
NetSim
,
NICSim
,
PCIDevSim
,
Simulator
...
...
@@ -71,7 +84,7 @@ class Experiment(object):
"""The network simulators to run."""
self
.
metadata
:
tp
.
Dict
[
str
,
tp
.
Any
]
=
{}
self
.
sys_sim_map
:
tp
.
Dict
[
system
.
Component
,
sim
ulation
.
Simulator
]
=
{}
self
.
sys_sim_map
:
tp
.
Dict
[
system
_base
.
Component
,
sim
_base
.
Simulator
]
=
{}
"""System component and its simulator pairs"""
@
property
...
...
@@ -134,6 +147,14 @@ class Experiment(object):
for
s
in
self
.
all_simulators
():
cores
+=
s
.
resreq_cores
()
return
cores
def
find_sim
(
self
,
comp
:
system_base
.
Component
)
->
sim_base
.
Simulator
:
"""Returns the used simulator object for the system component."""
for
c
,
sim
in
self
.
sys_sim_map
.
items
():
if
c
==
comp
:
return
sim
raise
Exception
(
"Simulator Not Found"
)
class
DistributedExperiment
(
Experiment
):
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment