otp development update

12
OTP Development update

Upload: eden-best

Post on 31-Dec-2015

13 views

Category:

Documents


0 download

DESCRIPTION

OTP Development update. Highlights during 2005. Released R10B-2 .. R10B-8, will be a R10B-9 before end of year. News in R10B-8. Improvements of global new application SSH (both server and client) beta status, nice way to implement CLI for an application. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: OTP Development update

Slide titleIn CAPITALS

50 pt

Slide subtitle 32 pt

OTP Development update

Page 2: OTP Development update

Top right corner for field-mark, customer or partner logotypes. See Best practice for example.

Slide title 40 pt

Slide subtitle 24 pt

Text 24 pt

Bullets level 2-520 pt

EUC 05 presentation 2005-11-022

Highlights during 2005

Released R10B-2 .. R10B-8, will be a R10B-9 before end of year.

Page 3: OTP Development update

Top right corner for field-mark, customer or partner logotypes. See Best practice for example.

Slide title 40 pt

Slide subtitle 24 pt

Text 24 pt

Bullets level 2-520 pt

EUC 05 presentation 2005-11-023

News in R10B-8

Improvements of global new application SSH (both server and client) beta

status, nice way to implement CLI for an application. Debugger now with support for try catch New version of Edoc (thanks to Richard Carlsson)

Page 4: OTP Development update

Top right corner for field-mark, customer or partner logotypes. See Best practice for example.

Slide title 40 pt

Slide subtitle 24 pt

Text 24 pt

Bullets level 2-520 pt

EUC 05 presentation 2005-11-024

Multiprocessor support

The Erlang runtime system of today (R10B)

1 OS process, 1 thread runs all Erlang processes. Can not make use of more than 1 processor for the

execution of Erlang processes.

Page 5: OTP Development update

Top right corner for field-mark, customer or partner logotypes. See Best practice for example.

Slide title 40 pt

Slide subtitle 24 pt

Text 24 pt

Bullets level 2-520 pt

EUC 05 presentation 2005-11-025

Multiprocessor support

Scheduler

select/poll

runqueue

File io threads

Erlang runtime system R10B (1 scheduler)

Pick next runnable

Page 6: OTP Development update

Top right corner for field-mark, customer or partner logotypes. See Best practice for example.

Slide title 40 pt

Slide subtitle 24 pt

Text 24 pt

Bullets level 2-520 pt

EUC 05 presentation 2005-11-026

Multiprocessor support

The Erlang runtime system of tomorrow:

1 OS process, configurable 1..n schedulers in separate threads runs all Erlang processes.

Can make use of multiple processors for the execution of Erlang processes.

Transparent for the Erlang programs. I.e. benefit from multi cpu system without need to change your Erlang code.

Page 7: OTP Development update

Top right corner for field-mark, customer or partner logotypes. See Best practice for example.

Slide title 40 pt

Slide subtitle 24 pt

Text 24 pt

Bullets level 2-520 pt

EUC 05 presentation 2005-11-027

Multiprocessor support

select/poll

runqueue

File io threads

1..nSchedulers

Timerthread

Io thread

Pick next runnable

Erlang runtime system R11B (n schedulers)

Page 8: OTP Development update

Top right corner for field-mark, customer or partner logotypes. See Best practice for example.

Slide title 40 pt

Slide subtitle 24 pt

Text 24 pt

Bullets level 2-520 pt

EUC 05 presentation 2005-11-028

Multiprocessor supportsome additional characteristics

Linux, Solaris (MacOS x) first, (posix threads) No changes in compiler Support “traditional” separate heap per E-process first Hybrid heap later.

Page 9: OTP Development update

Top right corner for field-mark, customer or partner logotypes. See Best practice for example.

Slide title 40 pt

Slide subtitle 24 pt

Text 24 pt

Bullets level 2-520 pt

EUC 05 presentation 2005-11-029

Current status and benchmarks Can run quite a lot of the regular test suites A small benchmark ran:dom([1500,15000]) (2

processes sorting lists) on a 2-cpu machine maskin) give the following result:

Multiprocessor support

Time Relation

Pre 11B without smp support 750 ms base for comparision

Pre 11B with smp and 1 scheduler 845 ms 13% slower

Pre 11B with smp and 2 schedulers 520 ms 31% faster

Page 10: OTP Development update

Top right corner for field-mark, customer or partner logotypes. See Best practice for example.

Slide title 40 pt

Slide subtitle 24 pt

Text 24 pt

Bullets level 2-520 pt

EUC 05 presentation 2005-11-0210

Multiprocessor supportway forward

First step (ongoing) Add locking wherever needed Make system stable (Linux, Solaris, MacOSx) with

multiple schedulers on multiple and single cpu systems. Include in R11B (as beta status)

Next step Benchmarking, profiling and optimizations Other platforms (Windows) Include in update release for R11B (end of 2006)

Page 11: OTP Development update

Top right corner for field-mark, customer or partner logotypes. See Best practice for example.

Slide title 40 pt

Slide subtitle 24 pt

Text 24 pt

Bullets level 2-520 pt

EUC 05 presentation 2005-11-0211

Multiprocessor supportjoint development

The SMP support for Erlang is a joint development effort between the Ericsson OTP team, Uppsala

University and Synapse

Many thanks to Mikael Pettersson, Uppsala University Tony Rogvall, Synapse

Page 12: OTP Development update

Top right corner for field-mark, customer or partner logotypes. See Best practice for example.

Slide title 40 pt

Slide subtitle 24 pt

Text 24 pt

Bullets level 2-520 pt

EUC 05 presentation 2005-11-0212