概要
cwltoolで、以下のようなエラーがでるときがある。
[Errno 28] No space left on device on device: '/tmp/q0aq3bde
実際ディスク領域が足りない。
結論
/tmp
に十分な容量がないときにおこるものなので、
以下のオプションで、十分に容量があるところを指定する
--tmpdir-prefix TMPDIR_PREFIX
Path prefix for temporary directories
--tmp-outdir-prefix TMP_OUTDIR_PREFIX
Path prefix for intermediate output directories
Mac で docker を使っているときなどに起こりやすい
考えられる原因
/tmp
が足りないケースはいくつか考えられる。Macのdockerとかつかっているとおこるかもしれないし、
Linux でも起こりうる。
このような場合、普通のディスクをしていしてみるという手もある。
RAMディスクがつかえるならば、それでもよいかもしれない。
共有計算機で、分散ファイルシステムだったりすると、あまりこのような使用に向いていないファイルシステム(lustreとか?)が考えら得るので、scratch領域、各計算ノード固有のディスクスペースなどがあるならばそれを指定したほうが良い。
いくつかの環境でベンチマークをとっておくと、
常に遅いのか、マシン固有なのかなどのきりわけでもできるだろう。