很多的问题中的并行性表现为数据并行性,任务并行性和流水并行性的混合,某个问题表现出的流水并行性的数量通常独立于问题的规模,而任务和数据并行性则相反,他们通常会随问题规模的增长而增长。通常情况下,任务并行性可以用来开发粗粒度的并行性,而数据并行性用来开发细粒度的并行性,因此,任务并行性和数据并行性的组合可以用来有效的开发应用在大量处理器上的并行算法。