Top Banner
63

PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る

Feb 19, 2017

Download

Technology

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 2: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 3: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 4: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 5: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 6: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 7: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 8: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 9: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 10: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 11: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 12: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 13: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 14: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 15: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 16: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 17: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 18: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 19: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 20: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 21: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 22: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 23: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る

Node Node Node

Process

Thread

Network

Thread

ThreadThread

Memory

Page 24: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 25: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 26: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 27: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 28: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 29: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 30: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る

original frontend

C/C++ Obj-C Swift

Fortran Ada Go

original language

iPhone Android

Raspberry Pi

PC

objectfile

Clang

dragon egg

LLVM Optimizer

ARM backend

x86 backend

Page 31: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る

Node (VM)Process

clang

C/C++ LLVM-IR Thread Thread

Memory

Page 32: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る

original frontend

C/C++ Obj-C Swift

Fortran Ada Go

original language

LLVM?

each compiler AST web

browser

PROCESS WARP

Page 33: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 34: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る

Node A Node B

Scheduler

warp_thread

VM

Scheduler

VM

Network

Page 35: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 36: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る

main

funcA

main

funcA

funcB

main

funcA

Page 37: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る

main

main

main

main

caller

main

main

caller caller

funcA funcA funcA

caller

funcB

Page 38: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る

main

funcA

main funcB

Page 39: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る

C++

Electron

Android SDK + JNI

emscripten

Linux / Mac

Android

web

Page 40: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 41: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 42: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 43: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 44: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 46: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 47: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 48: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 49: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 50: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 51: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 52: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 53: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 54: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る

! "

Page 55: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 56: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 57: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 58: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 59: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る
Page 62: PROCESS WARP「プロセスがデバイス間で移動する」仕組みを作る