-
Notifications
You must be signed in to change notification settings - Fork 29
/
index.html
188 lines (186 loc) · 7.86 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="pandoc">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
<title>一週間でなれる!スパコンプログラマ</title>
<style type="text/css">code{white-space: pre;}</style>
<style type="text/css">
div.sourceCode { overflow-x: auto; }
table.sourceCode, tr.sourceCode, td.lineNumbers, td.sourceCode {
margin: 0; padding: 0; vertical-align: baseline; border: none; }
table.sourceCode { width: 100%; line-height: 100%; }
td.lineNumbers { text-align: right; padding-right: 4px; padding-left: 4px; color: #aaaaaa; border-right: 1px solid #aaaaaa; }
td.sourceCode { padding-left: 5px; }
code > span.kw { color: #007020; font-weight: bold; } /* Keyword */
code > span.dt { color: #902000; } /* DataType */
code > span.dv { color: #40a070; } /* DecVal */
code > span.bn { color: #40a070; } /* BaseN */
code > span.fl { color: #40a070; } /* Float */
code > span.ch { color: #4070a0; } /* Char */
code > span.st { color: #4070a0; } /* String */
code > span.co { color: #60a0b0; font-style: italic; } /* Comment */
code > span.ot { color: #007020; } /* Other */
code > span.al { color: #ff0000; font-weight: bold; } /* Alert */
code > span.fu { color: #06287e; } /* Function */
code > span.er { color: #ff0000; font-weight: bold; } /* Error */
code > span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */
code > span.cn { color: #880000; } /* Constant */
code > span.sc { color: #4070a0; } /* SpecialChar */
code > span.vs { color: #4070a0; } /* VerbatimString */
code > span.ss { color: #bb6688; } /* SpecialString */
code > span.im { } /* Import */
code > span.va { color: #19177c; } /* Variable */
code > span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
code > span.op { color: #666666; } /* Operator */
code > span.bu { } /* BuiltIn */
code > span.ex { } /* Extension */
code > span.pp { color: #bc7a00; } /* Preprocessor */
code > span.at { color: #7d9029; } /* Attribute */
code > span.do { color: #ba2121; font-style: italic; } /* Documentation */
code > span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
code > span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
code > span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
</style>
<style>
.markdown-body {
box-sizing: border-box;
min-width: 200px;
max-width: 980px;
margin: 0 auto;
padding: 45px;
}
p.caption{
display:none;
}
img {width: 100%}
@media (max-width: 767px) {
.markdown-body {
padding: 15px;
}
}
</style>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://kaityo256.github.io/sevendayshpc/github-markdown.css" type="text/css" />
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
</head>
<body>
<article class="markdown-body">
<header>
<h1 class="title"><a
href="https://kaityo256.github.io/sevendayshpc/">一週間でなれる!スパコンプログラマ</a></h1>
</header>
<p><a
href="https://github.com/kaityo256/sevendayshpc">リポジトリ(kaityo256/sevendayshpc)</a></p>
<p><a href="https://kaityo256.github.io/sevendayshpc/">HTML版</a></p>
<p><a
href="https://github.com/kaityo256/sevendayshpc/releases/latest/download/sevendayshpc.pdf">一括PDF版</a></p>
<h1 id="はじめに"><a href="preface/index.html">はじめに</a></h1>
<ul>
<li>なぜスパコンを使うのか</li>
</ul>
<h1 id="day-1-環境構築">Day 1 : <a
href="day1/index.html">環境構築</a></h1>
<p>とりえあず手元のPCでMPIが使える環境を整え、簡単なMPIプログラミングを試してみる。</p>
<ul>
<li>MPIとは</li>
<li>余談:MPIは難しいか</li>
<li>MPIのインストール</li>
<li>はじめてのMPI</li>
<li>ランク</li>
<li>標準出力について</li>
<li>GDBによるMPIプログラムのデバッグ</li>
</ul>
<h1 id="day-2-スパコンの使い方">Day 2 : <a
href="day2/index.html">スパコンの使い方</a></h1>
<p>スパコンを使うときに知っておきたいこと。ジョブの投げ方など。</p>
<ul>
<li>はじめに</li>
<li>スパコンとは</li>
<li>余談:BlueGene/Lのメモリエラー</li>
<li>スパコンのアカウントの取得方法</li>
<li>ジョブの実行の仕組み</li>
<li>ジョブスクリプトの書き方</li>
<li>フェアシェア</li>
<li>バックフィル</li>
<li>チェーンジョブ</li>
<li>ステージング</li>
<li>並列ファイルシステム</li>
</ul>
<h1 id="day-3-自明並列">Day 3 : <a
href="day3/index.html">自明並列</a></h1>
<p>自明並列、通称「馬鹿パラ」のやり方について。</p>
<ul>
<li>自明並列、またの名を馬鹿パラとは</li>
<li>自明並列の例1: 円周率</li>
<li>自明並列テンプレート</li>
<li>自明並列の例2: 多数のファイル処理</li>
<li>自明並列の例3: 統計処理</li>
<li>並列化効率</li>
<li>サンプル並列とパラメタ並列の違い</li>
</ul>
<h1 id="day-4-領域分割による非自明並列">Day 4 : <a
href="day4/index.html">領域分割による非自明並列</a></h1>
<p>非自明並列の例として、一次元熱伝導方程式方程式を領域分割してみる。</p>
<ul>
<li>非自明並列</li>
<li>一次元拡散方程式 (シリアル版)</li>
<li>一次元拡散方程式 (並列版)</li>
<li>余談: EagerプロトコルとRendezvousプロトコル</li>
</ul>
<h1 id="day-5-二次元反応拡散方程式">Day 5 : <a
href="day5/index.html">二次元反応拡散方程式</a></h1>
<p>本格的なMPIプログラムの例として、二次元反応拡散方程式を領域分割してみる。</p>
<ul>
<li>シリアル版</li>
<li>並列化ステップ1: 通信の準備など</li>
<li>並列化ステップ2: データの保存</li>
<li>並列化ステップ2: のりしろの通信</li>
<li>並列化ステップ3: 並列コードの実装</li>
<li>余談:MPIの面倒くささ</li>
</ul>
<h1 id="day-6-ハイブリッド並列">Day 6 : <a
href="day6/index.html">ハイブリッド並列</a></h1>
<p>プロセス並列とスレッド並列の併用によるハイブリッド並列化について。
特にスレッド並列で気をつけたいことなど。</p>
<ul>
<li>ハイブリッド並列とは</li>
<li>仮想メモリとTLB</li>
<li>余談:TLBミスについて</li>
<li>NUMA</li>
<li>OpenMPの例</li>
<li>性能評価</li>
<li>余談:ロックの話</li>
<li>ハイブリッド並列の実例</li>
</ul>
<h1 id="day-7-simd化">Day 7 : <a href="day7/index.html">SIMD化</a></h1>
<p>SIMD化について。</p>
<ul>
<li>はじめに</li>
<li>SIMDとは</li>
<li>SIMDレジスタを触ってみる</li>
<li>余談:アセンブリ言語?アセンブラ言語?</li>
<li>簡単なSIMD化の例</li>
<li>余談:x86における浮動小数点演算の扱い</li>
<li>もう少し実戦的なSIMD化</li>
</ul>
<h1 id="おわりに"><a href="postface/index.html">おわりに</a></h1>
<h1 id="ライセンス">ライセンス</h1>
<p>Copyright (C) 2018-present Hiroshi Watanabe</p>
<p>この文章と絵(pptxファイルを含む)はクリエイティブ・コモンズ 4.0 表示
(CC-BY 4.0)で提供する。</p>
<p>This article and pictures are licensed under a <a
href="https://creativecommons.org/licenses/by/4.0/">Creative Commons
Attribution 4.0 International License</a>.</p>
<p>本リポジトリに含まれるプログラムは、<a
href="https://opensource.org/licenses/MIT">MITライセンス</a>で提供する。</p>
<p>The source codes in this repository are licensed under <a
href="https://opensource.org/licenses/MIT">the MIT License</a>.</p>
<p>なお、HTML版の作成に際し、CSSとして<a
href="https://github.com/sindresorhus/github-markdown-css">github-markdown-css</a>を利用しています。</p>
</article>
</body>
</html>