6.6. Python
Pythonの概要#
本サービスにおいて標準で利用可能なPythonの情報を記述します。本サービスでは以下のバージョンのPythonを使用可能です。
$ python3.6 --version
Python 3.6.8
x86システムおよびGPUシステムでは、Environment Modulesによる環境設定でPython 3.9.19を使用可能です。
利用方法#
システムにインストールされたPython実行環境に対して、利用者が変更を加えることはできません。その代わりに、利用者は独自に作成したPython仮想環境やローカルディレクトリに必要なモジュールを追加して利用することができます。以下では、それらの利用方法を説明します。
-
venvの利用方法
Pythonの
venv
モジュールを使用することで、仮想環境として、システムとは別のsite
ディレクトリを作成することができます。それぞれの仮想環境には、固有の(仮想環境を作成するのに使ったバイナリのバージョンと同一の)Pythonバイナリがあり、 仮想環境ごとのsite
ディレクトリに独立したPythonパッケージ群をインストールできます。仮想環境の利用例を以下に示します。
$ python3.6 -m venv work-3.6 # work-3.6という名前の仮想環境を作成 $ source work-3.6/bin/activate # 仮想環境の有効化 (work-3.6) $ pip3 install numpy # 仮想環境へnumpyをインストール (work-3.6) $ deactivate # 仮想環境の無効化
-
ローカルディレクトリにモジュールをインストールして使用する方法
仮想環境を使わずに、利用者アカウントのローカルディレクトリにインストールしたモジュール群を使用することも可能です。
pip3
コマンドの-t
オプションでモジュールのインストール先に利用者アカウントのローカルディレクトリを指定します。
$ pip3 install numpy -t ${HOME}/pythonlib
これらのモジュールを使用する際には、環境変数PYTHONPATH
にモジュールをインストールしたローカルディレクトリのパスを追加します。
$ export PYTHONPATH=${HOME}/pythonlib:$PYTHONPATH
Spackを用いたPythonのインストール#
ユーザー領域へのSpackを用いたPythonのインストール方法を、Python v3.9.12のインストールを事例に説明します。
-
ユーザー領域にSpackの環境を構築
ユーザー領域へのSpackの環境構築方法は、6.3.2. Spackの環境構築方法を参照ください。
-
ログインノード上で、以下のコマンドを実行し、インストールに必要なファイルを事前にダウンロードします
$ SPACKDIR=${HOME}/spack-local $ . ${SPACKDIR}/spack-0.18.0/share/spack/setup-env.sh $ spack mirror create -d ${SPACK_ROOT}/spack-mirror -D python@3.9.12
- x86,gpuシステム向けの構築ではログインノード上でインストールを実施します。
$ spack install python@3.9.12
-
Armシステム向けの構築では、Arm計算ノード上でインストールを実施します。
以下のJOBスクリプトを用意し、Arm計算ノードに投入します。
$ cat spack_install_python_arm.sh #!/bin/sh -xe #PJM -L "rscunit=rscunit_ft01" #PJM -L "rscgrp=arm-small" #PJM -L "node=1" #PJM -L "elapse=3:00:00" #PJM -j SPACKDIR=${HOME}/spack-local . ${SPACKDIR}/spack-0.18.0/share/spack/setup-env.sh spack install python@3.9.12 $ pjsub ./spack_install_python_arm.sh