[petsc-dev] AVX kernels, old gcc, still broken

Lisandro Dalcin dalcinl at gmail.com
Thu Oct 24 13:47:24 CDT 2019


This is with master, but I bet the issue is also in maint.

* Running on Ubuntu 16

$ uname -a
Linux flamingo 4.4.0-104-generic #127-Ubuntu SMP Mon Dec 11 12:16:42 UTC
2017 x86_64 x86_64 x86_64 GNU/Linux

* With system gcc 5.4

$ mpicc -show
/usr/bin/gcc-5
-I/sw/workstations/apps/linux-ubuntu16.04-x86_64/mpich/3.3.1/gcc-5.4.0/nvejoe25snmak6a7fnjghabxjukjkuiu/include
-L/sw/workstations/apps/linux-ubuntu16.04-x86_64/mpich/3.3.1/gcc-5.4.0/nvejoe25snmak6a7fnjghabxjukjkuiu/lib
-Wl,-rpath
-Wl,/sw/workstations/apps/linux-ubuntu16.04-x86_64/mpich/3.3.1/gcc-5.4.0/nvejoe25snmak6a7fnjghabxjukjkuiu/lib
-lmpi

$ mpicc --version
gcc-5 (Ubuntu 5.4.0-6ubuntu1~16.04.11) 5.4.0 20160609
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

* PETSc configured to NOT USE AVX512 kernels

$ grep avx arch-gnu-opt/lib/petsc/conf/reconfigure-arch-gnu-opt.py
    '--with-avx512-kernels=0',

* Bang!

$ touch src/mat/impls/aij/seq/aijperm/aijperm.c
$ make -f gmakefile
Use "/usr/bin/make V=1" to see verbose compile lines, "/usr/bin/make V=0"
to suppress.
          CC arch-gnu-opt/obj/mat/impls/aij/seq/aijperm/aijperm.o
/home/dalcin/Devel/petsc/src/mat/impls/aij/seq/aijperm/aijperm.c: In
function ‘MatMult_SeqAIJPERM’:
/home/dalcin/Devel/petsc/src/mat/impls/aij/seq/aijperm/aijperm.c:426:22:
warning: implicit declaration of function ‘_mm512_reduce_add_pd’
[-Wimplicit-function-declaration]
             yp[i] += _mm512_reduce_add_pd(vec_y);


-- 
Lisandro Dalcin
============
Research Scientist
Extreme Computing Research Center (ECRC)
King Abdullah University of Science and Technology (KAUST)
http://ecrc.kaust.edu.sa/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20191024/80985164/attachment.html>


More information about the petsc-dev mailing list