On Sun, 21 Oct 2018, Smith, Barry F. wrote: > > > > On Oct 21, 2018, at 12:57 PM, Balay, Satish <[email protected]> wrote: > > > > Spack model is not to trust any system stuff - they are likely > > incomaptible [esp when there are multiple compiler configs]. > > I'd trust system blas over OpenBLAS.
sure - with the specific knowledge you have - - regarding Mac, and petsc - this is obvious. But for spack - a general- purpose tool - its not. [and in some install situations - its unlikely to work - as mentioned below] > > > > > So one would have to explicitly list them in ~/.spack/package.py - if one > > wants it. > > It's the editing the damn file that is annoying. They should have some > simple spack command to run that sets up the file for you. > > > > > But I haven't figured out how to specify vecLib on Mac to spack.. > > This is how I did it (still seems to work) > > all: > providers: > # prefer OpenMPI over MPICH by default > mpi: [mpich, openmpi] > # Use Apple BLAS/LAPACK accelerator library instead of installing > one > blas: [veclibfort] > lapack: [veclibfort] Ah - ok 'veclibfort' is what I have to remember.. Satish > > > > [one of the packages in xsdk need cblas interfaces - so I end up using > > openblas for most of my installs] > > > > Satish > > > > On Sun, 21 Oct 2018, Smith, Barry F. wrote: > > > >> > >> Still prefers OpenBLAS over system BLAS. > >> > >> > >> > >>> On Oct 21, 2018, at 12:31 PM, Barry Smith <[email protected]> wrote: > >>> > >>> > >>> How does one set the compiler for Spack to use. I read all of > >>> https://spack.readthedocs.io/en/latest/getting_started.html and it showed > >>> how to find compilers and add them to the spack compiler list but nothing > >>> about how to tell spack to use a particular compiler? > >>> > >>> > >>> > >>>> On Oct 21, 2018, at 11:51 AM, Smith, Barry F. <[email protected]> wrote: > >>>> > >>>> > >>>> Needs some more work > >>>> > >>>> > >>>> ./bin/spack install petsc+hypre > >>>> ==> [email protected] : externally installed in /usr/local > >>>> ==> [email protected] : generating module file > >>>> ==> [email protected] : registering into DB > >>>> ==> [email protected] : externally installed in /usr > >>>> ==> [email protected] : generating module file > >>>> ==> [email protected] : registering into DB > >>>> ==> Installing hdf5 > >>>> ==> Fetching > >>>> https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-1.10.3/src/hdf5-1.10.3.tar.gz > >>>> ######################################################################## > >>>> 100.0% > >>>> ==> Staging archive: > >>>> /Users/barrysmith/Src/spack/var/spack/stage/hdf5-1.10.3-qe62ngz3szijov3frsc6sclbfylst3qk/hdf5-1.10.3.tar.gz > >>>> ==> Created stage in > >>>> /Users/barrysmith/Src/spack/var/spack/stage/hdf5-1.10.3-qe62ngz3szijov3frsc6sclbfylst3qk > >>>> ==> No patches needed for hdf5 > >>>> ==> Building hdf5 [AutotoolsPackage] > >>>> ==> Executing phase: 'autoreconf' > >>>> ==> Executing phase: 'configure' > >>>> ==> Executing phase: 'build' > >>>> ==> Executing phase: 'install' > >>>> ==> Successfully installed hdf5 > >>>> Fetch: 4.37s. Build: 2m 5.47s. Total: 2m 9.84s. > >>>> [+] > >>>> /Users/barrysmith/Src/spack/opt/spack/darwin-mojave-x86_64/clang-10.0.0-apple/hdf5-1.10.3-qe62ngz3szijov3frsc6sclbfylst3qk > >>>> ==> Installing veclibfort > >>>> ==> Fetching https://github.com/mcg1969/vecLibFort/archive/0.4.2.tar.gz > >>>> ######################################################################## > >>>> 100.0% > >>>> ==> Staging archive: > >>>> /Users/barrysmith/Src/spack/var/spack/stage/veclibfort-0.4.2-jgzyxocuu54r2lqckfugttbk3gpvhthk/0.4.2.tar.gz > >>>> ==> Created stage in > >>>> /Users/barrysmith/Src/spack/var/spack/stage/veclibfort-0.4.2-jgzyxocuu54r2lqckfugttbk3gpvhthk > >>>> ==> No patches needed for veclibfort > >>>> ==> Building veclibfort [Package] > >>>> ==> Executing phase: 'install' > >>>> ==> Successfully installed veclibfort > >>>> Fetch: 1.02s. Build: 1.73s. Total: 2.75s. > >>>> [+] > >>>> /Users/barrysmith/Src/spack/opt/spack/darwin-mojave-x86_64/clang-10.0.0-apple/veclibfort-0.4.2-jgzyxocuu54r2lqckfugttbk3gpvhthk > >>>> ==> Installing hypre > >>>> ==> Fetching https://github.com/LLNL/hypre/archive/v2.15.0.tar.gz > >>>> ######################################################################## > >>>> 100.0% > >>>> ==> Staging archive: > >>>> /Users/barrysmith/Src/spack/var/spack/stage/hypre-2.15.0-zzqagb6smd7uzznitrlvx3eor4oay3dg/v2.15.0.tar.gz > >>>> ==> Created stage in > >>>> /Users/barrysmith/Src/spack/var/spack/stage/hypre-2.15.0-zzqagb6smd7uzznitrlvx3eor4oay3dg > >>>> ==> No patches needed for hypre > >>>> ==> Building hypre [Package] > >>>> ==> Executing phase: 'install' > >>>> ==> Successfully installed hypre > >>>> Fetch: 1.68s. Build: 45.02s. Total: 46.70s. > >>>> [+] > >>>> /Users/barrysmith/Src/spack/opt/spack/darwin-mojave-x86_64/clang-10.0.0-apple/hypre-2.15.0-zzqagb6smd7uzznitrlvx3eor4oay3dg > >>>> ==> [email protected] : externally installed in /usr/local/bin > >>>> ==> [email protected] : generating module file > >>>> ==> [email protected] : registering into DB > >>>> ==> Installing metis > >>>> ==> Fetching > >>>> http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/metis-5.1.0.tar.gz > >>>> ######################################################################## > >>>> 100.0% > >>>> ==> Staging archive: > >>>> /Users/barrysmith/Src/spack/var/spack/stage/metis-5.1.0-x7k25qyuivjq4t4jb32gxagfa3qc4b3y/metis-5.1.0.tar.gz > >>>> ==> Created stage in > >>>> /Users/barrysmith/Src/spack/var/spack/stage/metis-5.1.0-x7k25qyuivjq4t4jb32gxagfa3qc4b3y > >>>> ==> Applied patch install_gklib_defs_rename.patch > >>>> ==> Ran patch() for metis > >>>> ==> Building metis [Package] > >>>> ==> Executing phase: 'install' > >>>> ==> Successfully installed metis > >>>> Fetch: 3.86s. Build: 8.33s. Total: 12.19s. > >>>> [+] > >>>> /Users/barrysmith/Src/spack/opt/spack/darwin-mojave-x86_64/clang-10.0.0-apple/metis-5.1.0-x7k25qyuivjq4t4jb32gxagfa3qc4b3y > >>>> ==> Installing parmetis > >>>> ==> Fetching > >>>> http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/parmetis-4.0.3.tar.gz > >>>> ######################################################################## > >>>> 100.0% > >>>> ==> Staging archive: > >>>> /Users/barrysmith/Src/spack/var/spack/stage/parmetis-4.0.3-st6cbngrj2r5jgtenru4f6jbtrbvhp3h/parmetis-4.0.3.tar.gz > >>>> ==> Created stage in > >>>> /Users/barrysmith/Src/spack/var/spack/stage/parmetis-4.0.3-st6cbngrj2r5jgtenru4f6jbtrbvhp3h > >>>> ==> Applied patch enable_external_metis.patch > >>>> ==> Applied patch > >>>> pkg-parmetis-1c1a9fd0f408dc4d42c57f5c3ee6ace411eb222b.patch > >>>> ==> Applied patch > >>>> pkg-parmetis-82409d68aa1d6cbc70740d0f35024aae17f7d5cb.patch > >>>> ==> Building parmetis [CMakePackage] > >>>> ==> Executing phase: 'cmake' > >>>> ==> Executing phase: 'build' > >>>> ==> Executing phase: 'install' > >>>> ==> Successfully installed parmetis > >>>> Fetch: 3.71s. Build: 8.08s. Total: 11.79s. > >>>> [+] > >>>> /Users/barrysmith/Src/spack/opt/spack/darwin-mojave-x86_64/clang-10.0.0-apple/parmetis-4.0.3-st6cbngrj2r5jgtenru4f6jbtrbvhp3h > >>>> ==> [email protected] : externally installed in /usr > >>>> ==> [email protected] : generating module file > >>>> ==> [email protected] : registering into DB > >>>> ==> Installing superlu-dist > >>>> ==> Fetching > >>>> https://github.com/xiaoyeli/superlu_dist/archive/v5.4.0.tar.gz > >>>> ######################################################################## > >>>> 100.0% > >>>> ==> Staging archive: > >>>> /Users/barrysmith/Src/spack/var/spack/stage/superlu-dist-5.4.0-zfeg63fl3jxidb2irxucgz7nvmintbzn/v5.4.0.tar.gz > >>>> ==> Created stage in > >>>> /Users/barrysmith/Src/spack/var/spack/stage/superlu-dist-5.4.0-zfeg63fl3jxidb2irxucgz7nvmintbzn > >>>> ==> No patches needed for superlu-dist > >>>> ==> Building superlu-dist [CMakePackage] > >>>> ==> Executing phase: 'cmake' > >>>> ==> Executing phase: 'build' > >>>> ==> Executing phase: 'install' > >>>> ==> Successfully installed superlu-dist > >>>> Fetch: 2.03s. Build: 22.54s. Total: 24.57s. > >>>> [+] > >>>> /Users/barrysmith/Src/spack/opt/spack/darwin-mojave-x86_64/clang-10.0.0-apple/superlu-dist-5.4.0-zfeg63fl3jxidb2irxucgz7nvmintbzn > >>>> ==> Installing petsc > >>>> ==> Fetching > >>>> http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-3.10.2.tar.gz > >>>> ######################################################################## > >>>> 100.0% > >>>> ==> Staging archive: > >>>> /Users/barrysmith/Src/spack/var/spack/stage/petsc-3.10.2-7fmmtqrr42secdvbosssdjc5lxnohh6b/petsc-3.10.2.tar.gz > >>>> ==> Created stage in > >>>> /Users/barrysmith/Src/spack/var/spack/stage/petsc-3.10.2-7fmmtqrr42secdvbosssdjc5lxnohh6b > >>>> ==> No patches needed for petsc > >>>> ==> Building petsc [Package] > >>>> ==> Executing phase: 'install' > >>>> ==> Error: ProcessError: Command exited with status 2: > >>>> 'make' 'MAKE_NP=8' > >>>> > >>>> 1 error found in build log: > >>>> 52 > >>>> 53 ==> 'make' 'MAKE_NP=8' > >>>> 54 makefile:15: lib/petsc/conf/petscvariables: No such file or > >>>> directory > >>>> 55 makefile:16: /lib/petsc/conf/variables: No such file or directory > >>>> 56 makefile:17: /lib/petsc/conf/rules: No such file or directory > >>>> 57 makefile:18: /lib/petsc/conf/test.common: No such file or > >>>> directory > >>>>>> 58 make: *** No rule to make target `/lib/petsc/conf/test.common'. > >>>>>> Stop. > >>>> > >>>> See build log for details: > >>>> /Users/barrysmith/Src/spack/var/spack/stage/petsc-3.10.2-7fmmtqrr42secdvbosssdjc5lxnohh6b/petsc-3.10.2/spack-build.out > >>>> > >>>> Then in the build log > >>>> > >>>> File > >>>> "/private/var/folders/c1/ldz_dt8n2r3dtwv_chp5pfr40000gn/T/barrysmith/spack-stage/spack-stage-hFL0xI/petsc-3.10.2/config/BuildSystem/nargs.py", > >>>> line 360, in setValue > >>>> raise ValueError('Invalid directory: '+str(dir)+' for key > >>>> '+str(self.key)) > >>>> =============================================================================== > >>>> Configuring PETSc to compile on your system > >>>> > >>>> =============================================================================== > >>>> ******************************************************************************* > >>>> ERROR in COMMAND LINE ARGUMENT to ./configure > >>>> ------------------------------------------------------------------------------- > >>>> Invalid directory: /usr/include for key with-zlib-include > >>>> ******************************************************************************* > >>>> > >>>> > >>>> Apple OS doesn't come with a /usr/include > >>>> > >>>> > >>>>> On Oct 20, 2018, at 10:47 PM, Jed Brown <[email protected]> wrote: > >>>>> > >>>>> We're currently maintaining a (somewhat clumsy and limited, albeit > >>>>> functional) package manager in the form of the --download functionality. > >>>>> What do people think of outsourcing this to Spack, which would handle > >>>>> dependency resolution and report includes/libraries to PETSc? That > >>>>> would enable reuse of installed packages between different PETSC_ARCH > >>>>> and be more reliable regarding upgrade/downgrade when switching > >>>>> branches. > >>>> > >>> > >> > > >
