Upgrade to Pro — share decks privately, control downloads, hide ads and more …

High Performance Computing: Modern Systems and ...

High Performance Computing: Modern Systems and Practices §1.2-1.3

HPC(スーパーコンピュータ)のさまざまなトピックについて概説している『High Performance Computing: Modern Systems and Practices』という本の§1.2-1.3をまとめたスライドです。

§1.2 Impact of Supercomputing on Science, Society, and Security (HPCの科学・社会・セキュリティにおける影響) では、高性能計算の応用事例が紹介されています。後半の§1.3 Anatomy of a Supercomputer (スーパーコンピュータの構成) では、ハードウェアからソフトウェアまでのコンポーネントスタックの概要が説明されています。

このスライドは、筑波大学HPCS研究室で毎年春に複数チーム合同で行われている「HPCS輪講」という読書会のときに作成したものです。(Google SlidesからPDF出力したせいか、太字のフォントがアウトラインだけになっています😥)

TAKAHASHI Shuuji

May 11, 2019
Tweet

More Decks by TAKAHASHI Shuuji

Other Decks in Research

Transcript

  1. High Performance Computing: Modern Systems and Practices §1.2-1.3 pp. 35-41

    (PDF) / pp. 10-16 (Book) HPCS研究室 システムソフトウェアチーム M1 高橋 宗史 2019/05/11 1
  2. 発表の概要 • 1.2 Impact of Supercomputing on Science, Society, and

    Security (HPCの科学・社会・セキュリティにおける影響) ◦ 1.2.1 Catalyzing Fraud Detection and Market Data Analytics (不正検出と市場データの分析) ◦ 1.2.2 Discovering, Managing, and Distributing Oil and Gas (石油・天然ガスの探索・管理・輸送) ◦ 1.2.3 Accelerating Innovation in Manufacturing (製造業におけるイノベーションの促進) ◦ 1.2.4 Personalized Medicine and Drug Discovery (個別化医療と薬品探索) ◦ 1.2.5 Predicting Natural Disasters and Understanding Climate Change (自然災害の予測と気候変動の理解) • 1.3 Anatomy of a Supercomputer (スーパーコンピュータの構成) 2
  3. 発表の概要 • 1.2 Impact of Supercomputing on Science, Society, and

    Security (HPCの科学・社会・セキュリティにおける影響) ◦ 1.2.1 Catalyzing Fraud Detection and Market Data Analytics (不正検出と市場データの分析) ◦ 1.2.2 Discovering, Managing, and Distributing Oil and Gas (石油・天然ガスの探索・管理・輸送) ◦ 1.2.3 Accelerating Innovation in Manufacturing (製造業におけるイノベーションの促進) ◦ 1.2.4 Personalized Medicine and Drug Discovery (個別化医療と薬品探索) ◦ 1.2.5 Predicting Natural Disasters and Understanding Climate Change (自然災害の予測と気候変動の理解) • 1.3 Anatomy of a Supercomputer (スーパーコンピュータの構成) 3
  4. 1.2 Impact of Supercomputing on Science, Society, and Security (PDF:

    p.35) • HPCエコシステムの市場の規模: ◦ 現在(本執筆時=2017年12月以前)、230億ドル ◦ 2020年には 300億ドル (成長率 8%/年) に到達すると予 測されている • HPCの市場は、主にエンドユーザ-ドリブンで最も早く成長を続 けている分野の1つ 4
  5. 1.2 Impact of Supercomputing on Science, Society, and Security (p.35)

    • 参考: Intersect360というHPC分野の調査会社の市場予測 5 Source: HPC Computing Trends (p.5) - https://www.slideshare.net/insideHPC/hpc-computing-trends-88903995
  6. 1.2 Impact of Supercomputing on Science, Society, and Security (p.35)

    • HPCの対象分野・組織の例: ◦ 金融サービス ◦ 石油・天然ガス ◦ 製造業 ◦ 地球科学 ◦ 生命科学 ◦ その他 ▪ 国立研究所 ▪ 国の情報機関 6
  7. 1.2.1 Catalyzing Fraud Detection and Market Data Analytics (p.35) •

    金融サービスにおけるHPCの活用例 • スーパーコンピュータの利用者: ◦ 私設取引システムを運営している企業 ◦ 投資銀行 ◦ 決済処理を行う企業 • HPCをコアビジネスの問題の解決に活用している。 7
  8. 1.2.1 Catalyzing Fraud Detection and Market Data Analytics (p.35) •

    活用例: ◦ リスク管理 ◦ 不正検出 ◦ バックテスト ▪ 過去のデータを入力し、そのデータに基づいて仮説お よびシナリオが正しいかどうかを検証してみる手法 ▪ Source: 用語集 バックテスト「リスク管理」 - https://www.mizuho-ri.co.jp/glossary/0177.html 8
  9. 1.2.1 Catalyzing Fraud Detection and Market Data Analytics (p.35) •

    私設取引システムの運営企業や投資管理会社 ◦ Tflops級のスーパーコンピュータを数100台デプロイ ◦ 正確な投資戦略の開発や市場予測に利用し、より利益率の 高い金融商品を開発している • 投資銀行やローン・信用処理会社 ◦ Tflops級のスーパーコンピュータを数10-100台デプロイ ◦ 数百万レコードの処理や ◦ さまざまなポートフォリオの正確なリスク予測に活用 • 決済処理システムの運用企業 ◦ パターン検出・パターンマッチアルゴリズムを利用した不正の 検出のためにHPC技術を活用し始めている 9
  10. 1.2.2 Discovering, Managing, and Distributing Oil and Gas (p.35) •

    石油・天然ガス会社におけるHPCの活用例 • 石油・天然ガス会社は、スーパーコンピュータの技術を最も大 規模に商用利用しているユーザーの1つ • 情報公開されているペタスケールの商用システムのすべて は、これらの会社が保有している • スーパーコンピュータは、石油・天然ガスのワークフロー全体 に渡って活用されている ◦ 探索ワークフロー ◦ 生産ワークフロー ◦ 流通ワークフロー 10
  11. 1.2.2 Discovering, Managing, and Distributing Oil and Gas (p.35) •

    探索ワークフロー ◦ 石油の貯留層を地下イメージングで探索する際に、高解 像度の地震処理を行う 11 Source: CGG: CGG Launches Multi-Physics Imaging for More Complete Subsurface Understanding - https://www.cgg.com/en/Media-a nd-Events/Media-Releases/2017/ 05/CGG-Launches-Multi-Physics- Imaging-for-More-Complete-Subs urface-Understanding
  12. 1.2.2 Discovering, Managing, and Distributing Oil and Gas (p.35) •

    図 1.5 研究者は、地下のシミュレーションにHPCを活用し、複 数次元の解析や特徴付けを用いて、石油の貯留層の位置を 正確に特定する 12 Gas production in offshore fields, Lower 48 states | Flickr - https://www.flickr.com/photos/eiagov/14287053731/in/photostream/
  13. 1.2.2 Discovering, Managing, and Distributing Oil and Gas (p.35) •

    生産ワークフロー ◦ 貯留層の特徴の判別や ◦ 最も安全な埋蔵量の管理に利用 • 流通ワークフロー ◦ 新しい予測分析を考案したり、石油製品の効率的な分配 を行うためにHPCを活用する企業が増えている ◦ HPCは今や非常に重要な欠かせない存在となっている ◦ HPCは、探索のリスクを最小限に抑え、プロセス全体を安 全にするために広く活用されている 13
  14. 1.2.2 Discovering, Managing, and Distributing Oil and Gas (p.35) •

    参考: JAPEX (石油資源開発株式会社) ウェブサイトでも様々 な具体例が紹介されている ◦ 先端技術紹介 | JAPEX 石油資源開発株式会社 - https://www.japex.co.jp/technology/technologies.html# cont6 14
  15. 1.2.3 Accelerating Innovation in Manufacturing (p.35) • 製造業におけるHPCの活用例 • 製造業にはさまざまな業界がある

    • しかし、共通する点は、コンピュータ支援エンジニアリングアプ リケーションを製品設計・製造プロセスに活用しようとしている ことである 16
  16. 1.2.3 Accelerating Innovation in Manufacturing (p.35) • スーパーコンピュータの活用例: ◦ 自動車業界

    ▪ 衝突シミュレーション ▪ 騒音・振動・硬度・疲労の構造解析 ▪ 計算流体力学-ドリブンな製品開発 ◦ 航空業界 ▪ 主に、計算流体力学ベースの航空力学シミュレーショ ン・仮想プロトタイピングに活用される 17
  17. 1.2.3 Accelerating Innovation in Manufacturing (p.35) • 航空業界におけるHPC技術の重要性 ◦ 物理検証の代わりにシミュレーションを活用することによ

    り、製造コストの削減・より安全な製品の提供が可能となっ ている ◦ シミュレーション-ドリブンなエンジニアリングによって、 ジェットエンジン、空気タービン、重機械、ガスタービンなど を効率化できる ◦ たった2-4%の効率向上でも、創業・燃料費を数10億ドルも 削減できるため、HPCは非常に重要な技術となっている 18
  18. 1.2.3 Accelerating Innovation in Manufacturing (p.35) • 図 1.6 (上)

    忠実度の高い仮想エンジンのシミュレーションや 設計には、HPC が頻繁に活用されている 19 Source: Jet engine - Wikipedia - https://en.wikipedia.org/wiki/Jet_engine Wikipediaのキャプション「低バイパスターボファンの気流のシミュレーション」
  19. • 図 1.6 (下) NASAの研究者は、航空機や発電機の次世代 タービンの設計をシミュレーションのためにHPCを活用してい る。 20 Source: File:

    Jet engine blades simulation.jpg - Wikimedia Commons - https://commons.wikimedia.org/wiki/File:Jet_engine_blades_simulation.jpg Wikimedia Commonsの解説「主な騒音の発生メカニズムは、羽根の伴流による速度の不均一性であ る。ブレードは静圧によって着色されており、流れ場は渦度(うずど)を示している。」 1.2.3 Accelerating Innovation in Manufacturing (p.35)
  20. 1.2.4 Personalized Medicine and Drug Discovery (p.36) • 生命科学もさまざまなアプリケーション領域でHPC技術に依 存している主要な分野の1つ

    • 活用例: ◦ 製薬会社 ▪ HPCで分子動力学 (分子のシミュレーション) を実 行 ▪ 新薬の開発・効果の仮想テストを促進 ◦ 人間生理学の研究者 ▪ 人体(心臓や脳など)の仮想モデルの開発にHPCを 活用 ▪ 病気や治療の改善に役立てている 21
  21. 1.2.4 Personalized Medicine and Drug Discovery (p.36) • 活用例: ◦

    個別化医療 ▪ 遺伝子シーケンス・創薬を組み合わせた新しい手 法を用いる生命科学研究者・企業が増加している ▪ 個別化医療が可能になり、最も困難な病気も治療 できる可能性が高まる 22
  22. • 図 1.7 HPCは腎臓のポドサイト(足細胞)の仮想モデルの開発 に活用されている 23 Source: Wikimedia Commons -

    https://commons.wikimedia.org/wiki/File:Fragility-of-foot-process-morphology-in-kidney-podocytes- arises-from-chaotic-spatial-propagation-of-pcbi.1005433.s011.ogv 1.2.4 Personalized Medicine and Drug Discovery (p.36)
  23. • 参考: ポドサイト(足細胞)とは? ◦ 筑波大学医学医療系生命医科学域 長田研究室 研究 テーマ - http://www.md.tsukuba.ac.jp/basic-med/pathology/r

    vpatho/thema/index.html ◦ ポドサイトと糖尿病の関係を初めて発見した研究者に よる解説 24 1.2.4 Personalized Medicine and Drug Discovery (p.36)
  24. 1.2.5 Predicting Natural Disasters and Understanding Climate Change (p.37) •

    地球科学におけるHPCの活用例 ◦ 気候変動とそのインパクトの研究 ◦ 気象現象の予測 ◦ 高精度の局地的な気象予報 • さまざまな自然災害の予測に必要 ◦ 地震・ハリケーンの起動や強さ・津波の方向や威力・強 力なハリケーン・熱波 ◦ より忠実度の高いモデル・より高い計算性能が必要と されている 25
  25. 1.2.5 Predicting Natural Disasters and Understanding Climate Change (p.37) •

    図 1.8 オークリッジ国立研究所による気象モデル中の二酸化 炭素の移流についてのシミュレーション。 26 Source: Climate Visualization - https://wci.llnl.gov/simulation/computer-codes/visit/gallery/gallery-33 上の画像は、2002年秋にリリースされたオープンソースの並列可視化・分析ソフト VisIt で作成されてい る。(この前のADIOSのレクチャーのスライドでも使われていた気がします ) VisIt - Wikipedia - https://en.wikipedia.org/wiki/VisIt
  26. 1.2 HPCの活用例のまとめ (p.39) • HPCの活用により、イノベーションの促進、社会・経済的なイ ンパクトが起こっている 表 1.2 スーパーコンピューティングの幅広い影響: さまざまなアプリケーションドメインに

    おけるHPCの利用例 27 対象領域 一般的なワークフロー 金融サービス 詐欺と異常の検出・アルゴリズムトレーディングのバックテスト・リスク 分析 石油・天然ガス 地震のプロセス・解明・貯留層のモデリング 製造業 物質シミュレーション・構造シミュレーション (騒音、振動、高度、破壊 )・ 設計空間探索・熱シミュレーションなど 生命科学 分子力学・薬品探索・仮想モデリング・遺伝子シーケンスなど 地球科学 大気モデル・流体力学・氷モデリング・大気 -海洋結合モデル* • 大気-海洋結合モデル: 大気モデルと海洋モデルを組み合わせたモデル ◦ Source: 気象庁|大気海洋結合モデル - https://www.jma.go.jp/jma/kishou/know/whitep/1-3-7.html
  27. 発表の概要 • 1.2 Impact of Supercomputing on Science, Society, and

    Security (HPCの科学・社会・セキュリティにおける影響) ◦ 1.2.1 Catalyzing Fraud Detection and Market Data Analytics (不正検出と市場データの分析) ◦ 1.2.2 Discovering, Managing, and Distributing Oil and Gas (石油・天然ガスの探索・管理・輸送) ◦ 1.2.3 Accelerating Innovation in Manufacturing (製造業におけるイノベーションの促進) ◦ 1.2.4 Personalized Medicine and Drug Discovery (個別化医療と薬品探索) ◦ 1.2.5 Predicting Natural Disasters and Understanding Climate Change (自然災害の予測と気候変動の理解) • 1.3 Anatomy of a Supercomputer (スーパーコンピュータの構成) 29
  28. 31 • Titan の概要 ◦ 面積: 371 m2 (4000 sq

    ft) 以上 / 消費電力: 約 8 MW ◦ 場所: オークリッジ国立研究所 / 製造者: Cray Inc. ◦ 理論ピーク性能: 27 petaflops以上 ◦ HPL ベンチ: 17.5 petaflops の R max 持続性能 ◦ スポンサー: アメリカエネルギー省・アメリカ海洋大気庁 / 目的: 科学研究 1.3 Anatomy of a Supercomputer (p.39)
  29. 33 1.3 Anatomy of a Supercomputer (p.39) 図 1.9 一般的なスーパーコンピュータのシステムスタックのハードウェアおよびソフト

    ウェアのレイヤー。 • ソフトウェアの一番下のレイヤーはOS。リソース管理とI/Oチャンネルにアクセス するミドルウェアからなる • ソフトウェアの上層は、ランタイムシステムと、ワークフロー管理の役割を担ってい る
  30. 35 1.3 Anatomy of a Supercomputer (p.39) システムハードウェアのレイヤー • スーパーコンピュータの物理的なリソースを表す

    • プロセッサ: 計算を行う • メモリ: データと、データ上で実行するプログラムのコードを格 納する • インターコネクションネットワーク: 数1000(〜将来的には数 100万)のプロセッサ/メモリからなるノードを、1台のスーパー コンピュータとして統合する
  31. 36 1.3 Anatomy of a Supercomputer (p.39) システムハードウェアのレイヤー • データの永続ストレージ:

    ◦ pros. HDDやテープストレージを使えばユーザーデータ を無制限に保管できる。メインメモリよりはるかに巨大な キャパシティが確保できる。 ◦ cons. アクセス時間が(メモリに比べて)非常に長くかかる
  32. 38 1.3 Anatomy of a Supercomputer (p.39) オペレーティングシステムのレイヤー • ローカルOS:

    物理メモリ・プロセッサ・システムエリアネット ワークへのインターフェイスを制御する • ミドルウェア: ローカルOSを論理的に統合して1つのシステム イメージを構成する ◦ 統合されたシステムに対して、ユーザーはアプリケーショ ンプログラムを送信したり、標準I/Oチャンネルにアクセス する
  33. 39 1.3 Anatomy of a Supercomputer (p.39) オペレーティングシステムのレイヤー • フロントエンドソフトウェア環境:

    スーパーコンピュータによっ ては提供されることがある • 階層化された構造のOS: 上位レイヤーのシステムに対して マシンを抽象化/仮想化して見せられる ◦ これにより、特定のシステムに依存しない、ユーザーサー ビスの標準セット・共通のインターフェイスプロトコルを提 供することができる
  34. 41 1.3 Anatomy of a Supercomputer (p.39) ワークフロー管理のレイヤー • プログラミングモデル:

    ◦ プログラミング言語: Fortran, C, C++など ◦ 並列処理などの追加ライブラリ: MPI, OpenMPなど ◦ コンパイラ: ユーザーコードをプロセッサコアの機械語に 変換・最適化する機能を提供する
  35. 42 1.3 Anatomy of a Supercomputer (p.39) 高レベルの環境やツール • 複雑なワークフローの構築や管理を補助する

    • 洗練されたライブラリが多数開発されており、さまざまなプロ グラムから高度に最適化された関数を利用できる
  36. 44 1.3 Anatomy of a Supercomputer (p.39) ランタイムシステムソフトウェアのレイヤー • 伝統的なHPCでは薄いレイヤーになる傾向がある

    • ただし、JavaのJVMなどのプログラミングモデルでは、より重 要なものとなる • HPCのランタイムシステムは、リソース管理・タスクスケジュー リング・通信の一部の側面を管理する • (将来のHPCでは重要な役割を担う可能性がある。現状では 可能性は不確実だが、様々な実験・検証が求められる)