Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the...

87
Webinar #10 - 19 April 2017 Isolates in the Cloud

Transcript of Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the...

Page 1: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

1

Webinar #10 - 19 April 2017Isolates in the Cloud

Page 2: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

2

Agenda

Page 3: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

3

Agenda Quick introduction to Futures and

Isolates

Page 4: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

4

Agenda Quick introduction to Futures and

Isolates Building and launching a Linux VM

with Dyalog APL on the Amazon Elastic Compute Cloud (EC2)

Page 5: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

5

Agenda Quick introduction to Futures and

Isolates Building and launching a Linux VM

with Dyalog APL on the Amazon Elastic Compute Cloud (EC2)

Starting 20 VM's and using them as isolate servers

Page 6: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

6

Agenda Quick introduction to Futures and Isolates Building and launching a Linux VM

with Dyalog APL on the Amazon Elastic Compute Cloud (EC2)

Starting 20 VM's and using them as isolate servers

A quick demo of parallel each (ll.EachXin the isolate workspace since 16.0).

Page 7: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

7

Quick Introduction to Isolates

Page 8: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

8

Quick Introduction to Isolates

iss←isolate.New¨3⍴⊂''

Page 9: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

9

Quick Introduction to Isolates

iss←isolate.New¨3⍴⊂''

Page 10: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

10

Quick Introduction to Isolates

iss←isolate.New¨3⍴⊂''

An isolate looks, tastes, and feelslike a namespace, except thatEach isolate appears as an extension of the workspace,but exists in a separate process.iss is a 3-element vector ofreferences to three isolates.

Page 11: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

11

Quick Introduction to Isolates

iss←isolate.New¨3⍴⊂''iss.X←(1 2 3) (4 5) 6

An isolate looks, tastes, and feelslike a namespace, except thatEach isolate appears as an extension of the workspace,but exists in a separate process.iss is a 3-element vector ofreferences to three isolates.

Page 12: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

12

Quick Introduction to Isolates

X←1 2 3

X←4 5

X←6

iss←isolate.New¨3⍴⊂''iss.X←(1 2 3) (4 5) 6

An isolate looks, tastes, and feelslike a namespace, except thatEach isolate appears as an extension of the workspace,but exists in a separate process.iss is a 3-element vector ofreferences to three isolates.

Page 13: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

13

Quick Introduction to Isolates

X←1 2 3

X←4 5

X←6

iss←isolate.New¨3⍴⊂''

iss.((+⌿ ÷ ≢) X)iss.X←(1 2 3) (4 5) 6

An isolate looks, tastes, and feelslike a namespace, except thatEach isolate appears as an extension of the workspace,but exists in a separate process.iss is a 3-element vector ofreferences to three isolates.

Page 14: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

14

Quick Introduction to Isolates

X←1 2 3

X←4 5

X←6

iss←isolate.New¨3⍴⊂''

iss.((+⌿ ÷ ≢) X)iss.X←(1 2 3) (4 5) 6

2 4.5 6

An isolate looks, tastes, and feelslike a namespace, except thatEach isolate appears as an extension of the workspace,but exists in a separate process.iss is a 3-element vector ofreferences to three isolates.

Page 15: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

15

Isolate Demo

Page 16: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

16

A 2-Core Computer

How isolates work

A DyalogApplication

Dyalog ProcessesComputers

Page 17: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

17

A 2-Core Computer

How isolates work

A DyalogApplication

Dyalog ProcessesComputers

iss←isolate.New¨4⍴⊂⍬

Page 18: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

18

A 2-Core Computer

How isolates work

A DyalogApplication

IsolateProcess 1

IsolateProcess 2

Dyalog ProcessesComputers

iss←isolate.New¨4⍴⊂⍬

Page 19: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

19

A 2-Core Computer

How isolates work

A DyalogApplication

IsolateProcess 1

IsolateProcess 2

Dyalog ProcessesComputers

iss←isolate.New¨4⍴⊂⍬

TCP Sockets

Page 20: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

20

A 2-Core Computer

How isolates work

A DyalogApplication

IsolateProcess 1

IsolateProcess 2

Isolate 1

Dyalog Processes Namespaces

1

Computers

iss←isolate.New¨4⍴⊂⍬

TCP Sockets

Page 21: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

21

A 2-Core Computer

How isolates work

A DyalogApplication

IsolateProcess 1

IsolateProcess 2

