run_all_exercises.py 834 B

1234567891011121314151617181920212223242526272829303132
  1. from library.analysis import testSets
  2. from library.analysis import runExerciseForSpheredNoise, runExerciseForRepeater
  3. from library.analysis import runExerciseForSimpleGAN, runExerciseForConvGAN
  4. import os
  5. import threading
  6. nWorker = 0
  7. fns = [ ("Repeater", runExerciseForRepeater)
  8. , ("SpheredNoise", runExerciseForSpheredNoise)
  9. , ("SimpleGAN", runExerciseForSimpleGAN)
  10. , ("convGAN", runExerciseForConvGAN)
  11. ]
  12. for dataset in testSets:
  13. for (name, f) in fns:
  14. nWorker += 1
  15. if 0 == os.fork():
  16. print(f"#{nWorker}: start: {name}({dataset})")
  17. f(dataset)
  18. print(f"#{nWorker}: end.")
  19. exit()
  20. else:
  21. if nWorker >= 2:
  22. os.wait()
  23. nWorker -= 1
  24. while nWorker > 0:
  25. os.wait()
  26. nWorker -= 1