I'd like to direct you to my recent blog post detailing the use of Dataflow operators. It uses the popular Game of Life coding excercise to illustrate the principles of the dataflow concept. Check it out at my personal blog.
We have some great news to all the parallel souls out there - GPars 0.12 has just hit the shelves. The new version comes with lots of big and small improvements, out of which these are the most notable ones:
- Composable asynchronous functions
- The newest version of Doug Lea's Fork/Join framework (aka jsr-166y)
- Active Objects
- Initial stub at Software Transactional Memory support using Multiverse
Your GPars team
Dr.Dobb's has just published my overview article on actors in GPars. You may check it out at http://drdobbs.com/high-performance-computing/229402193
For the upcoming 0.12 release gpars now provides a Pdf version of the user guide. Check it out at http://gpars.org/SNAPSHOT/guide/gpars-guide-0.12-beta-1.pdf
Great thanks to the CZJUG hackathon team in Prague, who did the implementation, as well as to Andres Almiray of the Griffon project, who shared his valuable insight into the matter.
In short - GPars is now using the Java 7 concurrency artifacts. Russel Winder has taken initiative and with an official blessing from the jsr-166 team he mirrored the most recent jsr-166 artifacts into the maven repository. This allowed us to remove the dependency on the ancient coconut clone of the fork/join framework and use the "real" live matter. With all the improvements and fixes that jsr-166y has gone through during the last couple of years this has immediate effect on GPars plus once Java 7 ships with jsr-166y bundled, we will be ready.
Nothing changes on the user side of things, provided you're using an automated dependency management tool such as Gradle or Maven. The recent 0.12-beta-1 snapshot correctly declares the new dependencies. You may check out more details in the snapshot user guide.
Enjoy concurrency in Groovy!
Yours GPars Team
Here's some good news for all the developers crafting concurrent code - GPars 0.11 has just been released. Get it fresh at your local Groovy store or go directly to the GPars download site. A lot has changed since the previous release. The most notable additions and changes in 0.11 include:
- Great actor speed-up, so now you don't have to shop elsewhere for fast actors
- Full-blown dataflow implementation with selectors, prioritySelectors, composable tasks, point-to-point and publish-subscribe channels and more
- Java API allowing you to take GPars with you wherever you go
Concurrency has never been easier. Get GPars now, have fun and let us know what you think.
The GPars Team
Hi GPars enthusiasts,
on our path towards the next GPars release we've reached an important milestone - the beta-1 has just been made available. To get a feel of what's coming, experiment with the new dataflow constructs, try agent validators, test GPars from pure Java applications using the new Java API or just get your hair blown back by our lightning fast actors, grab it now at http://bamboo.ci.codehaus.org/browse/GPARS-REL/latest/artifact or use the usual integration options described at http://gpars.codehaus.org/Integration
As is our good tradition, an updated User Guide is ready at http://gpars.org/SNAPSHOT/guide/index.html
You might also like to check out what's new - http://gpars.org/SNAPSHOT/guide/guide/2.%20Getting%20Started.html#2.6%20What%27s%20new
Have groovy times and let us know your opinion.
The GPars team
There's quite a lot of changes, additions and improvements since the last release, so please checkout the list of major changes
Full release notes are available at http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=12030&version=15793
In the name of the whole team, I'd like to thank our users for support, ideas, contributions and feedback.
Fork/Join, Map/Reduce, Actors, Dataflow Concurrency and more joy for Groovy in the GPars 0.9 release!
It is my great pleasure to inform you the Groovy folks that the empowered GPars team has constructed, built, tested, packaged and delivered the 0.9 release of GPars - the concurrency library for Groovy. Get it hot at the download page (http://code.google.com/p/gparallelizer/downloads/list) or integrate it in your projects through Grape, Gradle, Ivy or Maven (http://gpars.codehaus.org/Integration) and check out the brand new User Guide at http://www.gpars.org/guide/index.html.
Pay special attention to the release highlights:
Unified thread-bound and event-driven actors
Considerable actor speedup
Dynamic message handler registration for DynamicDispatchActor
Dataflow operators and tasks
Fork/Join convenience abstraction
Map/Reduce functional style of collection processing
Newly added parallel collection-processing methods - groupByParallel(), minParallel(), maxParallel(), sumParallel(), foldParallel(), grepParallel()
Full release notes are available at http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=12030&version=15702
For discussions, sharing tips and hot news don't forget to subscribe to the GPars user mailing list at http://xircles.codehaus.org/projects/gpars/lists. See you all there!
Happy parallel Groovy coding!
Experimental Fork/Join support
Fork/Join or Divide and Conquer is a very powerful abstraction to solve hierarchical problems. Check out the two samples at http://code.google.com/p/gparallelizer/source/browse/trunk/src/test/groovy/groovyx/gpars/samples/forkjoin/DemoForkJoinFileCounter.groovy and http://code.google.com/p/gparallelizer/source/browse/trunk/src/test/groovy/groovyx/gpars/samples/forkjoin/DemoForkJoinMergeSort.groovy to see a new experimental Fork/Join convenience layer in action. GPars can hide the complexities of dealing with threads, pools, barriers and RecursiveActions from you, yet let you leverage the powerful Fork/Join implementation in jsr166y. Check it out and let us know what you think.
Václav Pech has been interviewed in the latest Grails Podcast, episode 97 .
The project team decided to
- rename GParallelizer to gpars and
- move from Google code to codehaus
You will now find us under http://gpars.codehaus.org.
There is still much to do, but we're working on it.
If you care about following our activities, please refer
to our JIRA: http://jira.codehaus.org/browse/GPARS.