学部・大学院区分情報・博前
時間割コード2550058
科目区分
主専攻科目
科目名 【日本語】大規模計算特論B
科目名 【英語】
コースナンバリングコードGSI156050J
担当教員 【日本語】片桐 孝洋 ○ 大島 聡史
担当教員 【英語】KATAGIRI Takahiro ○ OHSHIMA Satoshi
単位数1
開講期・開講時間帯春2期 火曜日 1時限
Spring2 Tue 1
対象学年1年
1
授業形態
開講系(学部)・開講専攻(大学院)
情報システム学専攻
必修・選択


授業の目的 【日本語】
高い性能を持つ計算ハードウェアであるGPU(Graphics Processing Unit)とその基本的な使い方について学習する。
授業の目的 【英語】
[This course will be taught in Japanese.]

The goal of this course is to obtain basic knowledge of GPU(Graphics Processing Unit) and its usage.
到達目標 【日本語】
高い性能を持つ計算ハードウェアであるGPU(Graphics Processing Unit)とその基本的な使い方について学習する。
OpenACCやCUDAを用いたGPUプログラミングの方法について,行列-行列積などの基本的な数値計算処理を題材として学習する。さらに,GPUを用いて高速に機械学習・深層学習を行う方法やその原理についても学習する。
到達目標 【英語】
The goal of this course is to obtain basic knowledge of GPU(Graphics Processing Unit) and its usage.
To learn skills of GPU programming by using OpenACC and CUDA, we use basic numerical computations as an example, such as Matrix-matrix multiplications.
We also treat basic theory and usage of machine learning and deep learning by using GPU.

The numerical simulation has a key role in understanding the natural phenomena and solving various engineering problems. This course deals with numerical methods for partial differential equations, the finite difference method, and the finite element method, parallelization of the Krylov subspace method, visualization for the numerical simulation results, and supercomputer exercises. The aim of this course is to help students acquire a better understanding of the high-performance computing, and applied skills.
授業の内容や構成
座学にて,GPUのハードウェア特性やCPUとの違いについて学ぶ。
OpenACCやCUDAを用いたGPUプログラミングの方法について学習し,基礎的なプログラムを作成してプログラミング方法を習得する。
GPUを用いた高速な機械学習・深層学習について,その原理を学習し,基礎的なプログラムを実行して効果を体感する。
This course introduces the specification and character of GPU.
To utilize GPU, we also introduce basics of programming with OpenACC and CUDA.
Moreover, we also introduce basics of machine learning and deep learning by using GPU.
履修条件・関連する科目
成績評価の方法と基準
講義中に与える演習課題のレポート100%,合計100点満点で60点以上を合格とする。
Your final grade will be calculated according to report (100%), which is provided in the course. To pass, students must earn at least 60 points out of 100.
教科書・参考書
資料を必要に応じて配布する。
参考書:片桐孝洋著「並列プログラミング入門:サンプルプログラムで学ぶOpenMPとOpenACC」東京大学出版会
履修条件は課さないが,OpenMPについて知識がある(大規模計算特論Aを履修している)ことが望ましい。
Course materials will be provided in the course.
The reference books are shown. Only Japanese is available.

片桐孝洋著「並列プログラミング入門:サンプルプログラムで学ぶOpenMPとOpenACC」東京大学出版会
Anyone can join the course, but knowledge of OpenMP (can be learned at High-Performance Computing A) is useful.
課外学習等(授業時間外学習の指示)
NUCTを通じて講義資料の事前配布を行う。講義において説明した理論を理解するために課題を与える。
Course material will be distributed via NUCT.
To understand theory that is explained in the course, submission of reports is required.
授業開講形態等
遠隔授業(オンデマンド型)で行う場合の追加措置