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
分散アルゴリズム(1)
Search
suikwasha
November 07, 2012
0
230
分散アルゴリズム(1)
自分用メモ
P5 to P20
suikwasha
November 07, 2012
Tweet
Share
More Decks by suikwasha
See All by suikwasha
分散アルゴリズム(3)
suikwasha
0
2k
分散アルゴリズム(2)
suikwasha
0
230
Featured
See All Featured
Marketing to machines
jonoalderson
1
4.6k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.3k
Abbi's Birthday
coloredviolet
1
4.8k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
440
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
62
50k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
380
Information Architects: The Missing Link in Design Systems
soysaucechin
0
780
The Pragmatic Product Professional
lauravandoore
37
7.1k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
0
1.1k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
950
Transcript
ࢄΞϧΰϦζϜ ̍ɼࢄγεςϜͷඞཁੑ ̎ɼࢄγεςϜ
• ࢄγεςϜͱʁ ͋Δڞ௨ͷతͷͨΊʹ௨৴ωοτϫʔ ΫͰ݁߹͞Εͨࣗతʹಈ࡞͢Δܭࢉػ ͷγεςϜɽ • ࢄγεςϜͷॴ ύϑΥʔϚϯεɾ֦ுੑɾՄ༻ੑ • ͜͜ͰɼࢄΞϧΰϦζϜΛهड़͢Δ
ͨΊͷݴޠ ALGOL Λಋೖ͢Δɽ
• ࢄγεςϜͷϞσϧ ϓϩηεͷू߹ͱ௨৴ϦϯΫͷू߹ ௨৴ϦϯΫ P3 P2 P1 ϓϩηε
• ϓϩηε ஞ࣍ΞϧΰϦζϜ͕ɼ͋Δϓϩηοαʹ ׂΓͯΒΕ࣮ͯߦ͞Ε͍ͯΔաఔɽ • ֤ϓϩηε Pi ࣝผࢠ id(Pi) Λ࣋ͭɽࣝ
ผࢠ O(log n) Ϗοτͷࣗવɽ • ֤ϓϩηε Pi ہॴ࣌ܭΛ࣋ͭɽ ཧ࣌ؒ͋Δ͍࣮࣌ؒΛදݱ͢Δɽ
• ௨৴ϦϯΫ ϓϩηεؒ௨৴Λ࣮ݱ͢Δखஈɼର ௨৴ɽ୯ํɾํ͕͋Δɽ • ୯ํϦϯΫɿҰํʹ͔͠ૹ৴Ͱ͖ͳ ͍ɽ • ํϦϯΫɿ྆ํʹϝοηʔδΛૹ ৴Ͱ͖Δɽ
• ϝοηʔδૹड৴ํ๏ͷछྨɽ ૹ৴ͱड৴ʹͦΕͧΕ̎छྨͷํ๏͕͋ Δɽ • ྫɿϓϩηε P1 ͕ϝοηʔδ M Λϓϩ
ηε P2 ʹૹ৴͠Α͏ͱͨ͠ͱ͢Δɽ M ϓϩηε P1 ϓϩηε P2 send receive ೖྗͪߦྻ
• ϒϩοΩϯά Send P2 ͕ M Λड৴ՄೳʹͳΔ·Ͱ P1 ͕ͨ͞ΕɼP2 ͕
M Λड৴ͨ࣌͠ʹऴྃ͢Δɽ • ඇϒϩοΩϯά Send ૹͬͨϝοηʔδ͕ड৴͞ΕΔ·Ͱ P1 ͕ͨ͞Εͳ ͍ɽ͜ͷ࣌ɼϝοηʔδ P2 ͷೖྗͪߦྻʹೖΔ • ̎छྨͷҧ͍ɼϒϩοΩϯά Send P1 ͕ P2 ͷ M ͷड৴ΛΔ͜ͱ͕ग़དྷΔɽ
• ϒϩοΩϯά Receive ೖྗͪߦྻʹϝοηʔδ͕ແ͍࣌ɼϝοηʔδ͕౸ ண͢Δ·Ͱͭɽʢॲཧதஅ͞ΕΔʣ • ඇϒϩοΩϯά Receive ೖྗͪߦྻʹϝοηʔδ͕ແͯ͘ɼϝοηʔδͷ ౸ணΛͨͳ͍ɽ
• ೖྗͪߦྻʹϝοηʔδ͕͋Δͱ͖ɼϝοηʔδ ΛऔΓग़ͯ͠ฦ͢ɽ
• ࠓճɼඇϒϩοΩϯά Send ͱϒϩο Ωϯά Receive Λ࠾༻ͨ͠௨৴ػߏΛར ༻͢Δɽ
• ࢄγεςϜͷྨ ಉظγεςϜɾඇಉظγεςϜ
• ಉظγεςϜͱʁ ҎԼͷ̏ͭͷ݅Λຬͨ͢ɽ ̍ɼϓϩηεͷ࣮ߦʹԼݶ͕͋Δɽ ̎ɼ௨৴ʹ͔͔Δ௨৴Ԇʹఆͷ্ݶ͕͋Δɽ ̏ɼҙͷେҬ࣌ܭͰɼͯ͢ͷϓϩηε Pi ͷہॴ࣌ ܭͷ͍͠ɽ •
ϓϩηε͕େҬ࣌ܭΛࢀরͰ͖ͯɼ௨৴Ԇ͕ ͦΕͧΕ͋ΔఆͰԡ͑͞ΒΕΔͱԾఆ͞ΕΔɽ
• ϥϯυ ಉظγεςϜͰࣄͷ୯ҐΛநԽͨ͠୯Ґɽ ֤ϓϩηεಉظ֤ͯ͠ϥϯυΛ࣮ߦ͢ΔͱΈͳͤ Δɽ P1 P2 P3 ɾɾɾ Pn
ϥϯυ1 ϥϯυ2 ϥϯυ3 ϥϯυn ߋʹଓ͘... ϝοηʔδަ ܭࢉͳͲ
• ඇಉظγεςϜ ಉظγεςϜͰͳ͍ࢄγεςϜ • શඇಉظγεςϜ ҎԼͷ̏ͭͷ݅Λຬͨ͢ɽ ̍ɼͲͷϓϩηεͷ໋ྩ༗ݶ࣌ؒʹ࣮ߦ͞ΕΔ ̎ɼ௨৴Ԇʹରͯ͠ͲͷΑ͏ͳԾઆઃ͚ͳ͍ ̏ɼہॴ࣌ܭͷࠩʹରͯ͠ͲͷΑ͏ͳԾઆઃ͚ͳ͍
• ࢄΞϧΰϦζϜͱʁ ֤ϓϩηε Pi ͕࣮ߦ͢ΔΞϧΰϦζϜ Ai ͷू߹ A ͷ͜ͱɽ •
֤ϓϩηε͕શ͘ҧ͏ΞϧΰϦζϜͷ ͰՄೳɽ • ࢄΞϧΰϦζϜɼ͔̍ͭෳͷ࢝ಈ ϓϩηεʹΑͬͯ։࢝͞ΕΔɽ ͦΕҙ֎ͷϓϩηεϝοηʔδΛड৴࣮ͯ͠ߦΛ։࢝͢Δɽ
• ࢄΞϧΰϦζϜͷෳࡶ͞ ௨৴ෳࡶɾ࣌ؒෳࡶ • ௨৴ෳࡶ ϝοηʔδෳࡶͱϏοτෳࡶͰද͢ • ࣌ؒෳࡶ ඇಉظγεςϜͱಉظγεςϜͰఆ͕ٛҟͳΔɽ
• ϝοηʔδෳࡶ ΞϧΰϦζϜ͕ऴྃ͢Δ·Ͱʹަͨ͠ϝοηʔδͷ૯ • Ϗοτෳࡶ ϓϩηεؒͰަ͞ΕΔϝοηʔδͷ૯Ϗοτ • ಉظγεςϜͷ࣌ؒෳࡶ ΞϧΰϦζϜ͕ఀࢭ͢Δ·Ͱͷϥϯυ
• ඇಉظγεςϜͷ࣌ؒෳࡶ ௨ৗɼΞϧΰϦζϜ͕ىಈ͔ͯ͠Βɼఀࢭ͢Δ·Ͱͷ࣌ ؒɽ ඇಉظγεςϜͰɼҎԼͷཧ༝ʹΑΓ࠾༻Ͱ͖ͳ͍ɽ • ඇಉظγεςϜͷϓϩηε࣮ߦ͕ҰͰͳ͍ɽ • ϓϩηεͰͷखଓ͖ݺͼग़͠ΑΓɼϝοηʔδ௨৴ ͷ΄͏͕ѹతʹ͍ɽ
• ඇಉظγεςϜͷ࣌ؒෳࡶ ΞϧΰϦζϜ͕ఀࢭ͢Δ·Ͱʹੜͨ͡ϝ οηʔδͷ࠷ʹଐ͢Δϝοηʔδ • ϝοηʔδͷ࠷ͱʁ લͷϝοηʔδड৴ͷ݁Ռɼੜ͞Ε ͨΑ͏ͳϝοηʔδྻʢʁʣ → ͭ·Γϝοηʔδͷཤྺʁ