"vscode:/vscode.git/clone" did not exist on "af436f5951d25e0ed0f6ec66431f39ce6a02c801"
Commit 019f173c authored by Jonas Kaufmann's avatar Jonas Kaufmann Committed by Antoine Kaufmann
Browse files

orchestration: always wait for all instances of gem5 and Simics when creating checkpoints

parent 7c21c5d0
...@@ -103,7 +103,7 @@ class ExperimentBaseRunner(ABC): ...@@ -103,7 +103,7 @@ class ExperimentBaseRunner(ABC):
if delay > 0: if delay > 0:
await asyncio.sleep(delay) await asyncio.sleep(delay)
if sim.wait_terminate(): if sim.wait_terminate(self.env):
self.wait_sims.append(sc) self.wait_sims.append(sc)
if self.verbose: if self.verbose:
......
...@@ -86,7 +86,7 @@ class Simulator(object): ...@@ -86,7 +86,7 @@ class Simulator(object):
def start_delay(self) -> int: def start_delay(self) -> int:
return 5 return 5
def wait_terminate(self) -> bool: def wait_terminate(self, env: ExpEnv) -> bool:
return False return False
...@@ -243,7 +243,7 @@ class NetSim(Simulator): ...@@ -243,7 +243,7 @@ class NetSim(Simulator):
def sockets_wait(self, env: ExpEnv) -> tp.List[str]: def sockets_wait(self, env: ExpEnv) -> tp.List[str]:
return [s for (_, s) in self.listen_sockets(env)] return [s for (_, s) in self.listen_sockets(env)]
def wait_terminate(self) -> bool: def wait_terminate(self, env: ExpEnv) -> bool:
return self.wait return self.wait
def init_network(self) -> None: def init_network(self) -> None:
...@@ -368,7 +368,7 @@ class HostSim(Simulator): ...@@ -368,7 +368,7 @@ class HostSim(Simulator):
deps.append(dev) deps.append(dev)
return deps return deps
def wait_terminate(self) -> bool: def wait_terminate(self, env: ExpEnv) -> bool:
return self.wait return self.wait
...@@ -535,6 +535,9 @@ class Gem5Host(HostSim): ...@@ -535,6 +535,9 @@ class Gem5Host(HostSim):
cmd += ' '.join(self.extra_config_args) cmd += ' '.join(self.extra_config_args)
return cmd return cmd
def wait_terminate(self, env: ExpEnv) -> bool:
return True if env.create_cp else self.wait
class Gem5KvmHost(Gem5Host): class Gem5KvmHost(Gem5Host):
...@@ -718,6 +721,9 @@ class SimicsHost(HostSim): ...@@ -718,6 +721,9 @@ class SimicsHost(HostSim):
return cmd + '-e run' return cmd + '-e run'
def wait_terminate(self, env: ExpEnv) -> bool:
return True if env.create_cp else self.wait
class CorundumVerilatorNIC(NICSim): class CorundumVerilatorNIC(NICSim):
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment