[petsc-users] default orthogonalization in gmres

Karl Rupp rupp at mcs.anl.gov
Mon Jul 15 16:04:54 CDT 2013


Hi Umut,

one of the reasons is the parallelism: When doing Householder 
reflections, you can only process one reflection at a time without any 
good data reuse. However, for Gram-Schmidt you can just compute all the 
necessary scalar products at the same time (VecMDot) and reuse the 
common data vector. This gives you a speed-up of a factor of almost two.

Best regards,
Karli



On 07/15/2013 03:42 PM, Umut Tabak wrote:
> On 07/15/2013 08:54 PM, Matthew Knepley wrote:
>>
>>
>> On Jul 15, 2013 1:51 PM, "Umut Tabak" <u.tabak at tudelft.nl
>> <mailto:u.tabak at tudelft.nl>> wrote:
>> >
>> > Hi list,
>> >
>> > I was wondering the reason why classical gram schmidt is used in the
>> orthogonalizations in the gmres implementation as default? As far as I
>> remember, this was unstable numerically.
>>
> Hi Matt,
>
> Excuse my naive question but mathematically they are equivalent so what
> is the source of speed boost? And can you please direct me to one or two
> of these references?
>
> Best,
> Umut
>>
>> Its much faster. Try the modified option and compare. There are many
>> papers claiming that classical+selective reorthogonalization is just
>> as stable.
>>
>>    Matt
>> >
>> > Best,
>> > Umut
>>
>



More information about the petsc-users mailing list