CV・NLPハマりどころメモ

画像認識と自然言語処理を研究する中でうまくいかなかったことと、その対策をまとめる自分用メモが中心。

産総研のスパコンでPythonを使ってみた[HPC][ABCI]

f:id:Vastee:20190607111720p:plain

ABCIとは?

人工知能機械学習・深層学習での使用を目的とした世界最大級のスパコン*1である.

利用手順

事務処理

ABCIを使用するにあたって各種事務手続きをしなければならない.筆者はこの辺よく知らないので割愛.

公開鍵の登録

事務処理後に送られてくるメールでABCIポータルのURLが送られてくるので,そこで公開鍵の登録を完了させる.

ターミナルを開き,ポートフォワーディング

公開鍵を登録したら,次は踏み台サーバーにポートフォワーディングする.

ssh -i ${PATH_TO_PRIVATEKEY}  -L 10022:es:22 -l ${YOUR_ID} as.abci.ai

→ Welcome to ABCI access server.

が表示されれば成功.

別のターミナルを開き,ABCIのログインノードに入る

ssh -i ${PATH_TO_PRIVATEKEY} -p 10022 -l ${YOUR_ID} localhost

Welcome to ABCI system

が表示されれば成功.

(参考)ポートフォワーディングとログインコマンドは./ssh/configに書いておくと楽

前の2つのコマンドを利用する際にいちいち入力するのは面倒なので,./ssh/configに書いておいた方が良い.

筆者の./ssh/config

Host abci_forward
 HostName as.abci.ai
 User ${YOUR_ID}
 LocalForward 10022 es:22
 IdentityFile ${PATH_TO_PRIVATEKEY}

Host abci
 HostName localhost
 User ${YOUR_ID}
 Port 10022
 IdentityFile ${PATH_TO_PRIVATEKEY}

登録しておくと次回から,

ssh abci_forward # 踏み台サーバーへポートフォワーディング
ssh abci # ABCIのログインノードにアクセス

でいける.

ABCIでPythonを利用してみる

ABCIのログインノードにアクセスできたら,次は試しにPythonを使ってみよう.

ABCIではシステム全体で使うPython実行環境にユーザーが変更を加えることができないため,仮想環境を作成する.

[username@es1 ~]$module load python/2.7/2.7.5

[username@es1 ~]$virtualenv env1

仮想環境を有効化し,pythonコマンドを叩いてみる.

[username@es1 ~]$source env1/bin/activate

(env1) [username@es1 ~]$python

Python 2.7.5 (default, Apr 11 2018, 07:36:10)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>

これでpythonの準備が完了した.次回はABCIを使って実際に機械学習し,ベンチマークをとってみる.

*1:2018/6時点では世界5位らしい https://pr.fujitsu.com/jp/news/2018/06/26.html