123456789101112131415161718192021222324252627282930313233343536373839 |
- import sys
- import random
- schedulers = ["sim.setSchedulerActivityHeap()", "sim.setSchedulerCustom('schedulerH', 'SchedulerH')"]
- scheds = {0: "activityHeap", 1: "heap"}
- actives = range(0, 1000, 10)
- sys.setrecursionlimit(10000)
- sys.path.append("../../src/")
- from simulator import Simulator
- import time
- iters = max(int(sys.argv[1]), 20)
- def runFunc(param):
- schedulername, scheduler = param
- f = open("seq_activity_synthetic/" + str(scheds[schedulername]), 'w')
- for active in actives:
- from model import StaticModel
- total = 0.0
- for _ in range(iters):
- random.seed(1)
- model = StaticModel(1000, active)
- sim = Simulator(model)
- sim.setMessageCopy('none')
- exec(scheduler)
- sim.setTerminationTime(100)
- start = time.time()
- sim.simulate()
- del sim
- total += (time.time() - start)
- f.write("%s %s\n" % (active, total/iters))
- print("%s %s" % (active, total/iters))
- f.close()
- map(runFunc, enumerate(schedulers))
- """
- from multiprocessing import Pool
- p = Pool(3)
- p.map(runFunc, enumerate(schedulers))
- """
|