概要
Singularity は HPC (High Performance Computing) 環境向けに開発されたコンテナプラットフォームです。 様々なアプリケーションのイメージファイルがインターネット上で公開されており、インストールが複雑なアプリケーションでも容易に実行環境を構築することができます。 利用方法
Singularity の実行コマンド名は singularity です。 実行前の環境設定 % module load singularityコンテナの中にログイン % singularity shell (イメージファイル) % singularity shell --nv (イメージファイル) # GPUを使用する場合コンテナの中でコマンドを実行 % singularity exec (イメージファイル) (コマンド) % singularity exec --nv (イメージファイル) (コマンド) # GPUを使用する場合singularityのイメージファイルは実行権限が付いていますので、singularity exec の代わりに直接イメージファイルを実行することもできます(イメージファイルに依っては、イメージファイルに関する情報が出る場合があります)。 % (イメージファイル) (コマンド) イメージファイル
以下のサイトから様々なアプリケーションのイメージファイルをダウンロードできます。
/usr/appli/freeware/singularity/images/に置いてあります。 Singularity Library, Docker Hub に登録されているイメージファイルは singularity pull コマンドでダウンロードできます。 $ singularity pull library://(イメージファイルのパス) # Singularity Library からダウンロード $ singularity pull docker://(イメージファイルのパス) # Docker Hub からダウンロード
Singularity Library に登録されているイメージファイルは singularity search コマンドで検索することができます。 $ singularity search (キーワード) 実行例
例1) Trinity (trinityrnaseq) のイメージファイルをダウンロード、実行 $ singularity search trinity No users found for 'trinity' No collections found for 'trinity' Found 1 containers for 'trinity' library://colinsauze/default/trinity Tags: v2.9.1 $ singularity pull library://colinsauze/default/trinity:v2.9.1 INFO: Downloading library image ... $ singularity exec trinity_v2.9.1.sif Trinity (Trinity の helpページ) ... 例2) PyTorch で MNIST を実行 $ singularity pull docker://nvcr.io/nvidia/pytorch:20.03-py3 # NGC の PyTorch をダウンロード $ git clone https://github.com/pytorch/examples.git # サンプルコードをダウンロード $ singularity exec --nv pytorch_20.03-py3.sif bash examples/run_python_examples.sh mnist ... Test set: Average loss: 0.0577, Accuracy: 9802/10000 (98%) Completed successfully 補足
関連サイト
|