ITO-A 上の Miniconda Python で Segmentation fault

Table of Content

スパコン ITO-A に Miniconda (Anaconda) をインストールし,仮想環境を構築後,Pythonスクリプトを実行すると,Segmentation fault となる不具合が生じました.解決方法が分かりましたので,まとめておきます.

Minicondaのインストール時の注意

問題はベンダーが用意したPythonとの競合でした.インストール前に ~/.bashrc の最後の方に

export PYTHONPATH=

を追記し,PYTHONPATHの設定を解除しておく必要がありました.ログインしなおしてから,通常通り Miniconda をインストールすることで解決しました.具体的な方法は こちら にまとめてあります.

Segmentation fault の発生状況

以前は問題なく動いていた環境でしたが,数ヶ月ぶりに作業をしようとしたところ,この問題に遭遇しました.Python パッケージのアップデートを行ったので,それが原因かもしれませんし,ベンダー側のアップデート等で環境が変化した可能性もありますが,原因は不明でした.

そこでインストールしたMinicondaをアンインストールし,再度インストールした後,仮想環境を作成し,パッケージのインストールをやりなおしました.インストール段階では不具合は見られませんでしたが,Python スクリプトを動かすとやはり Segmentation fault となりました.

この仮想環境の Python のバージョンを調べたところ,base 環境とは異なり,ベンダーの Intel 版 Python になっていました.不思議なのは base 環境は Miniconda の Python でした.module load で Intel Fortran をロードしていましたので,その際にベンダーの Intel 版 Python がデフォルトになってしまうものと推察し,これを アンロードしたところ,今度はベンダーデフォルトの Python 2.7 になりました.echo PYTHONPATH を見ると,確かにベンダー環境を指していました.

不適切な PYTHONPATH が残ってしまっていることが問題と思われたので,上記の方法を試したところ,解決しました.

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください