GPUユーザー1は、様々なフレームワーク2や言語3で提供されるサンプルコードを試したり、バージョンアップによって動かなくなった過去コードのメンテナンス4に追われたりと、環境にまつわる問題に日々悩まされていました。

この問題に対する解は仮想環境の利用です。仮想環境はこのような問題を解決するのに役立ちますが、所詮フレームワークを切り替えたい位の話なので、VMwareなどの仮想マシンではいろんな意味で重すぎます。ほとんどのGPUユーザーに使われている仮想化が、コンテナ型のDockerです。5 以下、Dockerについては既に使っていること前提で、話を進めていこうと思います。

Docker6を使っていると、ちょっと気になることがあります。それは、dockerがデーモンで動いているし、イメージを立ち上げるには、実行時にsudoしないといけない7し、イメージ内ではrootになっていし、違和感満載8です。さらに、USBカメラ使いたいとかGUIしたいなどのちょっとしたことが面倒9です。
これは、まぁ慣れ的な話だし、慣れている人には慣れろと言われそうですが、他にいい方法があるハズです。

そこで、いきなりですが、結論です。そんなあなたは、

すぐにdockerからsingularityに切り替えるべき!

以上。

それでは、あなたをこの結論に誘う8つのことをご紹介します。

続きを読む