[petsc-dev] Chebyshev hybrid option has no functional interface or man pages
Barry Smith
bsmith at mcs.anl.gov
Fri Mar 14 14:32:51 CDT 2014
Beats me. It is worth keeping only if the “slight performance advantage” is of practical use. Like while, for example, used in a multigrid smoother. If it just makes a bad algorithm you won’t use anyways slightly better than it is not work keeping
Barry
On Mar 14, 2014, at 2:20 PM, Hong Zhang <hzhang at mcs.anl.gov> wrote:
> Barry,
> Currently, we have following options for hybrid Chebyshev:
> -ksp_chebyshev_hybrid: <FALSE> Use hybrid Chebyshev ()
> -ksp_chebyshev_hybrid_chebysteps <20000>: Number of Chebyshev steps
> in hybrid Chebyshev ()
> -ksp_chebyshev_hybrid_eststeps <10>: Number of adaptive/est steps in
> hybrid Chebyshev ()
> -ksp_chebyshev_hybrid_purification: <TRUE> Use purification in
> hybrid Chebyshev ()
>
> In my experiments, when -ksp_chebyshev_hybrid=true,
> hybrid_purification=true (also use gmres steps to improve starting
> vector) has slight performance advantage.
>
> Small number of 'hybrid_chebysteps' gives gmres/cheby hybrid method
> which does not show any performance gain, thus I set the default as
> 20000 unless user wants to use it.
>
> Want to remove it or keep it?
> Hong
>
> On Fri, Mar 14, 2014 at 1:13 PM, Smith, Barry F. <bsmith at mcs.anl.gov> wrote:
>>
>> I'd remove it.
>>
>> Thanks
>>
>> Barry
>>
>> On Mar 13, 2014, at 9:49 PM, Hong Zhang <hzhang at mcs.anl.gov> wrote:
>>
>>> Barry,
>>> I sent this email out, but apparently it failed to reach you.
>>>
>>> On Tue, Mar 11, 2014 at 10:46 PM, Hong Zhang <hzhang at mcs.anl.gov> wrote:
>>>> Barry,
>>>> The hybrid Chebyshev was implemented for experimentation, but had not
>>>> been found useful, so the default is set as FALSE.
>>>> I can add a functional interface though.
>>>
>>> As you and Jed do not believed in this method, and my experiments had
>>> not shown any useful of it.
>>> Shall we keep it or remove it?
>>>
>>> Hong
>>>
>>>>
>>>> On Tue, Mar 11, 2014 at 9:15 PM, Smith, Barry F. <bsmith at mcs.anl.gov> wrote:
>>>>>
>>>>> There should be a functional interface for turning this on and off with a manual page.
>>>>>
>>>>> Barry
>>>>>
>>>>> /*
>>>>> Use hybrid Chebyshev.
>>>>> Ref: "A hybrid Chebyshev Krylov-subspace algorithm for solving nonsymmetric systems of linear equations",
>>>>> Howard Elman and Y. Saad and P. E. Saylor, SIAM Journal on Scientific and Statistical Computing, 1986.
>>>>> */
>>>>> ierr = PetscOptionsBool("-ksp_chebyshev_hybrid","Use hybrid Chebyshev","",cheb->hybrid,&cheb->hybrid,NULL);CHKERRQ(ierr);
>>>>> ierr = PetscOptionsInt("-ksp_chebyshev_hybrid_chebysteps","Number of Chebyshev steps in hybrid Chebyshev","",cheb->chebysteps,&cheb->chebysteps,NULL);CHKERRQ(ierr);
>>>>> ierr = PetscOptionsInt("-ksp_chebyshev_hybrid_eststeps","Number of adaptive/est steps in hybrid Chebyshev","",cheb->eststeps,&cheb->eststeps,NULL);CHKERRQ(ierr);
>>>>> ierr = PetscOptionsBool("-ksp_chebyshev_hybrid_purification","Use purification in hybrid Chebyshev","",cheb->purification,&cheb->purification,NULL);CHKERRQ(ierr);
>>>>>
>>>>>
>>>>>
>>
More information about the petsc-dev
mailing list