Bläddra i källkod

Added script for running all exercises in parallel.

Kristian Schultz 4 år sedan
förälder
incheckning
3b2168b117
1 ändrade filer med 32 tillägg och 0 borttagningar
  1. 32 0
      run_all_exercises.py

+ 32 - 0
run_all_exercises.py

@@ -0,0 +1,32 @@
+from library.analysis import testSets
+from library.analysis import runExerciseForSpheredNoise, runExerciseForRepeater
+from library.analysis import runExerciseForSimpleGAN, runExerciseForConvGAN
+import os
+import threading
+
+
+nWorker = 0
+
+fns = [ ("Repeater",     runExerciseForRepeater)
+      , ("SpheredNoise", runExerciseForSpheredNoise)
+      , ("SimpleGAN",    runExerciseForSimpleGAN)
+      , ("convGAN",      runExerciseForConvGAN)
+      ]
+
+for dataset in testSets:
+    for (name, f) in fns:
+        nWorker += 1
+        if 0 == os.fork():
+            print(f"#{nWorker}: start: {name}({dataset})")
+            f(dataset)
+            print(f"#{nWorker}: end.")
+            exit()
+        else:
+            if nWorker >= 2:
+                os.wait()
+                nWorker -= 1
+
+while nWorker > 0:
+    os.wait()
+    nWorker -= 1
+