I disagree. Go to minute 45 in the talk for a visual of what I&#x27;m about to describe: Hypothetically an ideal multithreaded program would light up as much of the CPU as possible. If we viewed it as a timeline it would start at a single point, expand as a bubble to fill the available CPU resources, and then at the end contract back down.<p>Using this style of parallelism creates many bubbles that each condense down to a single point every time you call join(), similar to a beaded necklace. This means that the &#x27;p&#x27; in Amdahl&#x27;s law for the percentage of time spent in parallel tasks is already stunted from the blocks of sequential code (or necklace string) caused by the joins.