Skip to content
Snippets Groups Projects
campaign1.py 934 B
#!/usr/bin/env python3

import random
from time import *
import concurrent.futures

from instance1 import start_instance

# Prepare the start date samples
begin_trace = 1356994806  # according to original SWF header
jun1_unix_time, nov30_unix_time = mktime(strptime(
    'Sun Jun  1 00:00:00 2014')), mktime(strptime('Sun Nov 30 23:59:59 2014'))
jun1, nov30 = (int)(jun1_unix_time -
                    begin_trace), (int)(nov30_unix_time - begin_trace)

random.seed(1997)

nb_expe = 50


start_dates = [random.randint(jun1, nov30 - 72 * 3600)
               for _ in range(nb_expe)]

with concurrent.futures.ProcessPoolExecutor() as executor:
    instances = []
    for i in range(nb_expe):
        print(f"Submit expe {i}")
        instances.append(executor.submit(start_instance, i, start_dates[i], True, True))

    for instance in concurrent.futures.as_completed(instances):
        print(f"Expe {instance.result()} terminated")