Learn · CERN

Talk53 min

Turbo Charge CPU Utilization in Fork/Join Using the ManagedBlocker

Heinz Kabutz · CERN

Watch At CERN

About

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. We 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. 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..

0:00:00 Slide 1

0:00:46 Slide 2

0:01:19 Slide 3

0:01:36 Slide 4

0:02:35 Slide 5

0:03:33 Slide 6

0:04:08 Slide 7

0:05:00 Slide 8

0:05:26 Slide 9

0:05:31 Slide 10

0:05:36 Slide 11

The talk

  1. Turbo Charge CPU Utilization in Fork/Join Using the ManagedBlocker 2017-02-25 · 53 min · CERN's player

Credits and licence

Institution
CERN
Department
Conferences
Speaker
Heinz Kabutz
Year
2017
Language
English
Source
CERN
Licence
CERN, as CERN states it. CERN's terms
Attribution
© CERN. CERN provides its audiovisual media free of charge for educational and informational use, credited to CERN; this lecture is shown in CERN's own player.
Who can watch
CERN gives no rating. Invisible Network shows it to Teens profiles and older, judged from what the source says about it. How courses are placed