JAX London, 8-11 October 2018
The Conference for Java & Software Innovation

Turbo Charge CPU Utilization in Fork/Join Using the ManagedBlocker

Session
This talk originates from the archive. To the CURRENT program
Early Bird Tickets! ✓ Book by September 6th ✓ Save £354 + 30% group discount Register now
Infos
Tuesday, October 10 2017
11:30 - 12:20
Room:
Room D+E

Fork/Join is a framework for parallelizing calculations using recursive decomposition, also called divide and conquer. These algorithms occasionally end up duplicating work, especially at the beginning of the run. In this talk we will demonstrate this issue and offer a solution in the form of the ManagedBlocker. Combined with the Fork/Join, it can keep parallelism at the desired level.

In this session, we will explain how you can can reduce wasted CPU cycles by implementing a reserved caching scheme. Before a task starts its calculation, it tries to reserve an entry in the shared map. If it is successful, it immediately begins. If not, it blocks until the other thread has finished its calculation. Unfortunately, this might result in a significant number of blocked threads, decreasing CPU utilization.

Behind the Tracks

Software Architecture & Design
Software innovation & more
Microservices
Architecture structure & more
Agile & Communication
Methodologies & more
Emerging Technologies
Everything about the latest technologies
DevOps & Continuous Delivery
Delivery Pipelines, Testing & more
Cloud & Modern Infrastructure
Everything about new tools and platforms
Big Data & Machine Learning
Saving, processing & more