Isolate 1

Isolate 2

Dyalog Processes Namespaces

1 2

Computers

iss←isolate.New¨4⍴⊂⍬

TCP Sockets

Page 22: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

22

A 2-Core Computer

How isolates work

A DyalogApplication

IsolateProcess 1

IsolateProcess 2

Isolate 1

Isolate 2

Dyalog Processes Namespaces

1 2 3

Computers

iss←isolate.New¨4⍴⊂⍬

TCP Sockets

Isolate 3

Page 23: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

23

A 2-Core Computer

How isolates work

A DyalogApplication

IsolateProcess 1

IsolateProcess 2

Isolate 1

Isolate 2

Dyalog Processes Namespaces

1 2 3 4

Computers

iss←isolate.New¨4⍴⊂⍬

TCP Sockets

Isolate 3

Isolate 4

Page 24: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

24

A 2-Core Computer

How isolates work

A DyalogApplication

IsolateProcess 1

IsolateProcess 2

Isolate 1

Isolate 2

Dyalog Processes Namespaces

1 2 3 4

Computers

Another Computer

iss←isolate.New¨4⍴⊂⍬

TCP Sockets

Isolate 3

Isolate 4

Page 25: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

25

A 2-Core Computer

How isolates work

A DyalogApplication

IsolateProcess 1

IsolateProcess 2

Isolate 1

Isolate 2

Dyalog Processes Namespaces

1 2 3 4

Computers

Another Computer

iss←isolate.New¨4⍴⊂⍬

TCP Sockets

Isolate 3

Isolate 4

StartServer 'ip=10.0.0.1'

Page 26: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

26

A 2-Core Computer

How isolates work

A DyalogApplication

IsolateProcess 1

IsolateProcess 2

Isolate 1

Isolate 2

Dyalog Processes Namespaces

1 2 3 4

Computers

Another Computer

IsolateProcess 1

IsolateProcess 2 iss←isolate.New¨4⍴⊂⍬

TCP Sockets

Isolate 3

Isolate 4

StartServer 'ip=10.0.0.1'

Page 27: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

27

A 2-Core Computer

How isolates work

A DyalogApplication

IsolateProcess 1

IsolateProcess 2

Isolate 1

Isolate 2

Dyalog Processes Namespaces

1 2 3 4

Computers

Another Computer

IsolateProcess 1

IsolateProcess 2 iss←isolate.New¨4⍴⊂⍬

AddServer '10.0.0.2'

TCP Sockets

Isolate 3

Isolate 4

StartServer 'ip=10.0.0.1'

Page 28: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

28

A 2-Core Computer

How isolates work

A DyalogApplication

IsolateProcess 1

IsolateProcess 2

Isolate 1

Isolate 2

Dyalog Processes Namespaces

1 2 3 4

Computers

Another Computer

IsolateProcess 1

IsolateProcess 2 iss←isolate.New¨4⍴⊂⍬

AddServer '10.0.0.2'

TCP Sockets

Isolate 3

Isolate 4

StartServer 'ip=10.0.0.1'

Page 29: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

29

A 2-Core Computer

How isolates work

A DyalogApplication

IsolateProcess 1

IsolateProcess 2

Isolate 1

Isolate 2

Dyalog Processes Namespaces

1 2 3 4

Computers

Another Computer

IsolateProcess 1

IsolateProcess 2 iss←isolate.New¨4⍴⊂⍬

AddServer '10.0.0.2'

TCP Sockets

Isolate 3

Isolate 4

StartServer 'ip=10.0.0.1'

Page 30: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

30

Isolate DemoFor more on isolates, see for example

"Parallel Programming in Dyalog APL"https://dyalog.tv/Dyalog14/?v=JvLWvyG7JEs

Page 31: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

31

Agenda Quick introduction to isolates Building and launching a Linux VM

with Dyalog APL on the Amazon Elastic Compute Cloud (EC2)

Starting 20 VM's and using them as isolate servers

A quick demo of ll.EachX

Page 32: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

32

Create an Amazon Machine Image (AMI)

Page 33: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

33

Create an Amazon Machine Image (AMI) Select a base AMI with Ubuntu Linux installed

Page 34: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

34

Create an Amazon Machine Image (AMI) Select a base AMI with Ubuntu Linux installed Configure Firewall

Page 35: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

35

Create an Amazon Machine Image (AMI) Select a base AMI with Ubuntu Linux installed Configure Firewall Launch the VM

