Sparse triangular solve (SpTRSV) is an extensively studied computational kernel. An important obstacle in parallel SpTRSV implementations is that in some parts of a sparse matrix the computation is serial. By transforming the dependency graph, it is possible to increase the parallelism of the parts that lack it. In this work, we present an approach to increase the parallelism degree of a sparse matrix, discuss its limitations and possible improvements, and we compare it to a previous manual approach. The results provide several hints on how to craft a collection of strategies to transform a dependency graph.
翻译:SpTRSV(SpTRSV)是一个经过广泛研究的计算内核。 SpTRSV 平行执行的一个重要障碍是,在一个稀少的矩阵的某些部分中,计算是序列。通过转换依赖图,有可能增加缺少该图的各个部分的平行性。在这项工作中,我们提出了一个方法来增加一个分散的矩阵的平行性程度,讨论其局限性和可能的改进,并将它与先前的手工方法进行比较。结果为如何制定一系列战略来转换依赖图提供了几个提示。