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
How V8 executes WASM
Search
Taketoshi Aono(青野健利 a.k.a brn)
July 24, 2019
Programming
3
1.7k
How V8 executes WASM
WASM Pipeline of V8 javascript engine
Taketoshi Aono(青野健利 a.k.a brn)
July 24, 2019
Tweet
Share
More Decks by Taketoshi Aono(青野健利 a.k.a brn)
See All by Taketoshi Aono(青野健利 a.k.a brn)
document.write再考
brn
6
3.1k
Parsing Javascript
brn
14
9.4k
JSON & Object Tips
brn
1
520
CA 1Day Youth Bootcamp for Frontend LT
brn
0
990
Modern TypeScript
brn
2
830
javascript - behind the scene
brn
3
780
tc39 proposals
brn
0
900
プロダクト開発とTypeScript
brn
8
3k
React-Springでリッチなアニメーション
brn
1
730
Other Decks in Programming
See All in Programming
flutter_kaigi_2025.pdf
kyoheig3
1
210
AI駆動開発カンファレンスAutumn2025 _AI駆動開発にはAI駆動品質保証
autifyhq
0
150
Temporal Knowledge Graphで作る! 時間変化するナレッジを扱うAI Agentの世界
po3rin
5
1.3k
r2-image-worker
yusukebe
1
170
MCPサーバー「モディフィウス」で変更容易性の向上をスケールする / modifius
minodriven
8
1.4k
ネストしたdata classの面倒な更新にさようなら!Lensを作って理解するArrowのOpticsの世界
shiita0903
1
300
CSC509 Lecture 11
javiergs
PRO
0
300
Web エンジニアが JavaScript で AI Agent を作る / JSConf JP 2025 sponsor session
izumin5210
3
590
퇴근 후 1억이 거래되는 서비스 만들기 | 내가 AI를 사용하는 방법
maryang
2
550
ドメイン駆動設計のエッセンス
masuda220
PRO
15
7.7k
What's New in Web AI?
christianliebel
PRO
0
120
Inside of Swift Export
giginet
PRO
1
530
Featured
See All Featured
Docker and Python
trallard
46
3.6k
How to train your dragon (web standard)
notwaldorf
97
6.4k
How to Think Like a Performance Engineer
csswizardry
28
2.3k
RailsConf 2023
tenderlove
30
1.3k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.8k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
[RailsConf 2023] Rails as a piece of cake
palkan
57
6k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Transcript
H o w V 8 E x e c u
t e W A S M
Name !CSO 5BLFUPTIJ"POP੨݈ར Occupation 'SPOUFOE%FWFMPQFS1SPEVDU0XOFS Company $ZCFSBHFOU"EUFDI4UVEJP"*.FTTFOHFS OSS $POUSJCVUPSPG7
About IUUQJOGPCODI
8"4.࣮ߦύε
8"4. -JGU0⒎ JBY 5VSCP'BO 0UIFST 5VSCP'BO %FCVH *OUFSQSFUFS
-JGUPGG 8"4.ઐ༻ͷ#BTFMJOFίϯύΠϥ 8"4.ͷ01ίʔυΛ+*5ʹม͢Δ ϨδελϚγϯ͕ͩɺͷϩʔυʹελοΫ͏ ϨδελׂϦχΞʹߦ͍ɺϨδελ͕ރׇͨ͠ΒTQJMM͠ɺಛʹੜଘظؒ ͷੳ͍ͯ͠ͳ͍ 9ͱ*"ͷΈσϑΥϧτͰ0/ʹͳ͍ͬͯΔ
5VSCP'BO 7ͷ࠷దԽ+*5༻ύΠϓϥΠϯ άϥϑΛੜ͔ͯ͠Βɺάϥϑͷ࠷దԽύΠϓϥΠϯΛ௨Γɺ *OTUSVDUJPO4FMFDUPSΛܦͯ+*5ίʔυΛग़ྗ͢Δ +BWBTDSJQU͜ͷ࠷దԽΛܦͯ+*5ίʔυ͕ग़ྗ͞ΕΔ
5VSCP'BO1JQFMJOF
8"4. %FDPEF 'VODUJPO#PEZ 44" (SBQI 0QUJNJ[BUJPO QBTT 4DIFEVMJOH 3FHJTUFS "MMPDBUJPO
*OTUSVDUJPO TFMFDUJPO $PEF (FOFSBUJPO
-JGUPGG1JQFMJOF
8"4. %FDPEF 'VODUJPO#PEZ $PEF (FOFSBUJPO
KBWBTDSJQU1JQFMJOF
+4 44" (SBQI 0QUJNJ[BUJPO QBTT 4DIFEVMJOH 3FHJTUFS "MMPDBUJPO *OTUSVDUJPO TFMFDUJPO
$PEF (FOFSBUJPO 1BSTF "45 #ZUFDPEF (SBQI #ZUFDPEF
-JGUPGG5JFSJOH
8"4. -JGU0⒎ &YFDVUFCBTFMJOF+*5 5VSCP'BO *NNFEJBUFMZTUBSUCBDLHSPVOEDPNQJMF
5JFSJOH -JGUPGGͷ߹࠷ॳʹ-JGUPGGͰ#BTFMJOF+*5Λग़ྗ࣮ͯ͠ߦ͢Δ ͜͏͢Δ͜ͱͰελʔτΞοϓλΠϜͷߴԽΛߦ͏ ͞Βʹ8"4.+4ͱҧͬͯ੩తʹશͯܕ͚͞Ε͍ͯΔͨΊɺ࣮ߦͷ5SBDF ΛߦΘͣʹଈ࠷దԽ+*5Λग़ྗ͢Δ͜ͱ͕Ͱ͖Δ ͦͷͨΊɺ#BTFMJOFΛੜͭͭ͠όοΫάϥϯυͰ5VSCP'BOʹΑΔ࠷దԽ +*5ͷग़ྗΛಉ࣌ʹߦ͍ͬͯΔ
*OUFSQSFUFS 8"4.༻ͷΠϯλϓϦλ࣮ ී௨ʹ࣮ߦͨ͠߹ʹ͜ͷύεʹೖΔ͜ͱͳ͍ σόοά༻్ͱͯ͠ͷΈଘࡏ͢Δ ͱ͍ͯ
$PEF$BDIJOH
5VSCP'BODPEFDBDIJOH 8"4.ͷίʔυҰίϯύΠϧ͞ΕΔͱ$ISPNFʹΑͬͯΩϟογϡ͞Ε ͯ࣍ճҎ߱ߴͰىಈ͢Δ
5PFGpDJFOUDBDIJOH ʠJOTUBOUJBUF4USFBNJOHʡ͔ʠDPNQJMF4USFBNJOHʡΛར༻͢Δඞཁ͕͋ Δ 63-ͱXBTNͷΈ߹ΘͤͰΩϟογϡΛߦ͏ͷͰɺҧ͏63-͔Βϩʔυ ͢ΔͷΛΊΔ
KBWBTDSJQUͱൺͯ
$PEFTJ[F ѹॖ͞Εͨ#ZUFDPEFͳͷͰવKBWBTDSJQUͷιʔείʔυΑΓখ͍͞ ίʔυ༰ʹΑΔ͕
5ZQF'FFECBDL KBWBTDSJQUܕ͕ແ͍ͷͰɺCBTFMJOFͰ༷ʑͳܕʹରԠ͢ΔίʔυΛग़ྗ ͦͷޙऩू͞Εͨܕใ͔ΒมͷܕΛ༧ͯ͠+*5Λग़ྗ͢Δ 8"4.੩తܕ͚ͳͷͰɺͦͷաఔΛܦΔඞཁ͕ແ͍
4UBUJD0QUJNJ[BUJPO 8"4.ଟ͘ͷ߹ɺίϯύΠϥ͔Βग़ྗ͞ΕΔͨΊɺίϯύΠϥͷόοΫ Τϯυ͕੩తͳ࠷దԽΛࢪ͢͜ͱ͕Ͱ͖Δ +*5ͷλΠϛϯάͰߦ͏࠷దԽ࣌ؒΛ͔͚ΒΕͳ͍ͨΊɺߦ͑Δ࠷దԽ͕ ݶΒΕΔ
($ 8"4.ʹ($͕ແ͍ͷͰߴͳׂ͕Մೳ 8"4.ͷϝϞϦ+4ͷ"SSBZ#VGGFS͔ΒׂΓͯΒΕ͍ͯΔ͕ɺׂͷλΠ ϛϯάͰ0MEεϖʔεʹׂΓͯΔͷͰ+4ͷ($ͷରʹͳΓͮΒ͍
ؾʹͳΔ 8"4.͔ͳΓMPXMFWFMͳ#ZUFDPEFͳͷͰɺ+7.ͷΑ͏ͳલఏ݅Λͨ ͤΒΕͣɺΤϯδϯଆͰͰ͖Δ࠷దԽ͕͔ͳΓݶΒΕͯ͘Δ ࣄલͷ࠷దԽ͕ඇৗʹॏཁʹͳͬͯ͠·͍ɺ͏ίϯύΠϥʹੑೳ͕େ͖͘ ґଘͦ͠͏
·ͱΊ Γ8"4.ͱͯίϯύΠϥϑϨϯυϦʔ KBWBTDSJQUͷ࠷దԽύε͔ͳΓෳࡶʹݟ͑Δ