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
120
アムダールの法則
マルチコアの数が増え並列処理が当たり前になっても、それに比例して処理性能を上げるのは難しいことを示したアムダールの法則を、図で簡単に解説します。
まりも
May 16, 2024
Tweet
Share
More Decks by まりも
See All by まりも
メンタルモデルから見るオブジェクト設計
hrmstrsmgs
0
150
技術的負債
hrmstrsmgs
0
190
よい設計のプログラムを作るには
hrmstrsmgs
0
65
歴史から理解するJavaScript
hrmstrsmgs
0
48
論理的な考え方
hrmstrsmgs
0
47
論理的な話し合いはなぜ必要か
hrmstrsmgs
0
26
腕のある技術者はなぜ
hrmstrsmgs
0
63
疑似乱数の生成
hrmstrsmgs
0
34
構造化プログラミング
hrmstrsmgs
0
84
Other Decks in Programming
See All in Programming
git worktree × Claude Code × MCP ~生成AI時代の並列開発フロー~
hisuzuya
1
520
Cursor AI Agentと伴走する アプリケーションの高速リプレイス
daisuketakeda
1
130
Blazing Fast UI Development with Compose Hot Reload (droidcon New York 2025)
zsmb
1
270
Webの外へ飛び出せ NativePHPが切り拓くPHPの未来
takuyakatsusa
2
460
Railsアプリケーションと パフォーマンスチューニング ー 秒間5万リクエストの モバイルオーダーシステムを支える事例 ー Rubyセミナー 大阪
falcon8823
4
1k
初学者でも今すぐできる、Claude Codeの生産性を10倍上げるTips
s4yuba
2
880
プロダクト志向なエンジニアがもう一歩先の価値を目指すために意識したこと
nealle
0
120
20250704_教育事業におけるアジャイルなデータ基盤構築
hanon52_
4
240
Code as Context 〜 1にコードで 2にリンタ 34がなくて 5にルール? 〜
yodakeisuke
0
120
“いい感じ“な定量評価を求めて - Four Keysとアウトカムの間の探求 -
nealle
0
470
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
220
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
530
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.8k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Writing Fast Ruby
sferik
628
62k
How to train your dragon (web standard)
notwaldorf
94
6.1k
Designing Experiences People Love
moore
142
24k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Bash Introduction
62gerente
614
210k
Building an army of robots
kneath
306
45k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
17
950
Building Adaptive Systems
keathley
43
2.6k
We Have a Design System, Now What?
morganepeng
53
7.7k
Gamification - CAS2011
davidbonilla
81
5.3k
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++でプログラミングの常識がひっくり返った