Page 36: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

36

Create an Amazon Machine Image (AMI) Select a base AMI with Ubuntu Linux installed Configure Firewall Launch the VM Use WinSCP to copy Dyalog installer

Page 37: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

37

Create an Amazon Machine Image (AMI) Select a base AMI with Ubuntu Linux installed Configure Firewall Launch the VM Use WinSCP to copy Dyalog installer Install Dyalog APL

Page 38: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

38

Create an Amazon Machine Image (AMI) Select a base AMI with Ubuntu Linux installed Configure Firewall Launch the VM Use WinSCP to copy Dyalog installer Install Dyalog APL Use SSH to start Dyalog APL

Page 39: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

39

Create an Amazon Machine Image (AMI) Select a base AMI with Ubuntu Linux installed Configure Firewall Launch the VM Use WinSCP to copy Dyalog installer Install Dyalog APL Use SSH to start Dyalog APL Connect to it with RIDE

Page 40: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

40

Create an Amazon Machine Image (AMI) Select a base AMI with Ubuntu Linux installed Configure Firewall Launch the VM Use WinSCP to copy Dyalog installer Install Dyalog APL Use SSH to start Dyalog APL Connect to it with RIDE Save the new AMI

Page 41: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

41

Create an Amazon Machine Image (AMI) Select a base AMI with Ubuntu Linux installed Configure Firewall Launch the VM Use WinSCP to copy Dyalog installer Install Dyalog APL Use SSH to start Dyalog APL Connect to it with RIDE Save the new AMI

Page 42: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

42

Page 43: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

43

Page 44: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

44

Page 45: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

45

Page 46: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

46

Page 47: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

47

Page 48: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

48

Page 49: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

49

Page 50: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

50

+ Max 20 simultaneous instances

Page 51: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

51

Page 52: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

52

Page 53: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

53

Page 54: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

54

Page 55: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

55

Page 56: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

56

Page 57: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

57

Page 58: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

58

Page 59: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

59

Page 60: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

60

Page 61: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

61

Page 62: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

62

Page 63: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

63

Page 64: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

64

Page 65: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

65

Page 66: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

66

Agenda Quick introduction to isolates Building and launching a Linux VM

with Dyalog APL on the Amazon Elastic Compute Cloud (EC2)

Starting 20 VM's and using them as isolate servers

A quick demo of ll.EachX

Page 67: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

67

Isolates in the CloudDyalog Processes NamespacesComputers

SSH SessionsTCP Sockets

Page 68: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

68

A Windows Computer

Isolates in the CloudDyalog Processes NamespacesComputers

SSH SessionsTCP Sockets

Page 69: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

69

A Windows Computer

Isolates in the CloudA Dyalog

Application

Dyalog Processes NamespacesComputers

SSH SessionsTCP Sockets

Page 70: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

70

A Windows Computer

Isolates in the CloudA Dyalog

Application

Dyalog Processes NamespacesComputers

SSH Sessions

IsolateProcess

TCP Sockets

Page 71: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

71

A Windows Computer

Isolates in the CloudA Dyalog

Application

Dyalog Processes NamespacesComputers

SSH Sessions

IsolateProcess

IsolateProcess

TCP Sockets

Page 72: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

72

A Windows Computer

Isolates in the CloudA Dyalog

Application

Dyalog Processes NamespacesComputers

SSH Sessions

IsolateProcess

IsolateProcess

IsolateProcess

TCP Sockets

Page 73: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

73

A Windows Computer

Isolates in the CloudA Dyalog

Application

Dyalog Processes NamespacesComputers

SSH Sessions

IsolateProcess

IsolateProcess

IsolateProcess

IsolateProcess

TCP Sockets

Page 74: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

74

A Windows Computer

Isolates in the CloudA Dyalog

Application

Dyalog Processes Namespaces

1

Computers

SSH Sessions

IsolateProcess

IsolateProcess

IsolateProcess

IsolateProcess

TCP Sockets

Page 75: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

75

A Windows Computer

Isolates in the CloudA Dyalog

Application

Dyalog Processes Namespaces

1 2

Computers

SSH Sessions

IsolateProcess

IsolateProcess

IsolateProcess

IsolateProcess

TCP Sockets

Page 76: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

76

A Windows Computer

Isolates in the CloudA Dyalog

Application

Dyalog Processes Namespaces

