Dies ist die Heimstatt eines Werkzeuges, welches in meiner wissenschaftlichen Tätigkeit mir die Verwaltung von Parameterstudien erleichterte, bzw. getrieben von dieser als Idee keimte und nach ein paar Jahren erwachsen wurde. Ich hoffe, es ist der Allgemeinheit nützlich und kann eine Position zwischen selbstständiger Arbeit auf dem Laptop und Auslastung eines parallelen Rechnersystems mit zentraler Stapelverarbeitung (Batchsystem) einnehmen.
Bald wird es gescheite Versionen geben. Derzeit sei auf den aktuellen
Stand aus dem Revisionskontrollsystem verwiesen. Das Skript jobber
benötigt
lediglich ein POSIX-Basissystem (fork/exec und Dateisystemsemantik) und Perl 5 mit Version 4 von
Config::Param
in Reichweite.
svn://scm.orgis.org/thor/jobber
Eine (englische) Beschreibung findet man in der
generierten HTML-Dokumentation
(jobber -h=-100 | pod2html
)
Further documentation in English is available from the RRZ / Universität Hamburg:
Weiterhin sind hier
auf denen ich etwas freier erzähle was es mit jobber auf sich hat und warum ich das Programm zwangsläufig schreiben musste.shell$ for n in $(seq 1 10); do echo "echo === task $n ===; sleep $n; echo === task $n done ==="; done > joblist shell$ jobber joblist init [2022-04-21T14:59:54] appended 10 tasks shell$ jobber -p4 -v --time=3 joblist all [2022-04-21T15:00:18] 1.1 task.worker: echo === task 1 ===; sleep 1; echo === task 1 done === [2022-04-21T15:00:18] 2.2 task.worker: echo === task 2 ===; sleep 2; echo === task 2 done === [2022-04-21T15:00:18] 3.3 task.worker: echo === task 3 ===; sleep 3; echo === task 3 done === [2022-04-21T15:00:18] 4.4 task.worker: echo === task 4 ===; sleep 4; echo === task 4 done === === task 1 === === task 2 === === task 3 === === task 4 === === task 1 done === [2022-04-21T15:00:19] 1.1 exit status: 0 [2022-04-21T15:00:19] 5.5 task.worker: echo === task 5 ===; sleep 5; echo === task 5 done === === task 5 === === task 2 done === [2022-04-21T15:00:20] 2.2 exit status: 0 [2022-04-21T15:00:20] ending operation, out of time === task 3 done === [2022-04-21T15:00:21] 3.3 exit status: 0 === task 4 done === [2022-04-21T15:00:22] 4.4 exit status: 0 === task 5 done === [2022-04-21T15:00:24] 5.5 exit status: 0 shell$ jobber joblist count todo 10 5 shell$ shell$ jobber joblist all [2022-04-21T15:02:18] 6.6 task.worker: echo === task 6 ===; sleep 6; echo === task 6 done === === task 6 === === task 6 done === [2022-04-21T15:02:24] 6.6 exit status: 0 [2022-04-21T15:02:24] 7.7 task.worker: echo === task 7 ===; sleep 7; echo === task 7 done === === task 7 === === task 7 done === [2022-04-21T15:02:31] 7.7 exit status: 0 [2022-04-21T15:02:31] 8.8 task.worker: echo === task 8 ===; sleep 8; echo === task 8 done === === task 8 === === task 8 done === [2022-04-21T15:02:39] 8.8 exit status: 0 [2022-04-21T15:02:39] 9.9 task.worker: echo === task 9 ===; sleep 9; echo === task 9 done === === task 9 === === task 9 done === [2022-04-21T15:02:48] 9.9 exit status: 0 [2022-04-21T15:02:48] 10.10 task.worker: echo === task 10 ===; sleep 10; echo === task 10 done === === task 10 === === task 10 done === [2022-04-21T15:02:58] 10.10 exit status: 0 shell$ jobber joblist report # job report # selection: all #task worker runtime/s begin_epoch/s crc exit signal 1 1 1 1650546018 29642 0 -1 2 2 2 1650546018 56930 0 -1 3 3 3 1650546018 19173 0 -1 4 4 4 1650546018 38163 0 -1 5 5 5 1650546019 404 0 -1 6 6 6 1650546138 44092 0 -1 7 7 7 1650546144 14523 0 -1 8 8 8 1650546151 1009 0 -1 9 9 9 1650546159 38774 0 -1 10 10 10 1650546168 8028 0 -1 shell$ jobber joblist requeue:3 [2022-04-21T15:08:07] tasks changed to state Q: 1 shell$ jobber joblist 1 [2022-04-21T15:08:16] 3.11 task.worker: echo === task 3 ===; sleep 3; echo === task 3 done === === task 3 === === task 3 done === [2022-04-21T15:08:19] 3.11 exit status: 0 shell$ jobber joblist report # job report # selection: all #task worker runtime/s begin_epoch/s crc exit signal 1 1 1 1650546018 29642 0 -1 2 2 2 1650546018 56930 0 -1 3 11 3 1650546496 19173 0 -1 4 4 4 1650546018 38163 0 -1 5 5 5 1650546019 404 0 -1 6 6 6 1650546138 44092 0 -1 7 7 7 1650546144 14523 0 -1 8 8 8 1650546151 1009 0 -1 9 9 9 1650546159 38774 0 -1 10 10 10 1650546168 8028 0 -1