Intel Adaptive Spike-Based Solver

Intel Adaptive Spike-Based Solver

Hello,
I have a question about Intel Spike solver. I want to solve matrix ecology2 (http://www.cise.ufl.edu/research/sparse/matrices/McRae/ecology2.html) from florida matrix collection using SPIKE. What kind of solving strategy (RSS, DFS, OIS) should I choose? The matrix is solved on a 48-nodes cluster with 8 cores on each node.

10 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Hello,
The current SPIKE releaseonly has one solution strategyfor sparse systems: RSS=F, DFS=L, OIS=3. You will also need to set the mat%format to 'S' to indicate sparse input. Only CSR format is supported. (I use the mkl_dcsrcoo function in MKL or the coocsr function in SPARSKIT2 to convert matrices from the UF collection.) Take a look at section 6.5 (page 33)of the user guide for an example code showing how to use SPIKE with sparse input. Note that SPIKE is a banded solver so it may be necessary to reorder ecology2 to get good performance.

PARDISOcan solve ecology2 in less than 10 seconds (MKL 10.1, 3.0 GHz Xeon X5472). I doubt that there's enough work in this problem to scale to 384 cores.

Best regards,
Henry

Thanks for your fast reply!
I want to use exactly SPIKE for solving, so could you say me more about getting the best performance on this matrix? May be I should convert it in banded format and use other solving strategy? I used spike_adapt.exe utility for this matrix and it computed, that the best strategy for this matrix on 4, 8, 16, 32 processors is ta3.

Hello again,
The spike_adapt.exe utility assumes that your input matrix is banded and dense within the band. Since the matrix is sparse, I recommend that you reorder (e.g., using METIS) anduse a narrow-banded preconditioner as shown in the example code in Section 6.6 (page 35).

Best regards,
Henry

I havetwo more question about SPIKE: 1) what is the "eps_out"? is it misalignment mesuare (and what measure?)
and 2) what means "outer iterations"? is it BiCGStab iterations?

Can anyone help me?

Sorry for the delay. I don't know how I missed your last posts. You are correct that "outer iterations" refers to BiCGStab iterations; eps_out is the threshold for the BiCGStab residual. In other words, BiCGStab stops when this residual is reached [or the maximum number of outer iterations (nbit_out) is reached].

Best regards,
Henry

Quoting - Henry Gabb (Intel)
Sorry for the delay. I don't know how I missed your last posts. You are correct that "outer iterations" refers to BiCGStab iterations; eps_out is the threshold for the BiCGStab residual. In other words, BiCGStab stops when this residual is reached [or the maximum number of outer iterations (nbit_out) is reached].

Best regards,
Henry

thanks as well henry, cheers

Could you tell me more about what do you mean by the word "residual"? Is it a norm of residual vector (Axk-f), where xk is solution vector generated on k-th step?

Yes. That's correct.

Henry

Leave a Comment

Please sign in to add a comment. Not a member? Join today