1 2

Computers

SSH Sessions

IsolateProcess

IsolateProcess

IsolateProcess

IsolateProcess

3

TCP Sockets

Page 77: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

77

A Windows Computer

Isolates in the CloudA Dyalog

Application

Dyalog Processes Namespaces

1 2

Computers

SSH Sessions

IsolateProcess

IsolateProcess

IsolateProcess

IsolateProcess

3 4

TCP Sockets

Page 78: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

78

A Windows Computer

Isolates in the CloudA Dyalog

Application

Dyalog Processes Namespaces

1 2

Computers

SSH Sessions

IsolateProcess

IsolateProcess

IsolateProcess

IsolateProcess

3 4

TCP Sockets

Page 79: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

79

A Windows Computer

Isolates in the CloudA Dyalog

Application

Dyalog Processes Namespaces

1 2

Computers

SSH Sessions

IsolateProcess

IsolateProcess

IsolateProcess

IsolateProcess

3 4

Two Per VM

TCP Sockets

Page 80: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

80

A Windows Computer

Isolates in the CloudA Dyalog

Application

Dyalog Processes Namespaces

1 2

Computers

An AWS EC2 Linux VMStartServer 'ip=81.187.219.129'

SSH Sessions

IsolateProcess

IsolateProcess

IsolateProcess

IsolateProcess

3 4

Two Per VM

TCP Sockets

Page 81: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

81

A Windows Computer

Isolates in the CloudA Dyalog

Application

Dyalog Processes Namespaces

1 2

Computers

An AWS EC2 Linux VM

IsolateProcess

StartServer 'ip=81.187.219.129'

SSH Sessions

IsolateProcess

IsolateProcess

IsolateProcess

IsolateProcess

3 4

Two Per VM

TCP Sockets

Page 82: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

82

Another VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VM A Windows Computer

Isolates in the CloudA Dyalog

Application

Dyalog Processes Namespaces

1 2

Computers

An AWS EC2 Linux VM

IsolateProcess

StartServer 'ip=81.187.219.129'

SSH Sessions

IsolateProcess

IsolateProcess

IsolateProcess

IsolateProcess

3 4

Two Per VM

TCP Sockets

Page 83: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

83

Another VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VM A Windows Computer

Isolates in the CloudA Dyalog

Application

Dyalog Processes Namespaces

1 2

Computers

An AWS EC2 Linux VM

IsolateProcess

StartServer 'ip=81.187.219.129'

SSH Sessions

IsolateProcess

IsolateProcess

IsolateProcess

IsolateProcess

3 4

21 22 23 24

17 18 19 20

13 14 15 16

9 10 11 12

5 6 7 8

Two Per VM

TCP Sockets

Page 84: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

84

Another VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VMAnother VM A Windows Computer

Isolates in the CloudA Dyalog

Application

Dyalog Processes Namespaces

1 2

Computers

An AWS EC2 Linux VM

IsolateProcess

StartServer 'ip=81.187.219.129'

SSH Sessions

IsolateProcess

IsolateProcess

IsolateProcess

IsolateProcess

3 4

21 22 23 24

17 18 19 20

13 14 15 16

9 10 11 12

5 6 7 8

Two Per VM

TCP Sockets

Page 85: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

85

Agenda Quick introduction to isolates Building and launching a Linux VM

with Dyalog APL on the Amazon Elastic Compute Cloud (EC2)

Starting 20 VM's and using them as isolate servers

A quick demo of ll.EachX

Page 86: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

86

Summary Dyalog is creating tools, frameworks and samples

for distributed / cloud computing, including• APLSSH client to securely start processes on remote machines• Running Isolates in the Cloud• Microservice Frameworks (e.g. JSONServer)• Docker / Container tools

DAAAS (Dyalog APL As A Service) coming soon• We will publish "premium" AMI's with Dyalog APL,

JSONServer and MiServer pre-installed• Pre-build Docker containers with Dyalog installed• Hardest problem is to decide on pricing

We aim to publish a reference architecture for scalable services.

Page 87: Webinar #10 - 19 April 2017 Isolates in the Cloud · Webinar #10 - 19 April 2017 Isolates in the Cloud. 2 Agenda. 3 Agenda Quick introduction to Futures and Isolates. 4 ... StartServer

87

Webinar 11 Thursday, May 17th at 15:00 UTC:

Creating and managing your own User Commands