Actor Model Software Transactional Memory Data Flow Programming.
-
Upload
suzanna-golden -
Category
Documents
-
view
226 -
download
0
Transcript of Actor Model Software Transactional Memory Data Flow Programming.
![Page 1: Actor Model Software Transactional Memory Data Flow Programming.](https://reader035.fdocuments.in/reader035/viewer/2022062717/56649e4d5503460f94b43a6e/html5/thumbnails/1.jpg)
Concurrent Programming and Languages
Behrooz Nobakht
![Page 2: Actor Model Software Transactional Memory Data Flow Programming.](https://reader035.fdocuments.in/reader035/viewer/2022062717/56649e4d5503460f94b43a6e/html5/thumbnails/2.jpg)
Approaches
Actor Model Software Transactional Memory Data Flow Programming
![Page 3: Actor Model Software Transactional Memory Data Flow Programming.](https://reader035.fdocuments.in/reader035/viewer/2022062717/56649e4d5503460f94b43a6e/html5/thumbnails/3.jpg)
Actor Model
Actor: an autonomous and concurrent entity sending “messages”
In response to a “message”, an actor may› Send an finite set of messages to known
actors› Create a finite set of new actors› Define how it will respond to future
messages
![Page 4: Actor Model Software Transactional Memory Data Flow Programming.](https://reader035.fdocuments.in/reader035/viewer/2022062717/56649e4d5503460f94b43a6e/html5/thumbnails/4.jpg)
Software Transactional Memory
Translating sequential object implementation to concurrent non-blocking ones
Transaction: a finite sequence of local and shared memory machine instructions
The illusion: Isolation and Atomicity A shared object plays the role of an
STM.
![Page 5: Actor Model Software Transactional Memory Data Flow Programming.](https://reader035.fdocuments.in/reader035/viewer/2022062717/56649e4d5503460f94b43a6e/html5/thumbnails/5.jpg)
Data Flow Programming
Divide, conquer, merge the processing data
MapReduce› Map: map incoming data to intermediate
results› Reduce: merge intermediate results to final
results› Specialized File System
![Page 6: Actor Model Software Transactional Memory Data Flow Programming.](https://reader035.fdocuments.in/reader035/viewer/2022062717/56649e4d5503460f94b43a6e/html5/thumbnails/6.jpg)
Languages and Libraries
![Page 7: Actor Model Software Transactional Memory Data Flow Programming.](https://reader035.fdocuments.in/reader035/viewer/2022062717/56649e4d5503460f94b43a6e/html5/thumbnails/7.jpg)
JAVA
: TAS
K Relevant: Killim, Clojure
![Page 8: Actor Model Software Transactional Memory Data Flow Programming.](https://reader035.fdocuments.in/reader035/viewer/2022062717/56649e4d5503460f94b43a6e/html5/thumbnails/8.jpg)
JAVA
: EX
EC
UTO
R S
ER
VIC
E
![Page 9: Actor Model Software Transactional Memory Data Flow Programming.](https://reader035.fdocuments.in/reader035/viewer/2022062717/56649e4d5503460f94b43a6e/html5/thumbnails/9.jpg)
SC
ALA
: AC
TO
RS Similars: Erlang, ActorFoundry, Jetlang
![Page 10: Actor Model Software Transactional Memory Data Flow Programming.](https://reader035.fdocuments.in/reader035/viewer/2022062717/56649e4d5503460f94b43a6e/html5/thumbnails/10.jpg)
MU
LTIV
ER
SE STM on Groovy/Java
![Page 11: Actor Model Software Transactional Memory Data Flow Programming.](https://reader035.fdocuments.in/reader035/viewer/2022062717/56649e4d5503460f94b43a6e/html5/thumbnails/11.jpg)
HA
DO
OP Map/Reduce
![Page 12: Actor Model Software Transactional Memory Data Flow Programming.](https://reader035.fdocuments.in/reader035/viewer/2022062717/56649e4d5503460f94b43a6e/html5/thumbnails/12.jpg)
All-in
-on
es
GPa
rsH
aske
ll
Based on Groovy and Java Parallel Collection Functions Data Flows and MapReduce Actors
forkIO and Mvars STM Foreign Function Interface Nested Data Parallelism
![Page 13: Actor Model Software Transactional Memory Data Flow Programming.](https://reader035.fdocuments.in/reader035/viewer/2022062717/56649e4d5503460f94b43a6e/html5/thumbnails/13.jpg)
Hyb
rid S
olu
tion
s
Akka
MPI
Actors and Remote Actors STM Transactors: Transactional Actors
Message Passing Interface Distributed Memory C, C++, Fortran, Boost Library