20140628_jaws-ug_クラウド女子会_hpc科あゆみ先生
DESCRIPTION
2014年6月28日開催 第9回 JAWS-UG クラウド女子会での発表資料です。TRANSCRIPT
2014ねん6がつ28にち
コンピューターに興味のない私がHPCとAWSに出会った
JAWS-UGクラウド女子会
※本資料内容および本勉強会での発言には所属する組織の見解は含まれず、所属組織とは一切関係ありません。
□名前 : あゆみ先生
□お仕事 : 某メーカー社内情シスの中の人□個人活動: キャリアカウンセラー駆け出し
□好きなこと:料理、カラオケ
□twitter @applebear_ayu
自己紹介
私のHPCとの出会い
コンピューターに興味がないのにIT部門に
配属された。当時、コンピューターってな
んか怖いし、すごい嫌って思ってた。
(サーバとか私が触ったら爆発する思想&
黒い画面コワイ病。)
⇒そんな私のこころの癒しは
お菓子とキャラクタグッズ。
コンピューターに興味ない私に先輩が一言
「お前は
コンピューターに使われる人間に
なりたいか?
それとも、
使う人間になりたいか?」
そしてまんまと罠にはまっていくのです!
私:もちろん使う人間になりたいです!
↓
先輩:じゃあ、ちゃんとお勉強して、つ
かえる人になろうね。
↓
私:はい!わかりました!
で、気づいたら・・・
コンピューターの最前線、最高峰
ともいえるHPCの世界に飛び込む
ことになってしまった。
みなさま、HPCってなんだか知ってますか?
HPCって?
“High Performance Computing”の略
日本語だと「高性能計算」と訳されます。
計算科学のために必要な数理からコン
ピュータシステム技術までに及ぶ
総合的な学問分野の総称。
High Performance Computer=Supercomputerの意味や、
スパコンを利用した計算全般を指す名称として使われるこ
とが多いです。
この世界は、みなさんおなじみの”あの発言”が深くかかわっているのです。
2位じゃダメなんですか?
1位とか2位とか、だれが決めてて、なんの意味があるの?
誰が、いつ、どうやって決めてるの?
世界で最も高速なコンピュータシステムの上位
500位までを定期的にランク付けし、評価する
TOP500というプロジェクト。
ランクは年に2度、6月と11月に更新される。
(最も新しいのは2014年6月23日付け)
LINPACKと呼ばれるベンチマークによりランク
付けを行っている。
※参考URL:Wikipedia http://ja.wikipedia.org/wiki/TOP500TOP500 http://www.top500.org/
なんでみんなそんなに必死に競うの?
みなさん、
世界で1番高い山、
日本で1番高い山は知っていますよね?
じゃあ、
世界で2番目、3番目に高い山
日本で2番目、3番目に高い山はご存知で
すか?
みんな1番だと覚えてること多いけど、
2番手以降だと興味もって調べたりしない
とわからないことが多い。
だからみんな競うのです!
“HPC”はよく“F1”で喩えられることが多い。
最高性能をだすために、持っている技術とお金、
そして情熱を注ぎ込む。
その国の今後の科学技術を左右する
と見られており、各国、国を挙げて
取り組んでいます。
でもHPCはそんなに特別なものばかりじゃないよ
HPCは世の中のいろんな会社で広く活用されて
います。
金融、ゲノム、医療、創薬、建築、土木、気象、海洋、
分子、CFD、熱流体 etc…
一般的な会社で利用される「スパコン」は
現時点で日本一のスパコン「京」のような特別
なアーキテクチャを持つものでなく、いわゆる
IAサーバをクラスタリングしたものを
「スパコン」として利用しています。
スパコンの種類
対称型マルチプロセッシング(SMP)
複数プロセッサ(CPU)がサーバ内のメモリを共有
して並列計算できる
クラスターコンピューティング
複数のコンピュータをネットワークで相互接続して、
全体として1つのシステムとして並列計算できる
- 高速ネットワークとCPU間で
情報をやりとりするMPIが必要
わたしが特に知っているHPCの範囲
HPCの分野の中でも、
エンジニアリングシミュレーションの分野で、
通称CAEと呼ばれている分野です。
CAEとは?
CAEは
Computer Aided Engineering
コンピュータ技術を活用して製品の設計、製造や
工程設計の事前検討の支援を行うこと、またはそ
れを行うツール。
CAEに使用する手法であるシミュレーション、
コンピュータシミュレーション、数値解析などの
用語で呼ばれることもある。
* Wikipedia:http://ja.wikipedia.org/wiki/CAE
1967年 Dr. Jason R. Lemon さん(旧SDRC創始者)が造ったことば
CAEはどんなところにつかわれているの?
CAEはいまや「ものづくり」には欠かせないものになって
います。(以下一例)
携帯の剛性解析(落としても壊れないか?)
ぶつかっても安全か?
エンジン内の空気流れ冷蔵庫内の冷却シミュレーション
乗っても壊れないか?(^-^;)
CAEの重要性
昔は・・・
試作品をつくる
現実的にできないことは諦める
今は・・・
コンピュータでシミュレーション
現実にできるかどうかは関係なく、
コンピュータ上で試してみることができる
CAEの長所と短所
長所① モノを作らずに仕様の妥当性が検
証できる。開発期間の短縮、コス
ト低減、図面品質の向上、環境負
荷の削減
② 原理・条件に従った純粋な結果が
得られる
③ 測定不可能な物理現象を計算でき
るので現象を理解しやすく見落と
しが少ない
④ さまざまなパラメータスタディや
試行錯誤ができエンジニアリング
センスが磨ける
短所① 容易な検証性ゆえに、現物による
確認を怠りやすい。製造できない
ものまで計算できちゃう
② 間違った解析でもなんとなく数値
化できてしまう
③ 難解な理論もあるので、複雑な現
象を理解しないまま結果を鵜呑み
にしちゃう
④ 知恵を使わなくなる。解析するこ
と自体が目的になっちゃう
最近の困りごと
比較的安価でスパコンを購入できるように
なってきた。
↓
製品開発の競争は激化し、
早く、安くものづくりを進めるためにも
シミュレーションにニーズは増加する一方。
困ってることベスト3
増え続けるリソース
数年で陳腐化するコンピューター
利用予測ができない
HPC担当者はこの問題に頭を抱えている。
HPCの世界に飲み込まれ、疲れ果てていた私の目の前に現れた救世主!
それが・・・
AWSは悩める乙女の救世主
AWSのHPCインスタンスを使えば
リソースが増えて困るモン
数年でコンピューター陳腐化するモン
利用予測ができないモン
リソースはAWSが見てくれるモン!
新しいCPUが出たらそのサービスに乗り換えればいいんだモン!
利用予測なんかしないで、使いたいときに使えばいいんだモン!
でも、AWSってクラウドですよねー性能でるんですか?
AWS のコンピューター性能
AWSはHPC向けのインスタンスを用いて
TOP500 にランクインしている!
Date Nov. 2010 Nov. 2011 Nov. 2013
Cores 7,040 17,024 26,496
Nodes 880 1064 1656
Linpak(Rmax) 41.8TFlops 240.1TFlops 484.2TFlops
Theoretical(Rpeak) 82.5TFlops 354.1TFlops 593.9TFlops
Efficiency 50.6% 67.8% 81.5%
Rank 233 42 64
注目点は実行効率があがってきているところ!
AWSのHPC向けインスタンス
現在利用できるインスタンスクラスの中で、HPC用途で利用されるこ
との多いタイプは以下の通り。(各インスタンスの最上位タイプのみ記載)
CC2 C3 R3 I2 G2 Hs1
vCPU 32 32 32 32 8 16
RAM (GiB) 60.5 60 244 244 15 117
CPU(いずれもIntel)
E5-2670(Sandy Bridge)
E5-2680 v2(Ivy Bridge)
E5-2670 v2 (Ivy Bridge)
E5-2670 v2 (Ivy Bridge)
E5-2670(Sandy Bridge)
E5-2650
ストレージ 2×320(SSD)
2×320(SSD)
2×320(SSD)
8×800(SSD)
1×60(SSD) 24×2048
費用/hLinux:Tokyo
$2.349 $2.043 $3.36 $8.004 $0.898 $5.4
備考 メモリを大量に消費するアプリケーション用
高いランダムI/O パフォーマンス
NVIDIA GRID™(GK104 “Kepler”) GPU 搭載
用途は以下•DWH•Hadoop/MapReduce•並列ファイルシステム
いずれも”クラスターネットワーク”対応
“拡張ネットワーキング”のサポート有
HPC用途でつかうと便利な機能1
Placement Grope (以下、PG)
・利用できるインスタンス:クラスターネットワーク対応しているもの
・使い方:PG作成し、インスタンスをそのグループに登録する
・利点:同じグループ内にいるインスタンス同士は、より低レイテンシーな10G
ネットワーク利用できる
・注意点:
物理的に近しいノードを割り当てるようにしているだけなので、状況によっ
てはPG内に希望の台数をたてることができない。
AZをまたいでのグループも作成することはできない。
PGのマージや、起動した状態での別のPGへの移動はできない。かならずイ
ンスタンスのStop、Startが必要
▼EC2ユーザーガイド:プレイスメントグループhttp://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/placement-groups.html
HPC用途でつかうと便利な機能2
拡張ネットワーク(SR-IOV)
・利用できるインスタンス:C3、R3、I2
・利点:より低レイテンシーな10Gネットワークを利用できる
・使い方:Linux→カーネルに必要なドライバーをインストール
→インスタンスに sriovNetSupport 属性を設定
*Windowsは詳細割愛します。すみません。(興味ある方は以下のURLを参照してください。)
・注意点:
Linux カーネルバージョン 2.6.32 以上で、HVM AMI であること。
Amazon EC2 CLI ツールを選択する場合は、バージョン 1.6.12.0 以降を
拡張ネットワーク属性はいったん有効にすると無効化できない。
▼(参考)AWS documentationより(Linux)http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/enhanced-networking.html(Windows)http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/WindowsGuide/enhanced-networking-windows.html
HPC用途でつかうと便利な機能2(つづき)
そもそもSR-IOVってなんですか?
・Single Root I/O Virtualizationの略。
PCIデバイス側で仮想化をサポートする規格で、VMのスループットと
遅延を大幅に改善できる。
ホスト ホスト
物理NIC
SR-IOV無の場合の通信経路 SR-IOV有の場合の通信経路
SR-IOV対応物理NIC
仮想NIC
Hyperviser
仮想NIC
Hyperviser
L2 Virtual Switch L2 Virtual Switch
仮想NIC
*上記のようにn:1の環境でも利用でき、混在環境も可能。
仮想マシン 仮想マシン 仮想マシン
HPC用途でつかうと便利な機能3
Provisioned IOPS for EBS
・利用できるインスタンス:ほぼすべてのインスタンス
・使い方:EBS作成時に設定する。現在の上限は1ボリューム1TB
4000IOPS。RAIDを使って、複数のボリュームを接続することにより、最
大48,000IOPSを達成することができる。
・利点:エフェメラルディスクは揮発性のためデータ保全性の観点で心配だが、
Magnetic(Standard) EBSでは性能が足りない場合に有効。
・注意点:
IOPSはアカウントあたりの上限設定(自分が保有するEBSの合計IOPS)
があるため、必要に応じて制限解除すること。
インスタンスの構成、I/O 特性、ワークロードのデマンドなど、Amazon
EBS ボリュームのパフォーマンスに影響を与える可能性がある要因は複数
存在するため、それらを考慮してこのオプションは利用すること。
▼AWS EC2 Document (EBSの部分)http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/AmazonEBS.htm
HPC用途でつかうと便利な機能3(つづき)
General Purpose (SSD)タイプの話、が出
ていたのにこの資料追加忘れてました。
さっき気づいた…すみません。
みなさま、詳しくはこちらを…
▼AWSブログ【AWS発表】新しいSSDベースのElastic
Block Storage
http://aws.typepad.com/aws_japan/2014/06/new-ssd-backed-
elastic-block-storage.html
まとめ
まとめ
今日はここまでざっくりと
・HPCとは?
・ものづくりを支えるCAEについて
・最近の困りごと
・困りごとを解決する1つの手法としてAWS活用
する際に最低限抑えておくべき機能
をお話してきました。
まとめ
・“HPC”と一言で言っても、その中で実際に計算
されている内容によってそれに必要なサービス、ス
ペックは様々です。
・HPC分野でのクラウド活用は今後より一層進んで
いくと思います。
・今後HPC向けクラウドサービスが充実することで、
気軽に誰でも「スパコン」が利用できるような環境
になることを願っています。
参考資料
AWSマイスターシリーズ ~Amazon Elastic Compute
Cloud HPC編
http://www.slideshare.net/AmazonWebServicesJapan/
ss-25149919
HPCwire Japan:HPC信望者のために必須の喩え話
http://www.hpcwire.jp/archives/979
AWSブログ:G2について紹介されている記事
http://aws.typepad.com/aws_japan/2013/11/build-
3d-streaming-applications-with-ec2s-new-g2-
instance-type.html
ご清聴ありがとうございました!