[petsc-dev] error configuring on KNL
Satish Balay
balay at mcs.anl.gov
Fri Jun 30 17:27:16 CDT 2017
On Fri, 30 Jun 2017, Richard Tran Mills wrote:
> Hmm. I get the same error when adding "--download-hypre=0" to an otherwise
> functional configure script for Cori KNL. Hypre's configure doesn't like
> something about cross-compiling for KNL. It might be possible to make this
> work by building on the compute nodes, though this is, unfortunately, not
> officially supported on Cori -- NERSC staff say that builds are not
> guaranteed to work on the compute nodes, though I've managed to make it
> work sometimes.
Here is (a part of a prior email) regarding installing hypre on theta (using compute nodes).
Satish
--------------------------------
The alternative is to run configure on the KNL nodes. But this is very
slow. We could split up the build into 2 parts - only build some
packages on KNL node and the rest on front-end.
Ok - I tried "--download-hypre=1 --prefix=/home/balay/soft/hypre-xsdk-0.2.0-rc2" on the KNL node.
[this way - I can --with-hypre-dir=/home/balay/soft/hypre-xsdk-0.2.0-rc2 for subsequent builds]
This crashed halfway with 'Intel License Server' errors. The crash
happened after hypre configure completed - so I could complete the
build on the frontend.
Anyhow - here is the process"
caveat: PETSC_ARCH/externalpackages should be populated before doing
this - as compute nodes don't have external network access.
1. schedule configure run in the batch queue:
balay at thetalogin5:~/petsc.test> cat reconfigure-arch-theta-opt-cray.py
#!/usr/bin/python
if __name__ == '__main__':
import sys
import os
sys.path.insert(0, os.path.abspath('config'))
import configure
configure_options = [
'--download-hypre=1',
'--prefix=/home/balay/soft/hypre-xsdk-0.2.0-rc2',
'--with-cc=cc',
'--with-clib-autodetect=0',
'--with-cxx=CC',
'--with-cxxlib-autodetect=0',
'--with-debugging=0',
'--with-fc=ftn',
'--with-fortranlib-autodetect=0',
'--with-mpiexec=mpirun',
'--with-memalign=64',
'COPTFLAGS=-g -O3 -fp-model fast -xMIC-AVX512',
'CXXOPTFLAGS=-g -O3 -fp-model fast -xMIC-AVX512',
'FOPTFLAGS=-g -O3 -fp-model fast -xMIC-AVX512',
'LIBS=-lstdc++',
'PETSC_ARCH=arch-theta-opt-cray',
]
configure.petsc_configure(configure_options)
balay at thetalogin5:~/petsc.test> cat x.sh
#!/bin/sh
aprun -n 1 python reconfigure-arch-theta-opt-cray.py
balay at thetalogin5:~/petsc.test> qsub -t 45 -n 1 -A EarlyPerf_theta x.sh
<<<<<<<<<<<<<<<<<<
2. wait for job to complete - [or atleast hypre configure to complete].
3. if incomplete - complete the build on frontend - and install hypre libraries.
4. subsequently install PETSc using --with-hypre-dir=/home/balay/soft/hypre-xsdk-0.2.0-rc2
[on the frontend]
Satish
More information about the petsc-dev
mailing list