Re: (no subject)
Florin Dobrian <[email protected]> Tue, 12 Sep 2006 11:34:58 -0400 (EDT)
| Newsgroups | gmane.comp.mathematics.csc |
|---|---|
| Message-ID | <[email protected]> |
iain, i kept asking myself the same questions but somehow i got used to the term static pivoting. the word static clearly describes the use of a pivot without any row/column swaps. the only problem is that sometimes there could be row/column swaps hidden behind this word. for example you don't want to change the data structure for a supernode but you may still allow some dynamic pivoting, combining it with static pivoting. that is, you may allow some swaps when you start processing the supernode but then switch to static pivoting when you no longer have a choice. or any other kind of combination. so in this case it would probably not be correct to call the entire procedure static pivoting but rather a combination of static/dynamic pivoting with no data structure changes. i think the word static should describe only what happens to a particular pivot and if you use it for the whole factorization it would necessarily mean that any pivot was statically processed (no swaps at all). another small problem comes from the distinction between static and dynamic. usually you would say pivoting and if you use the term dynamic pivoting without any mention of static pivoting then the discussion becomes a bit confusing. so if i would have to explain this i would first describe pivoting in general, which could determine row/column swaps, then i would say that because of certain constraints it is useful to call such pivoting dynamic. only after that i would introduce the concept of static pivoting. so the confusion comes from the "equivalence" between the term pivoting and dynamic pivoting. the latter would be more appropriate if static pivoting is involved as well. one other small confusion also comes from any preprocessing performed for pivoting reasons. such as the processing performed by mc64. sometimes one may think that that is part of static pivoting but it is not and it is not only static pivoting that benefits from it. dynamic pivoting can benefit as well (fewer swaps, fewer delays). so overall i think the terms static and dynamic pivoting are ok because they really describe what is going on, but they should be used explicitly in order to avoid any confusion. in addition, one should be careful not to associate any form of preprocessing with static pivoting. florin On Mon, 11 Sep 2006 [email protected] wrote: > Dear Colleagues, > > Here are some questions posed by Iain Duff ([email protected]) to stimulate > some discussion in the CSC list serve. Please prove that you are back from > your vacations and getting back to fun and CSC by your contribution :-) > --Alex > > > Several direct codes, notably SuperLU, PARDISO, and MA57 in different ways > restrict the pivoting during numerical factorization so that the > structures determined during the analysis can be respected. This clearly > has important implications for limiting storage and for parallelism. > Normally if it is necessary to use a pivot that does not satisfy the > numerical criterion it is replaced by some suitable value (conventionally > ||A||*sqrt(epsilon)) and the factorization proceeds. This will of course > result in the factorization of a perturbed matrix but hopefully > perturbations are small and so the solution is obtained by a simple > iterative method. > > My question to the group is what term should we use to describe this kind > of strategy. We [1] have used the term "static pivoting" and believe that > this was first used in [2]. Is this indeed the first reference to this > term and when was the term first used in a journal paper? Is it an > appropriate term to use or is there a more appropriate term? The debate > is open. > > [1] > @techreport{dupr:05a, > author = {Iain S. Duff and St\'ephane Pralet}, > title = {Towards a stable static pivoting strategy for the sequential > and > parallel solution of sparse symmetric indefinite systems}, > institution = RAL, > number = {RAL-TR-2005-007}, > notes = {Also appeared as report TR/PA/05/26, CERFACS, Toulouse > and report RT/TLSE/05/08, IRIT, ENSEEIHT, Toulouse}, > year = {2005} } > > [2] > @inproceedings{lide:98, > AUTHOR = {Xiaoye S. Li and James W. Demmel}, > TITLE = {Making Sparse {G}aussian Elimination Scalable by Static > Pivoting}, > BOOKTITLE = {Proceedings of Supercomputing}, > ADDRESS = {Orlando, Florida}, > YEAR = {1998}, > MONTH = {November} > } > ------------------------------------------------------------------------------------------- > >