User Tools

Site Tools


package:installation:macos

Installation of CPPAW on MacOS

Up to Installation

FIXME Someone should verify that this description is complete and correct. Then this fixme can be removed.

In 2020 Apple released the M1 chip with an ARM architecture which differs from the x86 used by Intel. Following this release, many programs, libraries and compilers needed to be adapted to run on the new architecture. Therefore, the guide is split into Intel and Apple Silicon used in Apple computers. Note, that the ecosystem around Apple Silicon is constantly evolving at the moment of writing these instructions.

Apple Silicon - ARM

Xcode

Check if Xcode Command Line Tools is installed on your system. You can check this guide on how to do it. The libraries BLAS and LAPACK are part of the Accelerate framework and are therefore already available on your machine.

Homebrew

Homebrew is a convenient package manager for software. If it is not already installed, please follow the instructions on the Homebrew website or in this installation guide. Note that the Homebrew default installation directory is now /opt/homebrew/ and not part of the default shell $PATH (compared to usr/local on Intel Macs). At the end of its installation Homebrew should show two commands to add it to $PATH. Copy and paste them in the command line.

Homebrew should automatically manage and install dependencies of software packages. Installations might therefore take a while on a new machine, where many dependencies need to be installed.

Install GNU Compiler Collection containing gfortran for ARM architecture:

brew install gcc

Install Message Passing Interface library for parallel computation:

brew install open-mpi

Install FFTW, a library for performing fast discrete Fourier transform:

brew install fftw

Install Grace, a plotting tool used for data analysis. xquartz provides support for X11 on MacOS:

brew install grace
brew install --cask xquartz
CP-PAW
  1. Unpack the CP-PAW distribution into a directory, whose path will be called $PAWDIR in the following.
  2. Add the directory $PAWDIR/bin/osx_gfortran_accellerate to your $PATH variable in your ~/.zshrc.
     export PATH=$PATH:$PAWDIR/bin/osx_gfortran_accellerate
  3. Create a file "parms.osx_gfortran_accelerate" in $PAWDIR.
  4. Check the values of the parameters FFTDIR, FFTHEADER, MPIDIR, MPI_HEADER, LIBS_SCALAR, and LIBS_PARALLEL in “parms.osx_gfortran_accelerate”. Most likely, you will need to adjust the version numbers of the codes or adapt the paths to your personal computer.
  5. Execute in $PAWDIR
         autoconf
         configure --with-parmfile=parms.osx_gfortran_accelerate
         make all 

    autoconf uses the file “configure.ac” to construct the “configure” file. You can skip this step, if a configure file is already present. After the configure command, you should get some information that ends with done!—configuration completed successfully!. If not, inspect the error messages and fix them. The make command may take a very long time, if you set up the code for the first time.

  6. Codesign: When you try to remotely execute unsigned code under macos, it will ask you for permission. This is painful when you run parallel code. Therefore it is advisable to sign the parallel executables. This is a fairly complicated procedure, which you need to look up. (FIXME This section could be expanded.)
  7. Increase the stack size and the core-dump size by including the following commands in your ~/.zshrc
        ulimit -s 65532
        ulimit -c unlimited
  8. Restart your console or use source ~/.zshrc.
  9. Check if the code is available by running which paw_fast.x.

Intel Silicon - x86

Xcode

MacOS has the compiler “gfortran” and the libraries “LAPACK” and “BLAS” already installed as system libraries. Important is to install “Xcode” from the Appstore. (Sign the license after opening it from the application folder.) Then install the “Command-Line tools” of Xcode. (Check the web for installation instructions).

Homebrew

I am installing Linux programs using homebrew. If you do not have it already, follow the installation instruction on its web page. Then install the following libraries.

brew install fftw  --with-fortran
brew install openmpi
brew install grace
PAW
  1. Unpack the PAW distribution into a directory, which I will name PAWDIR in the following.
  2. add the directory PAWDIR/bin/osx_gfortran_accellerate to your PATH variable in your ~/.profile
  3. Create a file ''parms.osx_gfortran_accelerate'' in PAWDIR
  4. Check the values of the parameters FFTDIR, FFTHEADER, MPIDIR, and MPIDIR in “parms.osx_gfortran_accelerate”. Most likely, you will need to adjust the version numbers of the codes.
  5. execute in PAWDIR
         autoconf
         configure --with-parmfile=parms.osx_gfortran_accelerate
         make all 

    “autoconf” uses the file “configure.ac” to construct the “configure” file. You can skip this step, if a configure file is already present. After the “configure” command, you should get some information that ends with done!—configuration completed successfully!. If not, inspect the error messages and fix them. The “make” command may take a very long time, if you set up the code for the first time.

  6. Codesign: When you try to remotely execute unsigned code under macos, it will ask you for permission. This is painful when you run parallel code. Therefore it is advisable to sign the parallel executables. This is a fairly complicated procedure, which you need to look up. (FIXME This section could be expanded.)
  7. Increase the stack size and the core-dump size by including the following commands in your ~/.profile
        ulimit -s 65532
        ulimit -c unlimited 
package/installation/macos.txt · Last modified: 2022/04/11 14:23 by lukas

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki