diff --git a/no_preempt_rt.svg b/no_preempt_rt.svg new file mode 100644 index 0000000..f64c0aa --- /dev/null +++ b/no_preempt_rt.svg @@ -0,0 +1,1094 @@ + + + + + + + + 2022-12-26T13:46:21.499048 + image/svg+xml + + + Matplotlib v3.6.2, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test.py b/test.py new file mode 100644 index 0000000..67c53d6 --- /dev/null +++ b/test.py @@ -0,0 +1,34 @@ +import subprocess +import time +import matplotlib.pyplot as plt + +ITERATIONS = 300 +ITERATION_DURATION = 1 #second(s) + +def set_rt_priority(): + subprocess.run(["schedtool", "-F", "-p", "99"], check=True) + +def rt_task(): + new_time = time.time() + jitter_record = [] + for i in range(ITERATIONS + 1): + old_time = new_time + new_time = time.time() + print("--------------------------------------------------") + print(f"system time:\t{new_time} s") + print(f"time diff:\t{new_time - old_time} s") + jitter = new_time - old_time - ITERATION_DURATION + jitter_record.append(jitter) + print(f"jitter:\t{jitter} s") + time.sleep(new_time + ITERATION_DURATION - time.time()) + jitter_record.pop(0) + plt.plot(jitter_record) + plt.title(f"Jitter at {ITERATION_DURATION} s interval") + plt.xlabel("Iteration") + plt.ylabel("Jitter (in s)") + plt.savefig("out.svg") + + +if __name__ == "__main__": + set_rt_priority() + rt_task() \ No newline at end of file diff --git a/with_preempt_rt.svg b/with_preempt_rt.svg new file mode 100644 index 0000000..879ba14 --- /dev/null +++ b/with_preempt_rt.svg @@ -0,0 +1,1108 @@ + + + + + + + + 2022-12-26T13:58:23.561539 + image/svg+xml + + + Matplotlib v3.6.2, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +