Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
アムダールの法則
Search
まりも
May 16, 2024
Programming
0
50
アムダールの法則
マルチコアの数が増え並列処理が当たり前になっても、それに比例して処理性能を上げるのは難しいことを示したアムダールの法則を、図で簡単に解説します。
まりも
May 16, 2024
Tweet
Share
More Decks by まりも
See All by まりも
メンタルモデルから見るオブジェクト設計
hrmstrsmgs
0
74
技術的負債
hrmstrsmgs
0
100
よい設計のプログラムを作るには
hrmstrsmgs
0
40
歴史から理解するJavaScript
hrmstrsmgs
0
21
論理的な考え方
hrmstrsmgs
0
25
論理的な話し合いはなぜ必要か
hrmstrsmgs
0
16
腕のある技術者はなぜ
hrmstrsmgs
0
38
疑似乱数の生成
hrmstrsmgs
0
11
構造化プログラミング
hrmstrsmgs
0
19
Other Decks in Programming
See All in Programming
リアーキテクチャxDDD 1年間の取り組みと進化
hsawaji
1
220
GitHub Actionsのキャッシュと手を挙げることの大切さとそれに必要なこと
satoshi256kbyte
5
430
ペアーズにおけるAmazon Bedrockを⽤いた障害対応⽀援 ⽣成AIツールの導⼊事例 @ 20241115配信AWSウェビナー登壇
fukubaka0825
6
2k
Click-free releases & the making of a CLI app
oheyadam
2
120
Flutterを言い訳にしない!アプリの使い心地改善テクニック5選🔥
kno3a87
1
200
as(型アサーション)を書く前にできること
marokanatani
10
2.7k
Duckdb-Wasmでローカルダッシュボードを作ってみた
nkforwork
0
130
AI時代におけるSRE、 あるいはエンジニアの生存戦略
pyama86
6
1.2k
みんなでプロポーザルを書いてみた
yuriko1211
0
280
Macとオーディオ再生 2024/11/02
yusukeito
0
370
Figma Dev Modeで変わる!Flutterの開発体験
watanave
0
140
Quine, Polyglot, 良いコード
qnighy
4
650
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
459
33k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Fireside Chat
paigeccino
34
3k
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Adopting Sorbet at Scale
ufuk
73
9.1k
Designing the Hi-DPI Web
ddemaree
280
34k
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
Building an army of robots
kneath
302
43k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
28
2k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Transcript
アムダールの法則
アムダールの法則 1 1 − 𝑃 + 𝑃 𝑆 P:高速化できる割合 S:性能向上率
アムダールの法則 高速化できる割合:25% 性能向上率 :100%
アムダールの法則 高速化できる割合:50% 性能向上率 :100%
アムダールの法則 高速化できる割合:75% 性能向上率 :100%
アムダールの法則 高速化できる割合:75% 性能向上率 :200%
アムダールの法則 高速化できる割合:75% 性能向上率 :300%
アムダールの法則 高速化できる割合:75% 性能向上率 :400%
アムダールの法則 高速化できる割合:75% 性能向上率 :100,000%
アムダールの法則 高速化できる割合:50% 性能向上率 :100,000%
アムダールの法則 高速化できる割合:25% 性能向上率 :100,000%
ではどうするか?
グスタフソンの法則 • グスタフソンの法則(英: Gustafson's law、Gustafson- Barsis' law としても知られる)は、計算機工学におけ る法則で、「十分に大きな規模の問題は、効率的に並 列化して解くことができる」事を示すものである。グスタ
フソンの法則は、並列化によってプログラムが高速化 できる限界を示したアムダールの法則と密接に関係し ている。本法則は、ジョン・グスタフソンによって1988年 に初めて示された。(Wikipedia)
そもそも並列化が難しい スレッドプログラミング 変数を一つ代入するにも原子性に気を付ける 使えるライブラリが限られる スレッドの立てすぎに気を付ける アルゴリズム上の限界には程遠い
「高速化できる割合」はアルゴリズムの問題では なく、可読性の問題 async/await C# Python JavaScript C++ Rx C# Swift
JavaScript アクター Erlang Scala C# STM C++ F# 並列可能コレクション C# C++ 様々な言語機能が開発中
誰にでも並行プログラミングができる • Windows 8のC++でプログラミングの常識がひっくり返った