otp development update
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 PresentationTRANSCRIPT
Slide titleIn CAPITALS
50 pt
Slide subtitle 32 pt
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.
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)
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.
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
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.
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)
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.
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
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)
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
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