Ops - for some reason I assumed this build is on Mac M1. [likely due to the usage of '-m64' - that was strange]..
But yeah - our general usage on Mac is with xcode/clang and brew gfortran (on both Intel and ARM CPUs) - and unless you need Intel compilers for specific needs - clang/gfortran should work better for this development work. Satish On Mon, 15 May 2023, Vanella, Marcos (Fed) via petsc-users wrote: > Hi Satish, well turns out this is not an M1 Mac, it is an older Intel Mac > (2019). > I'm trying to get a local computer to do development and tests, but I also > have access to linux clusters with GPU which we plan to go to next. > Thanks for the suggestion, I might also try compiling a gcc/gfortran version > of the lib on this computer. > Marcos > ________________________________ > From: Satish Balay <ba...@mcs.anl.gov> > Sent: Monday, May 15, 2023 12:10 PM > To: Vanella, Marcos (Fed) <marcos.vane...@nist.gov> > Cc: petsc-users@mcs.anl.gov <petsc-users@mcs.anl.gov> > Subject: Re: [petsc-users] Compiling PETSC with Intel OneAPI compilers and > OpenMPI > > I see Intel compilers here are building x86_64 binaries - that get run on the > Arm M1 CPU - perhaps there are issues here with this mode of usage.. > > > I'm starting to work with PETSc. Our plan is to use the linear solver from > > PETSc for the Poisson equation on our numerical scheme and test this on a > > GPU cluster. > > What does intel compilers provide you for this use case? > > Why not use xcode/clang with gfortran here - i.e native ARM binaries? > > > Satish > > On Mon, 15 May 2023, Vanella, Marcos (Fed) via petsc-users wrote: > > > Hello, I'm trying to compile the PETSc library version 3.19.1 with OpenMPI > > 4.1.4 and the OneAPI 2022 Update 2 Intel Compiler suite on a Mac with OSX > > Ventura 13.3.1. > > I can compile PETSc in debug mode with this configure and make lines. I can > > run the PETSC tests, which seem fine. > > When I compile the library in optimized mode, either using -O3 or O1, for > > example configuring with: > > > > $ ./configure --prefix=/opt/petsc-oneapi22u3 > > --with-blaslapack-dir=/opt/intel/oneapi/mkl/2022.2.1 COPTFLAGS='-m64 -O1 -g > > -diag-disable=10441' CXXOPTFLAGS='-m64 -O1 -g -diag-disable=10441' > > FOPTFLAGS='-m64 -O1 -g' LDFLAGS='-m64' --with-debugging=0 > > --with-shared-libraries=0 --download-make > > > > and using mpicc (icc), mpif90 (ifort) from Open MPI, the static lib > > compiles. Yet, I see right off the bat this segfault error in the first > > PETSc example: > > > > $ make PETSC_DIR=/Users/mnv/Documents/Software/petsc-3.19.1 > > PETSC_ARCH=arch-darwin-c-opt test > > /Users/mnv/Documents/Software/petsc-3.19.1/arch-darwin-c-opt/bin/make > > --no-print-directory -f > > /Users/mnv/Documents/Software/petsc-3.19.1/gmakefile.test > > PETSC_ARCH=arch-darwin-c-opt > > PETSC_DIR=/Users/mnv/Documents/Software/petsc-3.19.1 test > > /opt/intel/oneapi/intelpython/latest/bin/python3 > > /Users/mnv/Documents/Software/petsc-3.19.1/config/gmakegentest.py > > --petsc-dir=/Users/mnv/Documents/Software/petsc-3.19.1 > > --petsc-arch=arch-darwin-c-opt --testdir=./arch-darwin-c-opt/tests > > Using MAKEFLAGS: --no-print-directory -- PETSC_ARCH=arch-darwin-c-opt > > PETSC_DIR=/Users/mnv/Documents/Software/petsc-3.19.1 > > CC arch-darwin-c-opt/tests/sys/classes/draw/tests/ex1.o > > In file included from > > /Users/mnv/Documents/Software/petsc-3.19.1/include/petscsys.h(44), > > from > > /Users/mnv/Documents/Software/petsc-3.19.1/src/sys/classes/draw/tests/ex1.c(4): > > /Users/mnv/Documents/Software/petsc-3.19.1/include/petscsystypes.h(68): > > warning #2621: attribute "warn_unused_result" does not apply here > > PETSC_ERROR_CODE_TYPEDEF enum PETSC_ERROR_CODE_NODISCARD { > > ^ > > > > CLINKER arch-darwin-c-opt/tests/sys/classes/draw/tests/ex1 > > TEST > > arch-darwin-c-opt/tests/counts/sys_classes_draw_tests-ex1_1.counts > > not ok sys_classes_draw_tests-ex1_1 # Error code: 139 > > # [excess:98681] *** Process received signal *** > > # [excess:98681] Signal: Segmentation fault: 11 (11) > > # [excess:98681] Signal code: Address not mapped (1) > > # [excess:98681] Failing at address: 0x7f > > # [excess:98681] *** End of error message *** > > # > > -------------------------------------------------------------------------- > > # Primary job terminated normally, but 1 process returned > > # a non-zero exit code. Per user-direction, the job has been aborted. > > # > > -------------------------------------------------------------------------- > > # > > -------------------------------------------------------------------------- > > # mpiexec noticed that process rank 0 with PID 0 on node excess exited > > on signal 11 (Segmentation fault: 11). > > # > > -------------------------------------------------------------------------- > > ok sys_classes_draw_tests-ex1_1 # SKIP Command failed so no diff > > > > I see the same segfault error in all PETSc examples. > > Any help is mostly appreciated, I'm starting to work with PETSc. Our plan > > is to use the linear solver from PETSc for the Poisson equation on our > > numerical scheme and test this on a GPU cluster. So also, any guideline on > > how to interface PETSc with a fortran code and personal experience is also > > most appreciated! > > > > Marcos > > > > > > > > >