tsubame 2.5 への login...tsubame へのloginの概要(1) 演習室のmac からtsubame (linux...
TRANSCRIPT
TSUBAME 2.5 への Login
下川辺 隆史
東京工業大学学術国際情報センター
2017/3/7 第22回 GPUコンピューティング講習会(東京工業大学)
1
TSUBAME への login
2
TSUBAME への loginの概要(1)演習室のMac から TSUBAME (Linux ベース) を利用する方法について説明します。演習室のMac はWindows としても起動できますが、ここではMac を使用します。
n 手元のMac へのログインü 配布したゲストアカウントとパスワードでログインできます。
n TSUBAMEへのログインü 同じく配布したゲストアカウントとパスワードでログインできます。
n TSUBAMEアカウントをお持ちの方へü ゲストアカウントでなくご自身のアカウントを使用しても問題ありません。ただし、環境変数などの設定によっては、ゲストアカウントでの説明と異なる動作をする可能性があります。TSUBAMEに慣れていない場合には、トラブル回避のためゲストアカウントをご利用ください。 3
TSUBAME への loginの概要(2)n TSUBAME へログインし、TSUBAME上のアプリケーションのウィンドウを手元で表示するために、「ターミナル」と「X11」を利用します。ターミナルは、 TSUBAME で実行するコマンドを入力するアプリケーションです。X11 を使うと、TSUBAME 上のウィンドウや画像ファイルなどをMac 側へ(明示的に)転送することなく表示することができます。
n 一言で言うと、TSUBAME へ SSH でログインし、X を飛ばし利用します。
4
ターミナルの起動(1)n ターミナルを起動します。Finderメニューの[移動]から
[アプリケーション]を選択します。
5
ターミナルの起動(2)n 開いた [アプリケーション]の中の[ユーティリティ]内に
[ターミナル]があります。これを起動します。
6
[アプリケーション]→[ユーティリティ]→[ターミナル]
ターミナルの起動(3)n 白いウィンドウが開きます。これを「ターミナル(端末)」と呼びます。このターミナルを利用してTSUBAME へログインします。
7
TSUBAME への login(1)n TSUBAMEへログインします。ターミナルで次を実行します。
8
$ ssh –Y login-t2.g.gsic.titech.ac.jp
TSUBAME への login(2)n 初回ログイン時は Are you sure you want to continue
connecting (yes/no)? と聞かれます。 yes 入力し、Enter を押します。
9
「yes」と入力
TSUBAME への login(3)n 次にパスワードの入力を求められますので、パスワードを入力し、Enter を押します。入力したパスワードは表示されません。
10
パスワードは表示されません
TSUBAME への login(4)n 以下のように、「アカウント名@t2a00????:~>」と表示されれば、TSUBAME への login 成功! 「t2a00????」部分はノード名でログインする毎に変わります。
11
Login 成功!!
TSUBAMEは複数のハイスペックなパソコンで構成されていると考えることができます。その一台のパソコンを「ノード」と呼びます。
ノード名
X11起動の確認(1)n X11が正しく起動することを確認します。TSUBAMEへログインしたターミナルで、「xeyes」と入力し Enter します。しばらくすると「X11」が自動的に起動し、以下のように「xeyes」が表示されます。
12
ターミナルで、「xeyes」と入力し Enter
「xeyes」が表示されている
X11起動の確認(2)n X11が起動しているかどうかは、デスクトップ下のDockに「X」マークのアイコンが表示され、アイコン下に黒い点があるかどうかで確認できます。黒い点がある場合は起動しています。
13
「X」マークの下に黒い点があります。起動しています。
プログラム作成とコンパイルの手順
14
プログラムの作成n 本講習では、プログラムの作成は TSUBAME上のテキストエディタを使用し行います。
n Microsoft Visual Studio や Eclipse 等の統合開発環境もありますが、ここでは、Emacsや Vi 等のシンプルなテキストエディタ(しかしメモ帳よりは高機能)を使用します。本講習では、TSUBAME 上で簡単に使用できる geditを使用します。
n なお、TSUBAME では、ターミナルから Emacsや Vim を利用できますので、これらのエディタに慣れている方は、こちらを使って頂いても構いません。
15
geditの起動(1)n TSUBAMEへloginしたターミナルでgeditを起動します。「gedit &」と入力しEnterします。最後に「&」を入力し、バックグラウンドジョブとします。
16最後に「&」をつけます。
geditの起動(2)n geditのWindow が表示されます。
17
ソースコードの作成n geditで以下のようなコード(C言語の例)を書きます。
18
geditでソースコードへ色付けn geditは、標準で C言語、C++ 、CUDA、Python の予約語、演算子、コメントなどを色付けして表示できます。下記のように設定します。
19
2. 対応する言語を選択します。ここではC言語を選択しています。
1. ここをクリックします。
3. CUDAも選択できます。
4. Pythonも選択できます。
ファイルの保存(1)n geditでファイルを保存します。「保存」をクリックすれば保存のダイアログが出ます。ここでは「hello.c」というファイル名で保存します。
20
ファイルの保存(2)n 「ls」と実行するとディレクトリにあるファイル一覧が得られます。「hello.c」が作成されていることを確認します。
21
コンパイルと実行(1)n ソースコード hello.cをコンパイルしてみます。n ターミナルで、以下のように実行していきます。gccコンパイラでコンパイルします。> gcc hello.c
n コンパイルに成功すれば「a.out」が出来ているはずです。「ls」で確認してみましょう。これが実行ファイルです。
22
実行ファイルです。
コンパイルと実行(2)n TSUBAME で「a.out」を実行してみます。以下のコマンドで実行することができます。「a.out」と打つだけではだめで、「./a.out」とします。「./」を忘れずに。> ./a.outHello, TSUBAME!
このように出力されれば成功です。
23
ソースコードの取得n 講習会で使用するソースコードをコピーします。以下のコマンドを実行して、各自のホームディレクトリにコピーしてください。コマンド最後の” . ”を忘れずに。> cd> scp –rp t2a006161:/tmp/gpgpu .
ノード t2a006161以外に、t2a006162, t2a006163, t2a006164も利用できます。t2a006161へのアクセスが遅い場合やアクセスできない場合にはコマンド中の t2a006161を他のノード名へ変更して再度試してください。
n gpgpuディレクトリが各自のホームディレクトリにコピーされます。以下のコマンドで中身を確認できます。> ls gpgpu
24
付録
25
ファイルの転送(1)n 「scp」コマンドを使用し TSUBAME からMac へファイル転送できます。
TSUBAME 上で転送したいファイル、ディレクトリのパスを確認します。TSUBAME 上の転送したいファイル、ディレクトリに対して 「readlink –e files」を実行して得られた結果がパスです。例えば、
得られた結果がパスです。
26
> readlink –e files/home/usr?/guest???/files TSUBAME上で実行
ファイルの転送(2)次にMacで「scp」コマンドを実行します。順に、scpのオプション「-rp」、先ほど取得したTSUBAME上の転送したいファイルのパス、Mac上の転送先を指定します。
(上記は2行ですが、1行で実行します。「:」と「/home」の間にはスペースをいれません。)
実行するとパスワードが聞かれます。パスワードはTSUBAMEへログインした際に使用したパスワードです。
scpが実行されると、デスクトップに「files」が現れます。
27
> scp –rp [email protected]:/home/usr?/guest???/files ~/Desktop/ Mac上で実行
ターミナル上で使う代表的なコマンド(1)n ターミナル上では「cd」や「ls」と入力します。これらを「コマンド」と言います。
n ここでは、TSUBAME(や一般な Linux)で利用できるコマンドの一例を紹介します。試してみましょう。(”>” は、続けてコマンド入力したことを表しています。)
> lsフォルダ(Linux ではディレクトリと言います)内のファイルを表示します。
> pwd現在ターミナルがいるディレクトリの位置を表示します。
> cd /home/usr1/your-account現在いるディレクトリを移動するコマンドです。cd の後に「移動先のディレクトリ」を続けて実行します。例では、ターミナルがいる位置を「/home/usr1/your-account」へ変更します。
> cd ../ターミナルがいる位置を一つ上のディレクトリへ移動します。
28
ターミナル上で使う代表的なコマンド(2)> mkdir dir「dir」というディレクトリを作成します。ディレクトリはフォルダに相当します。
> mv file1.txt file2.txt「file2.txt」がディレクトリでないとき、「file1.txt」を「file2.txt」へ名前を変えます。「file2.txt」が存在すると上書きされます。
> mv file1.txt dir「dir」がディレクトリのとき、「file1.txt」を「dir」の中へ移動します。
> cp file1.txt file2.txt「file1.txt」を「file2.txt」へコピー(複製)します。
29