Previous | Next --- Slide 34 of 64
Back to Lecture Thumbnails
tyler.johnson

The reason we place work in per-thread work queues is because this simplifies the process that threads use to fetch their work. By having queues for all of them we are less likely to have a bottleneck on fetching work because fewer threads will be competing for the synchronization locks that protect these queues. The only time threads should compete over a job is when a thread has an empty queue and thus steals from some other thread.

Please log in to leave a comment.