def getNiceSubsetName(self, params: List[str], simSet: "SimulationSet") -> str: assert all(sim in self for sim in simSet) result = ",".join( getNiceParamName(k, simSet[0].params[k]) for k in params if getNiceParamName(k, simSet[0].params[k]) != "") return result
def runTimeWeak(ax: plt.axes, sims: SimulationSet) -> None: for (params, simSet) in getScalingSimSets(sims, ["ReferenceGasPartMass"]): numCores = [sim.params["numCores"] for sim in simSet] runTimes = [sim.runTime for sim in simSet] ax.xlabel("N") ax.xscale("log") ax.yscale("log") ax.ylabel("run time [s]") ax.plot(numCores, runTimes, label=",".join(getNiceParamName(k, v) for (k, v) in params.items()), marker="o") # plt.plot(numCores, numCores, label="Ideal") ax.legend()
def speedupWeak(ax: plt.axes, sims: SimulationSet) -> None: for (params, simSet) in getScalingSimSets(sims, ["ReferenceGasPartMass"]): numCores = [sim.params["numCores"] for sim in simSet] runTimes = [sim.runTime for sim in simSet] ax.xscale("log") baseTime = runTimes[0] speedup = [0 if runTime is None else baseTime / runTime for runTime in runTimes] ax.xlabel("N") ax.ylabel("Speedup") ax.plot(numCores, speedup, label=",".join(getNiceParamName(k, v) for (k, v) in params.items()), marker="o") ax.plot(numCores, [1 for core in numCores], label="Ideal") ax.legend()
def getNiceSimName(self, sim: Simulation) -> str: assert sim in self result = ",".join( getNiceParamName(k, sim.params[k]) for k in self.variedParams if getNiceParamName(k, sim.params[k]) != "") return result