superlu_dist
superlu_dist copied to clipboard
Fix issue when sequential column permutations vary between processes
I ran into an issue using the METIS_AT_PLUS_A reordering that the computed column permutation was different on different MPI processes, causing issues down the line in the symbolic factorization. This was using Scotch's METIS compatibility library, where it appears that recent versions of Scotch may produce slightly different results for calls to METIS_NodeND with the same inputs.
This PR resolves this issue by computing the column permutation on the root process and broadcasting to all other processes. This is the same approach taken by, for example, STRUMPACK when not using parallel reordering methods.