GPars 2014 
Dr Russel Winder 
russel@winder.org.uk 
@russel_winder 
http://www.russel.org.uk 
Copyright © 2014 Russel Winder 1
This is a sales pitch… 
Copyright © 2014 Russel Winder 2
This is a s✘ales pitch… 
Copyright © 2014 Russel Winder 3
This is a sales pitch… 
Copyright © 2014 Russel Winder 4
This is breaking news… 
Copyright © 2014 Russel Winder 5
It's new… 
Copyright © 2014 Russel Winder 6
It's improved… 
Copyright © 2014 Russel Winder 7
It's… 
Copyright © 2014 Russel Winder 8
Copyright © 2014 Russel Winder 9
Thanks to GSoC 2014, 
Rafał Sławik 
built on a partial implementation by 
Alex Tkachman. 
Copyright © 2014 Russel Winder 10
Remote Objects 
Copyright © 2014 Russel Winder 11
GPars already has single JVM 
concurrency and parallelism. 
You can use it from Java 
as well as Groovy. 
Copyright © 2014 Russel Winder 12
GPars now has remote objects. 
Realized by using Netty. 
Copyright © 2014 Russel Winder 13
Actors 
Independent processes 
communicating via 
asynchronous exchange 
of messages. 
Dataflow 
Operators connected by 
channels with activity 
triggered by arrival of 
data on the channels. 
Data Parallelism 
Transform a sequence to 
another sequence where all 
individual actions happen 
at the same time. 
CSP 
Operators connected by 
channels with activity 
triggered by arrival of 
data on the channels. 
Copyright © 2014 Russel Winder 14
Active Objects 
An object that is actually 
an actor but looks like a 
full service object. 
Agents 
A wrapper for some 
shared mutable state. 
Fork/Join 
An toolkit for tree structured 
concurrency and parallelism. 
Software Transactional Memory 
Wrappers for mutable values that uses transactions 
rather than locks. 
Copyright © 2014 Russel Winder 15
Actors 
Independent processes 
communicating via 
asynchronous exchange 
of messages. 
Dataflow 
Operators connected by 
channels with activity 
triggered by arrival of 
data on the channels. 
Data Parallelism 
Transform a sequence to 
another sequence where all 
individual actions happen 
at the same time. 
CSP 
Operators connected by 
channels with activity 
triggered by arrival of 
data on the channels. 
Copyright © 2014 Russel Winder 16
Data Parallelism 
Transform a sequence to 
another sequence where all 
individual actions happen 
at the same time. 
Copyright © 2014 Russel Winder 17
Dataflow 
Operators connected by 
channels with activity 
triggered by arrival of 
data on the channels. 
Copyright © 2014 Russel Winder 18
CSP 
Sequential processes 
communicating by 
sending messages on 
channels. 
Copyright © 2014 Russel Winder 19
Actors 
Independent processes 
communicating via 
asynchronous exchange 
of messages. 
Copyright © 2014 Russel Winder 20
Actors 
Independent processes 
communicating via 
asynchronous exchange 
of messages. 
Dataflow 
Operators connected by 
channels with activity 
triggered by arrival of 
data on the channels. 
Data Parallelism 
Transform a sequence to 
another sequence where 
all individual actions 
happen at the same time. 
CSP 
Operators connected by 
channels with activity 
triggered by arrival of 
data on the channels. 
Copyright © 2014 Russel Winder 21
Copyright © 2014 Russel Winder 22
Copyright © 2014 Russel Winder 23
Copyright © 2014 Russel Winder 24
Hadoop 
Copyright © 2014 Russel Winder 25
Copyright © 2014 Russel Winder 26
Copyright © 2014 Russel Winder 27
Service Oriented Architecture 
Copyright © 2014 Russel Winder 28
Services 
Copyright © 2014 Russel Winder 29
Micro-Services 
Copyright © 2014 Russel Winder 30
Pico-Services 
Copyright © 2014 Russel Winder 31
No HTTP, Web, port 80, HTML, CSS.. 
Copyright © 2014 Russel Winder 32
Copyright © 2014 Russel Winder 33
GPars 
Dr Russel Winder 
russel@winder.org.uk 
@russel_winder 
http://www.russel.org.uk 
Copyright © 2014 Russel Winder 34

