The ability to solve large linear systems efficiently has been a key part of building a successful circuit simulator such as ones for power grid analysis. Partition-based iterative methods have been widely adopted due to their divide-and-conquer nature and amenability to parallel implementation. However such methods rely heavily on the quality of circuit graph partitioning, and it is extremely challenging to develop a robust partitioning scheme that always generates near-optimal results. In this paper, we present a new line of thinking by integrating two rather distinct schools of iterative methods: partitioning based and support graph based. The former enjoys ease of parallelization, however, lacks a direct control of the numerical properties of the produced partitions. In contrast, the latter operates on the maximum spanning tree (MST) of the circuit graph, which is optimized for fast numerical convergence, but is bottlenecked by its difficulty of parallelization. By combining the two, we propose a, partitioning-based preconditioner based on the theory of support graph. The circuit partitioning is guided by the MST of the underlying circuit graph, offering essential guidance for achieving fast convergence. The resulting block-Jacobi-like preconditioner maximizes the numerical benefit inherited from support graph theory while lending itself to straightforward parallelization as a partition-based method. The experimental results on IBM power grid suite and synthetic power grid benchmarks show that our proposed method speeds up the DC simulation by up to 11.5X over an state-of-the-art direct solver.
展开▼