###################################################### # testing activities # this test aims at characterizing the CPU testing = 1 dynamics_plot_online = 0 if testing == 1: sleepTimeTest = [ cpu_model(x) for x in cpuSequence] data = {"x":[], "y":[]} for sleepTime in sleepTimeTest: monitor = MonitorThread(0, 0.1) monitor.setSleepTimeTarget(sleepTime) monitor.start() actuator = openLoopActuator(monitor, 10, 0, dynamics_plot_online) actuator.setSleepTime(sleepTime) actuator.run() monitor.running = 0 dynamics = monitor.getDynamics() actuator.close() monitor.join() data['x'].append(sleepTime) data['y'].append(sum(dynamics['cpu']) / float(len(dynamics['cpu']))) monitor.running = 0 monitor.join() if not dynamics_plot_online:
testing = 1 dynamics_plot_online = 0 if testing == 1: sleepTimeSequence = [ 0.001, 0.005, 0.01, 0.02, 0.03, 0.08, 0.1, 0.15, 0.2, 0.3, 0.4, 0.5 ] cpuSequence = [ 0.1, 0.8, 0.30, 0.70, 0.40, 0.10, 0.20, 0.60, 0.20, 0.70 ] #cpuSequence = [ 0.80] #sleepTimeSequence = [0.001, 0.02] sleepTimeSequence = [cpu_model(x) for x in cpuSequence] stepPeriod = 4 monitor = MonitorThread(0, 0.1) actuator = openLoopActuator(monitor, len(sleepTimeSequence) * stepPeriod, 0, dynamics_plot_online) monitor.start() actuator.run_sequence(sleepTimeSequence) monitor.running = 0 dynamics = monitor.getDynamics() actuator.close() monitor.join() with open('feed_forward_data', 'w') as outfile: json.dump(dynamics, outfile) else: with open('feed_forward_data', 'r') as outfile: dynamics = json.load(outfile)
###################################################### # FEEDFORWARD TEST # ###################################################### # testing activities # this test aims at characterizing the CPU testing = 1 dynamics_plot_online = 0 if testing == 1: sleepTimeSequence = [0.001, 0.005, 0.01, 0.02, 0.03, 0.08, 0.1, 0.15, 0.2, 0.3, 0.4, 0.5] cpuSequence = [0.1, 0.8, 0.30, 0.70, 0.40, 0.10, 0.20, 0.60, 0.20, 0.70] #cpuSequence = [ 0.80] #sleepTimeSequence = [0.001, 0.02] sleepTimeSequence = [ cpu_model(x) for x in cpuSequence] stepPeriod = 4 monitor = MonitorThread(0, 0.1) actuator = openLoopActuator(monitor, len(sleepTimeSequence) * stepPeriod, 0, dynamics_plot_online) monitor.start() actuator.run_sequence(sleepTimeSequence) monitor.running = 0 dynamics = monitor.getDynamics() actuator.close() monitor.join() with open('feed_forward_data', 'w') as outfile: json.dump(dynamics, outfile) else: with open('feed_forward_data', 'r') as outfile: dynamics = json.load(outfile) plt.figure()