Closed learning-chip closed 2 years ago
Thank you for the question.
Yes, you can change the values on line 23 (lr_rank) to control the number of low-rank terms. https://github.com/Hitenze/pargemslr/blob/a2bda669999d7857f052c8c2ac363b24cb0cc929/ParGeMSLR/TESTS/parallel/inputs#L23 You may change the values on line 23 to "0 32 0" and run the default tests with shifted Laplacian to check if the rank on level 0 is set to 0 correctly. Please let us know if there are any issues. Thank you! The three numbers on line 23 are
To obtain the results in that table, we only change a few parameters. If you hope to reproduce the results you can try the following
Increase the max_row_nnz for ILU, and decrease the droptol for ILU. In our experiments we use 1e-05 and 2000. https://github.com/Hitenze/pargemslr/blob/a2bda669999d7857f052c8c2ac363b24cb0cc929/ParGeMSLR/TESTS/parallel/inputs#L16-L17 We partition the graph into more subdomains to control the fill-factor. You can increase the first number on line 13 if the fill-factor is too high. https://github.com/Hitenze/pargemslr/blob/a2bda669999d7857f052c8c2ac363b24cb0cc929/ParGeMSLR/TESTS/parallel/inputs#L13
Increase the number of low-rank terms on the top level. You can start by using values like "50 0 0" or "50 5 0" https://github.com/Hitenze/pargemslr/blob/a2bda669999d7857f052c8c2ac363b24cb0cc929/ParGeMSLR/TESTS/parallel/inputs#L23
Please let me know if that doesn't work. Thank you!
@Hitenze Thanks for the explanation!
In the parGeMSLR paper it was stated that "the number of low-rank terms is varied as k = {10, 20, ..., 100}" (Section 5.2.3. Helmholtz equation, also Figure 9)
I was attempting to reproduce this result (that more challenging problems benefit from more low-rank terms), but I am not sure which option in
inputs
correctly sets the number of terms. Is it one of the options below?https://github.com/Hitenze/pargemslr/blob/a2bda669999d7857f052c8c2ac363b24cb0cc929/ParGeMSLR/TESTS/parallel/inputs#L20-L27