不老で遊んでみた

「スーパーコンピュータ「不老」Type IIサブシステム利用 マルチGPU・Deep Learningハッカソン」を開催します。 | 名古屋大学 情報連携推進本部

 

ちょうど興味があるハッカソンがあったので急遽参加してみた。

恐らく世の中にはスパコンを触ったことのない人の方が多いだろうけど,スパコンも種類によって全然違うので昔のスパコンの経験が今のスパコンで役に立つことは実のところ少ない。今回参加モチベーション的には「貴重な経験が出来る」くらいのノリである。

不老の中も大きく3つのサブシステムがあって,今回触ったTypeⅡサブシステムが所謂GPUクラスタ構成である。今回これでマルチGPUや深層学習を行う二日間のハッカソンであった。久々に変な疲れ方をした。

 

個人的に今回のキーワードは3つ。

 

・Singularity

ソフト名である。dockerが流行っているがこちらはdockerだけでは管理権限無しでは普通使えないようなデバイスなどに事前に権限を与えておくコンテナ環境である。具体的には分散並列計算やGPUなどのアクセラレータである。逆に言うとこれらを共用で使うスパコン管理以外で出てこないコンテナ技術とも言える。

私はこれを予習してこなかったために当日これの学習に大半を費やしてコンテナビルドしたところでタイムアップであった。結局不老で何も計算できなかった。労多くして不老にノーフローである。

普段管理権限をもったマシンばかり扱う反動が出てしまった感がある。

 

・マルチGPU

GPU自体は手持ちにももちろんあるがマルチGPUの環境が無かったために以前は準備していなかった.V100が4枚の環境を借りていたのだがマルチGPUらしい使い方をしてこなかった。今回は不老環境に苦心している間,こちらの借り物環境でPyTorchのマルチGPUジョブを流してみた。単独よりは速いが4倍はほど遠い速度なので1ノード4GPUではなく4ノード4GPUの構成に組んだ方が良さそうである。

 

・バッチジョブ

不老に限らずスパコンのシステムはPCと違ってユーザが気楽に使える部分とガチ計算部分がある。当然ガチ計算部分を使うのであるが,ここに計算させるにはバッチ命令でどんな計算をどういった環境でどのくらいの時間するか事前に明記してお願いする必要がある。こういったジョブ投入に慣れていないと色々と戸惑うことが多い。

共有物を効率的に使うシステム上当然ではある。これも普段使うことが無いので色々と無駄な時間を費やすことになった。

 

まぁ,基本的に私の不足部分を知ったのと講師陣にどういう方が居てどういった技術を持っているか知ったのが一番の収穫です。二番目の収穫は少しは将棋に興味を持っていただいたことかな。

とにかく,講師陣の皆様ありがとうございました。