シラバス参照 |
講義概要/Course Information |
科目基礎情報/General Information |
授業科目名 /Course title (Japanese) |
ハイパフォーマンスコンピューティング特論 | ||
---|---|---|---|
英文授業科目名 /Course title (English) |
Advanced High Performance Computing | ||
科目番号 /Code |
|||
開講年度 /Academic year |
2020年度 | 開講年次 /Year offered |
全学年 |
開講学期 /Semester(s) offered |
前学期 | 開講コース・課程 /Faculty offering the course |
博士前期課程、博士後期課程 |
授業の方法 /Teaching method |
講義 | 単位数 /Credits |
2 |
科目区分 /Category |
大学院専門教育科目 - 専門科目Ⅱ | ||
開講学科・専攻 /Cluster/Department |
情報・ネットワーク工学専攻 | ||
担当教員名 /Lecturer(s) |
成見 哲 | ||
居室 /Office |
西9-719 | ||
公開E-Mail |
narumi@cs.uec.ac.jp | ||
授業関連Webページ /Course website |
なし | ||
更新日 /Last updated |
2020/02/28 22:31:45 | 更新状況 /Update status |
公開中 /now open to public |
講義情報/Course Description |
主題および 達成目標 /Topic and goals |
テーマ ハイパフォーマンスコンピューティング(高性能計算)の技術の中でも、アクセラレータ(計算加速)技術を取り上げます。専用計算機の歴史、GPUをアクセラレータとして使う方法や性能モデル、CPUでSIMD演算を使ってアクセラレータ的に使う方法などを扱います。 Main topic of this lecture is High Performance Computing (HPC). Especially, a brief history of special-purpose computers, and how to use GPUs are treated. 達成目標 (1)アクセラレータの概念が理解できていること。 (2)GPUによるプログラムが書け、いくつかの最適化手法を適用出来ること。 (3)CPUでSIMD演算を使ったプログラムが書けること。 (4)アクセラレータの性能モデルについて理解していること。 |
---|---|
前もって履修 しておくべき科目 /Prerequisites |
特になし。ただし、linuxのコマンド(ls, cp等)を使えること。 Usage of Linux command like ls, cp, and etc. |
前もって履修しておくこ とが望ましい科目 /Recommended prerequisites and preparation |
特になし None |
教科書等 /Course textbooks and materials |
特になし。適宜プリントを配ります。 None |
授業内容と その進め方 /Course outline and weekly schedule |
授業の進め方は、まずアクセラレータの概念を説明します。次にGPUを使った簡単なプログラミングを行います。そして、GPUを使った分子動力学シミュレーションプログラムの最適化を行います。また、CPUでSIMD演算命令を使って高速化して違いを学びます。最後に、GPUでの性能モデルを構築しアクセラレータの特徴を再確認します。 First, basic concept of accelerator is explained. Then a simple programming with GPU is shown. Optimization method for a GPU program of molecular dynamics simulations is explained. Also, how to optimize CPU program with SIMD operations is shown for comparison. Finally, a performance model of GPU is explained to further understand the characteristics of the GPU. 授業計画 1回 はじめに Introduction 2回 アクセラレータとは Basic idea of an accelerator 3回 専用計算機とは Basic architecture and history of a special-purpose computer 4回 GPUとは Basic architecture of a GPU 5回 GPUによるプログラミング(単純なカーネルの実装) Implementing a simple kernel with a GPU 6回 GPUの最適化(shared memoryを使った高速化) Accelerating a GPU program with a shared memory 8回 GPUの最適化(constant memoryを使った高速化) Accelerating a GPU program with a constant memory 9回 GPUの最適化(その他の高速化) Accelerating a GPU program with other techniques 10回 CPUのアクセラレータとしての利用 Using a CPU as an accelerator 11回 CPUの最適化(OpenMPを使った高速化) Accelerating a CPU program with OpenMP 12回 CPUの最適化(SIMD命令の基本) Accelerating a CPU program with SIMD operations 1 13回 CPUの最適化(SIMD命令の応用) Accelerating a CPU program with SIMD operations 2 14回 GPUの性能モデル(並列度) Building a performance model with a GPU especially on parallelism 15回 GPUの性能モデル(通信速度) Building a performance model with a GPU especially on communication 場合によって、講義内容の順番が少し入れ替わることがあります。 The order of lecture might change. |
実務経験を活かした 授業内容 (実務経験内容も含む) /Course content utilizing practical experience |
|
授業時間外の学習 (予習・復習等) /Preparation and review outside class |
授業で行った内容はその日に実際にCEDのマシンで動かすようにしましょう Programs shown in the lecture should be run in the same day at CED computer room. |
成績評価方法 および評価基準 (最低達成基準を含む) /Evaluation and grading |
主にレポートによる。以下の到達レベルをもって合格の最低水準とする。 (1)アクセラレータの概念について説明できること。 (2)GPUによる簡単なプログラムが書けること。 (3)GPUによる高速化手法と性能モデルを理解していること。 (4)CPUによるSIMD命令を用いたプログラムが書けること。 Evaluation is based on the report shown in the lecture. |
オフィスアワー: 授業相談 /Office hours |
西9棟719号室、木曜3限 都合がつかない場合は適宜メールで連絡してください。 Office hour is from 13:00 to 14:30 every Thursday at room 719 in building West-9. Email me if this is not convenient. |
学生へのメッセージ /Message for students |
CEDのマシンで実際にGPGPUを体験します。CPUだけでもかなり高速化可能であることも体験します。ただ、プログラミングが苦手な人には少し大変かもしれません。 You can use GPUs in CED computer room, as well as CPU optimization. The class would be hard for those who are not familiar with programming. |
その他 /Others |
特になし None |
キーワード /Keyword(s) |
GPGPU、ハイパフォーマンスコンピューティング(High Performance Computing)、アクセラレータ(Accelerator)、SIMD命令(SIMD operation) |