Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

GNU Parallelでfswebcamを四台同時撮影したら待ち時間半分以下になった件

GNU parallelコマンドで並列実行する - Bye Bye Moore
でやったGNU parallelで早くなるかと思い実験

実際のところ

$ time (fswebcam -d /dev/video0  -r 640x480 -F 2 -S 4 image_0.png; fswebcam -d /dev/vide
o2  -r 640x480 -F 2 -S 4 image_2.png; fswebcam -d /dev/video4  -r 640x480 -F 2 -S 4 image_4.png; fswebcam -d /dev/video8  -r 640x480 -F 2 -S 4 image_8.png;)
--- Opening /dev/video0...
…
--- Processing captured image...
Writing JPEG image to 'image_8.png'.

real    0m4.430s
user    0m0.317s
sys     0m0.098s

お待ちかねのGNU Prallel版。
区切りは改行でやってるので、デバイス番号は手打ち……。

$ time (printf "0\n2\n4\n8\n" | parallel fswebcam -d /dev/video{}  -r 640x480 -F 2 -S 4
image_{}.png)
--- Opening /dev/video0...
...
--- Processing captured image...
Writing JPEG image to 'image_4.png'.

real    0m1.684s
user    0m0.502s
sys     0m0.230s