Lines Matching +full:linux +full:- +full:intel
8 See {ref}`quick-start tutorial <tut_install>` for a step-by-step walk-through of the installation p…
25 $ ./config/examples/arch-ci-osx-dbg.py
30 your recommendations to <mailto:petsc-maint@mcs.anl.gov>. See bug report {ref}`documentation
34 - If you do not have a Fortran compiler or [MPICH](https://www.mpich.org/) installed
38 $ ./configure --with-cc=gcc --with-cxx=0 --with-fc=0 --download-f2cblaslapack --download-mpich
41 - Same as above - but install in a user specified (prefix) location.
44 …$ ./configure --prefix=/home/user/soft/petsc-install --with-cc=gcc --with-cxx=0 --with-fc=0 --down…
47 - If [BLAS/LAPACK], MPI sources (in "-devel" packages in most Linux distributions) are already
49 via `$PATH` - configure does not require any additional options.
55 - If [BLAS/LAPACK], MPI are already installed in known user location use:
58 $ ./configure --with-blaslapack-dir=/usr/local/blaslapack --with-mpi-dir=/usr/local/mpich
64 …/configure --with-blaslapack-dir=/usr/local/blaslapack --with-cc=/usr/local/mpich/bin/mpicc --with…
78 Do not specify `--with-cc`, `--with-fc` etc for the above when using
79 `--with-mpi-dir` - so that `mpicc`/ `mpif90` will be picked up from mpi-dir!
82 - Build Complex version of PETSc (using c++ compiler):
85 …$ ./configure --with-cc=gcc --with-fc=gfortran --with-cxx=g++ --with-clanguage=cxx --download-fbla…
88 - Install 2 variants of PETSc, one with gnu, the other with Intel compilers. Specify
93 …$ ./configure PETSC_ARCH=linux-gnu --with-cc=gcc --with-cxx=g++ --with-fc=gfortran --download-mpich
94 $ make PETSC_ARCH=linux-gnu all test
95 …$ ./configure PETSC_ARCH=linux-gnu-intel --with-cc=icc --with-cxx=icpc --with-fc=ifort --download-…
96 $ make PETSC_ARCH=linux-gnu-intel all test
104 If no compilers are specified - configure will automatically look for available MPI or
112 - Specify compilers using the options `--with-cc`/`--with-cxx`/`--with-fc` for c,
116 $ ./configure --with-cc=gcc --with-cxx=g++ --with-fc=gfortran
121 `--with-cc=mpicc` or `--with-mpi-dir` (and not `--with-cc=gcc`)
124 $ ./configure --with-cc=mpicc --with-cxx=mpicxx --with-fc=mpif90
127 or the following (but **without** `--with-cc=gcc`)
130 $ ./configure --with-mpi-dir=/opt/mpich2-1.1
137 - If a Fortran compiler is not available or not needed - disable using:
140 $ ./configure --with-fc=0
143 - If a c++ compiler is not available or not needed - disable using:
146 $ ./configure --with-cxx=0
150 mode with the `configure` option `--with-debugging=0` (we suggest using a different
151 `$PETSC_ARCH` for debug and optimized builds, for example arch-debug and arch-opt, this
161 …--with-cc=gcc --with-cxx=g++ --with-fc=gfortran --with-debugging=0 COPTFLAGS='-O3 -march=native -m…
169 $ ./configure --LIBS='-ldl /usr/lib/libm.a'
188 - The packages are installed with the same compilers and compiler options as PETSc
190 - A **compatible** version of the package is installed. A generic install of this
191 package might not be compatible with PETSc (perhaps due to version differences - or
193 - Some packages have bug fixes, portability patches, and upgrades for dependent
207 network, use the additional option `--with-packages-download-dir=/path/to/dir`. This
216 - `--download-PACKAGENAME`: Download specified package and install it, enabling PETSc to
220 $ ./configure --download-fblaslapack --download-mpich
223 - `--download-PACKAGENAME=/path/to/PACKAGENAME.tar.gz`: If `configure` cannot
231 $ ./configure --download-mpich=/home/petsc/mpich2-1.0.4p1.tar.gz
234 - `--with-PACKAGENAME-dir=/path/to/dir`: If the external package is already installed -
236 library files from this location). Normally this corresponds to the top-level
240 $ ./configure --with-mpi-dir=/home/petsc/software/mpich2-1.0.4p1
243 - `--with-PACKAGENAME-include=/path/to/include/dir` and
244 `--with-PACKAGENAME-lib=LIBRARYLIST`: Usually a package is defined completely by its
249 …$ ./configure --with-superlu-include=/home/petsc/software/superlu/include --with-superlu-lib=/home…
255 …$ ./configure --with-parmetis-include=/sandbox/balay/parmetis/include --with-parmetis-lib="-L/sand…
261 …$ ./configure --with-parmetis-include=/sandbox/balay/parmetis/include --with-parmetis-lib=[/sandbo…
265 - Run `./configure --help` to get the list of {ref}`external packages
267 `--with-mpiexec` for [MPICH]).
268 - Generally one would use either one of the above installation modes for any given
269 package - and not mix these. (i.e combining `--with-mpi-dir` and
270 `--with-mpi-include` etc. should be avoided).
271 - Some packages might not support certain options like `--download-PACKAGENAME` or
272 `--with-PACKAGENAME-dir`. Architectures like Microsoft Windows might have issues
273 with these options. In these cases, `--with-PACKAGENAME-include` and
274 `--with-PACKAGENAME-lib` options should be preferred.
277 - `--with-packages-build-dir=PATH`: By default, external packages will be unpacked and
294 - When fortran compiler is present:
297 $ ./configure --download-fblaslapack
300 - Or when configuring without a Fortran compiler - i.e `--with-fc=0`:
303 $ ./configure --download-f2cblaslapack
309 $ ./configure --with-blaslapack-lib=libsunperf.a
310 $ ./configure --with-blas-lib=libblas.a --with-lapack-lib=liblapack.a
311 $ ./configure --with-blaslapack-dir=/soft/com/packages/intel/13/079/mkl
314 ### Intel MKL
316 Intel provides [BLAS/LAPACK] via the [MKL] library. One can specify it
317 to PETSc `configure` with `--with-blaslapack-dir=$MKLROOT` or
318 `--with-blaslapack-dir=/soft/com/packages/intel/13/079/mkl`. If the above option does
319 not work - one could determine the correct library list for your compilers using Intel
321 `--with-blaslapack-lib`
327 case instead of using [ESSL] we suggest `--download-fblaslapack`. If you really want
328 to use [ESSL], see <https://www.pdc.kth.se/hpc-services>.
336 MPI might already be installed. IBM, Intel, NVIDIA, and Cray provide their own and Linux and macOS …
337 managers also provide open-source versions called MPICH and Open MPI. If MPI is not already install…
340 - For [MPICH]:
343 $ ./configure --download-mpich
345 …If `--with-cuda` or `--with-hip` is also specified, MPICH will automatically be built to be GPU-aw…
348 - For [Open MPI]:
351 $ ./configure --download-openmpi
353 …--with-cuda` is also specified, then Open MPI will automatically be built to be CUDA-aware. Howeve…
356 - To not use MPI:
359 $ ./configure --with-mpi=0
362 - To use an installed version of MPI
365 $ ./configure --with-cc=mpicc --with-cxx=mpicxx --with-fc=mpif90
368 - The Intel MPI library provides MPI compiler wrappers with compiler specific names.
373 $ ./configure --with-cc=mpigcc --with-cxx=mpigxx --with-fc=mpif90
376 "Old" Intel compilers: `icc`, `icpc`, and `ifort`:
379 $ ./configure --with-cc=mpiicc --with-cxx=mpiicpc --with-fc=mpiifort
382 they might not work with some Intel MPI library versions. In those cases, use
386 $ ./configure --with-cc=mpicc --with-cxx=mpicxx --with-fc=mpif90
389 - "New" oneAPI Intel compilers: `icx`, `icpx`, and `ifx`:
392 $ ./configure --with-cc=mpiicx --with-cxx=mpiicpx --with-fc=mpiifx
395 they might not work with some Intel MPI library versions. In those cases, use
399 $ ./configure --with-cc=mpicc --with-cxx=mpicxx --with-fc=mpif90
402 - On Cray systems, after loading the appropriate MPI module, the regular compilers `cc`, `CC`, and …
406 $ ./configure --with-cc=cc --with-cxx=CC --with-fc=ftn
409 - Instead of providing the MPI compiler wrappers, one can provide the MPI installation directory, w…
410 (without additionally specifying `--with-cc` etc.) using
413 $ ./configure --with-mpi-dir=/absolute/path/to/mpi/install/directory
416 - To control the compilers selected by `mpicc`, `mpicxx`, and `mpif90` one may use environmental
417 variables appropriate for the MPI libraries. For Intel MPI, MPICH, and Open MPI they are
428 $ ./configure --with-cc=mpicc --with-fc=mpif90 --with-cxx=mpicxx
434 …And avoid using the syntax `--with-cc="mpicc -cc=icx"` - this can break some builds (for example: …
437 The Intel environmental variables `I_MPI_CC`, `I_MPI_CXX`, and `I_MPI_F90` also changing the
438 behavior of the compiler-specific MPI compiler wrappers `mpigcc`, `mpigxx`, `mpif90`, `mpiicx`,
453 -------------------------------------------------------------------------------
455 to submit jobs you will need to configure using/configure.py with the additional option --with-batc…
472 $ xcode-select --install
487 `gfortran-version` (also available as `gfortran`), `gcc-version` and `g++-version`, for example `gf…
490 and the Xcode Command Line tools (run `xcode-select --install` again).
496 $ brew leaves > list.txt # save list of formulae to re-install
497 $ brew list --casks >> list.txt # save list of casks to re-install
507 ## Installation Location: In-place or Out-of-place
509 By default, PETSc does an in-place installation, meaning the libraries are kept in the
519 ### Out-of-place Installation With `--prefix`
521 To install the libraries and include files in another location use the `--prefix` option
524 $ ./configure --prefix=/home/userid/my-petsc-install --some-other-options
527 The libraries and include files will be located in `/home/userid/my-petsc-install/lib`
528 and `/home/userid/my-petsc-install/include`.
539 and then do the PETSc install as a **regular/non-root** user:
545 $ ./configure --prefix=/opt/petsc/my-root-petsc-install --some-other-options
553 $ ./configure --prefix=/opt/petsc/my-root-petsc-install
555 $ make install DESTDIR=/tmp/petsc-pkg
558 Package up `/tmp/petsc-pkg`. The package should then be installed at
559 `/opt/petsc/my-root-petsc-install`
561 ### Multiple Installs Using `--prefix` (See `DESTDIR`)
563 Specify a different `--prefix` location for each configure of different options - at
567 $ ./configure --prefix=/opt/petsc/petsc-3.24.0-mpich --with-mpi-dir=/opt/mpich
569 $ make install [DESTDIR=/tmp/petsc-pkg]
570 $ ./configure --prefix=/opt/petsc/petsc-3.24.0-openmpi --with-mpi-dir=/opt/openmpi
572 $ make install [DESTDIR=/tmp/petsc-pkg]
575 ### In-place Installation
577 The PETSc libraries and generated included files are placed in the sub-directory off the
581 $ export PETSC_ARCH=arch-debug
584 $ export PETSC_ARCH=arch-opt
585 $ ./configure --some-optimization-options
592 $ ./configure PETSC_ARCH=arch-debug
594 $ ./configure --some-optimization-options PETSC_ARCH=arch-opt
598 If not provided `configure` will generate a unique value automatically (for in-place non
599 `--prefix` configurations only).
604 $ ./configure --with-debugging=0
608 Produces the directories (on an Apple macOS machine) `$PETSC_DIR/arch-darwin-c-debug` and
609 `$PETSC_DIR/arch-darwin-c-opt`.
614 `configure` option `--with-batch`. **On such systems the make check option will not
617 - You must first ensure you have loaded appropriate modules for the compilers etc that you
619 to provide `--with-cc=XXX` etc. Consult with the documentation and local support for
621 - On such systems you generally should not use `--with-blaslapack-dir` or
622 `--download-fblaslapack` since the systems provide those automatically (sometimes
624 - Some package's `--download-package` options do not work on these systems, for example
625 [HDF5]. Thus you must use modules to load those packages and `--with-package` to
627 - Since building {ref}`external packages <doc_externalsoftware>` on these systems is often
638 $ export TAU_MAKEFILE=/home/balay/soft/linux64/tau-2.20.3/x86_64/lib/Makefile.tau-mpi-pdt
639 $ ./configure CC=/home/balay/soft/linux64/tau-2.20.3/x86_64/bin/tau_cc.sh --with-fc=0 PETSC_ARCH=ar…
652 Use `--with-openmp` to allow PETSc to be used within an OpenMP application; this also turns on Open…
653 PETSc builds using `--download-xxx`. If your application calls PETSc from within OpenMP threads the…
655 Use `--with-openmp-kernels` to have some PETSc numerical routines use OpenMP to speed up their comp…
664 An NVIDIA GPU is **required** to use [CUDA]-accelerated code. Check that your machine
665 has a [CUDA] enabled GPU by consulting <https://developer.nvidia.com/cuda-gpus>.
668 On Linux - verify [^id12] that CUDA compatible [NVIDIA driver](https://www.nvidia.com/en-us/drivers…
670 On Microsoft Windows - Use either [Cygwin] or [WSL] the latter of which is entirely untested right
672 for use with [CUDA] we welcome your input at <mailto:petsc-maint@mcs.anl.gov>. See the
673 bug-reporting {ref}`documentation <doc_creepycrawly>` for more details.
675 In most cases you need only pass the configure option `--with-cuda`; check
676 `config/examples/arch-ci-linux-cuda-double.py` for example usage.
678 CUDA build of PETSc currently works on Mac OS X, Linux, Microsoft Windows with [Cygwin].
686 In most cases you need only pass the configure option `--download-kokkos` `--download-kokkos-kernel…
687 and one of `--with-cuda`, `--with-hip`, `--with-sycl`, `--with-openmp`, or `--with-pthread` (or not…
692 Examples that use [Kokkos] at user-level have the suffix .kokkos.cxx; see
694 search them with `grep -r -l "requires:.*kokkos_kernels" src/`.
702 directly. Package managers on Linux provide these headers through a package named
703 'opencl-headers' or similar. On Apple systems the [OpenCL] drivers and headers are always
709 Run `configure` with `--download-viennacl`; check
710 `config/examples/arch-ci-linux-viennacl.py` for example usage.
712 [OpenCL]/[ViennaCL] builds of PETSc currently work on Mac OS X, Linux, and Microsoft Windows.
722 … --with-cc=emcc --with-cxx=0 --with-fc=0 --with-ranlib=emranlib --with-ar=emar --with-shared-libra…
737 … on our [GitLab Wiki](https://gitlab.com/petsc/petsc/-/wikis/Installing-and-Running-on-Large-Scale…
751 [^id12]: To verify CUDA compatible Nvidia driver on Linux - run the utility `nvidia-smi` - it shoul…
754 [cuda]: https://developer.nvidia.com/cuda-toolkit
758 [hypre]: https://computing.llnl.gov/projects/hypre-scalable-linear-solvers-multigrid-methods
759 [installation instructions]: https://www.open-mpi.org/faq/?category=building
762 [mkl]: https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/onemkl.html
763 [mkl link line advisor]: https://software.intel.com/content/www/us/en/develop/articles/intel-mkl-li…
764 [modules]: https://www.alcf.anl.gov/support-center/theta/compiling-and-linking-overview-theta-theta…
766 [mumps]: https://mumps-solver.org/
767 [open mpi]: https://www.open-mpi.org/
775 [wsl]: https://docs.microsoft.com/en-us/windows/wsl/install-win10