GPars 2014

  • 1.
    GPars 2014 DrRussel Winder russel@winder.org.uk @russel_winder http://www.russel.org.uk Copyright © 2014 Russel Winder 1
  • 2.
    This is asales pitch… Copyright © 2014 Russel Winder 2
  • 3.
    This is as✘ales pitch… Copyright © 2014 Russel Winder 3
  • 4.
    This is asales pitch… Copyright © 2014 Russel Winder 4
  • 5.
    This is breakingnews… Copyright © 2014 Russel Winder 5
  • 6.
    It's new… Copyright© 2014 Russel Winder 6
  • 7.
    It's improved… Copyright© 2014 Russel Winder 7
  • 8.
    It's… Copyright ©2014 Russel Winder 8
  • 9.
    Copyright © 2014Russel Winder 9
  • 10.
    Thanks to GSoC2014, Rafał Sławik built on a partial implementation by Alex Tkachman. Copyright © 2014 Russel Winder 10
  • 11.
    Remote Objects Copyright© 2014 Russel Winder 11
  • 12.
    GPars already hassingle JVM concurrency and parallelism. You can use it from Java as well as Groovy. Copyright © 2014 Russel Winder 12
  • 13.
    GPars now hasremote objects. Realized by using Netty. Copyright © 2014 Russel Winder 13
  • 14.
    Actors Independent processes communicating via asynchronous exchange of messages. Dataflow Operators connected by channels with activity triggered by arrival of data on the channels. Data Parallelism Transform a sequence to another sequence where all individual actions happen at the same time. CSP Operators connected by channels with activity triggered by arrival of data on the channels. Copyright © 2014 Russel Winder 14
  • 15.
    Active Objects Anobject that is actually an actor but looks like a full service object. Agents A wrapper for some shared mutable state. Fork/Join An toolkit for tree structured concurrency and parallelism. Software Transactional Memory Wrappers for mutable values that uses transactions rather than locks. Copyright © 2014 Russel Winder 15
  • 16.
    Actors Independent processes communicating via asynchronous exchange of messages. Dataflow Operators connected by channels with activity triggered by arrival of data on the channels. Data Parallelism Transform a sequence to another sequence where all individual actions happen at the same time. CSP Operators connected by channels with activity triggered by arrival of data on the channels. Copyright © 2014 Russel Winder 16
  • 17.
    Data Parallelism Transforma sequence to another sequence where all individual actions happen at the same time. Copyright © 2014 Russel Winder 17
  • 18.
    Dataflow Operators connectedby channels with activity triggered by arrival of data on the channels. Copyright © 2014 Russel Winder 18
  • 19.
    CSP Sequential processes communicating by sending messages on channels. Copyright © 2014 Russel Winder 19
  • 20.
    Actors Independent processes communicating via asynchronous exchange of messages. Copyright © 2014 Russel Winder 20
  • 21.
    Actors Independent processes communicating via asynchronous exchange of messages. Dataflow Operators connected by channels with activity triggered by arrival of data on the channels. Data Parallelism Transform a sequence to another sequence where all individual actions happen at the same time. CSP Operators connected by channels with activity triggered by arrival of data on the channels. Copyright © 2014 Russel Winder 21
  • 22.
    Copyright © 2014Russel Winder 22
  • 23.
    Copyright © 2014Russel Winder 23
  • 24.
    Copyright © 2014Russel Winder 24
  • 25.
    Hadoop Copyright ©2014 Russel Winder 25
  • 26.
    Copyright © 2014Russel Winder 26
  • 27.
    Copyright © 2014Russel Winder 27
  • 28.
    Service Oriented Architecture Copyright © 2014 Russel Winder 28
  • 29.
    Services Copyright ©2014 Russel Winder 29
  • 30.
    Micro-Services Copyright ©2014 Russel Winder 30
  • 31.
    Pico-Services Copyright ©2014 Russel Winder 31
  • 32.
    No HTTP, Web,port 80, HTML, CSS.. Copyright © 2014 Russel Winder 32
  • 33.
    Copyright © 2014Russel Winder 33
  • 34.
    GPars Dr RusselWinder russel@winder.org.uk @russel_winder http://www.russel.org.uk Copyright © 2014 Russel Winder 34