[petsc-dev] AVX kernels, old gcc, still broken
Smith, Barry F.
bsmith at mcs.anl.gov
Sat Oct 26 09:29:42 CDT 2019
> On Oct 26, 2019, at 9:09 AM, Jed Brown <jed at jedbrown.org> wrote:
>
> "Smith, Barry F." <bsmith at mcs.anl.gov> writes:
>
>> The proposed fix is #if defined(PETSC_USE_AVX512_KERNELS) && && && && && in https://gitlab.com/petsc/petsc/merge_requests/2213/diffs
>
> Looks fine; approved.
>
>> but note that PETSC_USE_AVX512_KERNELS does not even do a configure check to make sure it is valid. The user has to guess that passing that flag will work. Of course a proper configure test is needed and since a proper test is needed it can handle all the issues in one place instead of having one issue in configure and n - 1 in the source code.
>
> What are "all the issues"? 32-bit indices, precision=double,
> scalar=real? So we'll need 8 CPP macros that test each of those
> combinations?
No, if suddenly there is support for single precision for example, the developer would modify the configure test to turn on PETSC_USE_AVX512_KERNELS for that additional case and not touch the source code at all;
>
>> This is a basic implementation disagreement, I hate CPP and think it should be used minimally, you hate configure and think it should be used minimally.
More information about the petsc-dev
mailing list