reinit.py 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. #! /bin/env python
  2. import time
  3. start = time.clock()
  4. print("Starting at time " + str(start))
  5. from mpi4py import MPI
  6. import models
  7. import sys
  8. from pypdevs.simulator import Simulator, loadCheckpoint
  9. model = models.AutoDistChain(3, totalAtomics=500, iterations=1)
  10. sim = Simulator(model)
  11. sim.setAllowLocalReinit(True)
  12. sim.setTerminationTime(40)
  13. sim.setVerbose("output/reinit1")
  14. sim1start = time.clock()
  15. print("Sim 1 started at " + str(sim1start))
  16. sim.simulate()
  17. sim.setReinitStateAttr(model.generator.generator, "value", 2)
  18. sim2start = time.clock()
  19. sim.setRemoveTracers()
  20. sim.setVerbose("output/reinit2")
  21. print("Sim 2 started at " + str(sim2start))
  22. sim.simulate()
  23. sim.setReinitStateAttr(model.generator.generator, "value", 3)
  24. sim3start = time.clock()
  25. print("Sim 3 started at " + str(sim3start))
  26. sim.setRemoveTracers()
  27. sim.setVerbose("output/reinit3")
  28. sim.simulate()
  29. sim3stop = time.clock()
  30. print("Total runtimes: ")
  31. print("Init: " + str(sim1start - start))
  32. print("Sim 1: " + str(sim2start - sim1start))
  33. print("Sim 2: " + str(sim3start - sim2start))
  34. print("Sim 3: " + str(sim3stop - sim3start))