xref: /petsc/config/examples/arch-alcfci-theta-intel-opt.py (revision 6ee04767cadfff0612518b5db6e53c426a4c5190)
1df3bd252SSatish Balay#!/usr/bin/env python3
2f6d407adSSatish Balay
3f6d407adSSatish Balayimport os
4f6d407adSSatish Balaypetsc_hash_pkgs=os.path.join(os.getenv('HOME'),'petsc-hash-pkgs')
5f6d407adSSatish Balay
6f6d407adSSatish Balayconfigure_options = [
7f6d407adSSatish Balay  #'--package-prefix-hash='+petsc_hash_pkgs,
8f6d407adSSatish Balay  '--with-make-np=8',
9f6d407adSSatish Balay  '--with-cc=cc',
10f6d407adSSatish Balay  '--with-cxx=CC',
11f6d407adSSatish Balay  '--with-fc=ftn',
12f6d407adSSatish Balay  '--with-debugging=0',
13f6d407adSSatish Balay  '--COPTFLAGS=-g -xMIC-AVX512 -O3',
14f6d407adSSatish Balay  '--CXXOPTFLAGS=-g -xMIC-AVX512 -O3',
15f6d407adSSatish Balay  '--FOPTFLAGS=-g -xMIC-AVX512 -O3',
16f6d407adSSatish Balay  '--LDFLAGS=-dynamic',
17f6d407adSSatish Balay  '--LIBS=-lstdc++',
18c02f7dd9SSatish Balay  '--with-blaslapack-lib=-mkl -L'+os.path.join(os.environ['MKLROOT'],'lib','intel64'),
19f6d407adSSatish Balay  '--with-mkl_sparse=0',
20f6d407adSSatish Balay  '--with-mkl_sparse_optimize=0',
21f6d407adSSatish Balay  '--download-chaco=1',
22f6d407adSSatish Balay  '--download-exodusii=1',
23*caff39ffSPierre Jolivet  '--download-exodusii-cmake-arguments=-DCMAKE_C_FLAGS:STRING="-DADDC_ -fPIC -g -xMIC-AVX512 -O3"', # workaround ExodusII CMake failure 'cannot automatically determine Fortran mangling'
24eba371beSPierre Jolivet  '--with-exodusii-fortran-bindings=1',
25f6d407adSSatish Balay  '--download-metis=1',
26f6d407adSSatish Balay  '--download-parmetis=1',
27f6d407adSSatish Balay  '--with-hdf5=1',
28c02f7dd9SSatish Balay  '--with-netcdf-dir='+os.environ['CRAY_NETCDF_HDF5PARALLEL_PREFIX'],
29c02f7dd9SSatish Balay  '--with-pnetcdf-dir='+os.environ['CRAY_PARALLEL_NETCDF_PREFIX'],
30f6d407adSSatish Balay  '--with-zlib=1',
31f6d407adSSatish Balay  '--with-batch=1',
32f6d407adSSatish Balay  '--known-64-bit-blas-indices=0',
33f6d407adSSatish Balay]
34f6d407adSSatish Balay
35f6d407adSSatish Balayif __name__ == '__main__':
36f6d407adSSatish Balay  import sys,os
37f6d407adSSatish Balay  sys.path.insert(0,os.path.abspath('config'))
38f6d407adSSatish Balay  import configure
39f6d407adSSatish Balay  configure.petsc_configure(configure_options)
40