For those who need to install parallel siesta, here is something I found on
the web. For me, it works.

Installation of SIESTA-3.0-b(parallel version):

1. Installation of MPICH2:

   a) to get mpich2

    http://www-unix.mcs.anl.gov/mpi/mpich/


   b) installation instruction:

    http://hydra.nac.uci.edu/~sev/docs/mpich2-readme.txt

    $ tar xfz mpich2.tar.gz

    $ cd mpich2-1.0.1
    $ ./configure   # default installation directory (/urs/local/bin/)
    $ make
    $ make install ( need to be a root)

    $ which mpd  # (print /usr/local/bin )
    $ which mpiexec #(print /usr/local/bin/)

    $ which mpirun  #(print  /usr/local/bin/)

    $ cd   #(go to home directory)
    $ vi .mpd.conf #(type secretword = what ever you want and save)
    $ chmod 600 .mpd.conf

    $ mpd $
    $ mpdtrace  (print the localhost name)

    $ mpdallexit

    $ vi hostfile (type localhost X no, X = no of core of that machine )


2. BLAS installation:

   to get BLAS

   http://www.netlib.org/blas/blas.tgz


   for installation

   http://wiki.ifca.es/e-ciencia/index.php/BLAS
or
   $ tar -zxvf blas.tgz
   $ cd BLAS
   $ vi make.inc (need to edit ---see below)

   $ make

  edit

   FORTRAN = /usr/local/bin/mpif90
   LOADER  = /usr/lcoal/bin/mpif90

  $ make clean (for cleaning)

3. lapack installation:

   to get
   http://www.netlib.org/blas/lapack.tgz


   for installation
   go to
   http://wiki.ifca.es/e-ciencia/index.php/LAPACK
  or
  $ tar -zxvf lapack.tgz
  $ cd lapack-3.2/

  $ cp make.inc.example make.inc
  $ vi make.inc (need to edit ...see below)
  $ make all

  edit

  FORTRAN  = /usr/local/bin/mpif90
  LOADER   = /usr/local/bin/mpif90
  TIMER    = EXT_ETIME

  BLASLIB  = /home/../../BLAS/blas$(PLAT).a  (give the full path)


   for cleaning

   $ rm *.a  #(make clean is not going to work)


4. BLACS installation:

   to get


   http://www.netlib.org/blacs/mpiblacs.tgz
   http://www.netlib.org/blacs/mpiblacs-patch03.tgz


   for installation

   http://wiki.ifca.es/e-ciencia/index.php/BLACS
  or

  $ tar -zxvf mpiblacs.tgz
  $ tar -zxvf mpiblacs-patch03.tgz

  $ cd BLACS/
  $ cp BMAKES/Bmake.MPI-LINUX ./Bmake.inc
  $ vi Bmake.inci (need to edit .....see below)
  $ make mpi

  edit

  BTOPdir   = $(HOME)/Software/BLACS  # directory we're compiling BLACS at

  MPIdir    = /usr/local/            # Open MPI directory
  MPILIBdir =
  MPIINCdir = /usr/local/include/
  MPILIB    = /usr/local/lib/libmpich.a
  SYSINC    =
  INTFACE   = -DAdd_
  TRANSCOMM = -DUseMpich

  F77       = /usr/local/bin/mpif90 # MPI wrapper for Fortran compiler
  CC        = /usr/local/bin/mpicc  # MPI wrapper for C compiler
  CCFLAGS   = -O3


  for cleaning

  $ find ./* -name '*.o' | xargs rm



5. Scalapack installation:

   to get

   http://www.netlib.org/scalapack/scalapack.tgz

   for installation


   http://wiki.ifca.es/e-ciencia/index.php/ScaLAPACK
  or

  $ tar -zxvf TARs/scalapack.tgz
  $ cd scalapack-1.8.0/
  $ cp SLmake.inc.example SLmake.inc

  $ vi SLmake.inc  (need to edit ...see below)
  $ make

  for cleaning

  $ make clean
  $ rm libscalapack.a



  edit


  home       = $(HOME)/Software/scalapack-1.8.0
  BLACSdir   = $(HOME)/Software/BLACS/LIB

  SMPLIB     = /usr/local/bin/libmpich.a
  BLACSFINIT = $(BLACSdir)/blacsF77init_MPI-$(PLAT)-$(BLACSDBGLVL).a
  BLACSCINIT = $(BLACSdir)/blacsCinit_MPI-$(PLAT)-$(BLACSDBGLVL).a
  BLACSLIB   = $(BLACSdir)/blacs_MPI-$(PLAT)-$(BLACSDBGLVL).a

  F77        = /usr/local/bin/mpif90
  CC         = /usr/local/bin/mpicc
  F77FLAGS   =  -O2 $(NOOPT)
  CCFLAGS    =

  CDEFS      = -DAdd_ -DNO_IEEE $(USEMPI)
  BLASLIB    = $(HOME)/Software/BLAS/blas_LINUX.a
  LAPACKLIB  = $(HOME)/Software/lapack-3.2/lapack_LINUX.a



6. Siesta installation:


   go to
  http://wiki.ifca.es/e-ciencia/index.php/SIESTA#Serial_version

  1. $ tar -zxvf siesta-3.0-b.tgz
  2. $ cd siesta-3.0-b/Obj/

  3. $ sh ../Src/obj_setup.sh
  4. $ ../Src/configure
  5. $ vi arch.make (need to edit this file .... see the web page...as
       it depends on where did you  install the other libraries.... ... )
  6. $ make ( this is for siesta, for transiesta see below )

  7  $ make clean (to clean the *.o file and recompile again
       to compile transiesta type make transiesta instead of make)


 edit
   FC= /usr/local/bin/mpif9
   FFLAGS=-g -O2
   FPPFLAGS= -DMPI -DFC_HAVE_FLUSH -DFC_HAVE_ABORT

   BLAS_LIBS=$(HOME)/../BLAS/blas_LINUX.a
   LAPACK_LIBS=$(HOME)/../lapack-3.2/lapack_LINUX.a
   BLACS_LIBS=$(HOME)/../BLACS/LIB/blacsF77init_MPI-LINUX-0.a \
           $(HOME)/../BLACS/LIB/blacs_MPI-LINUX-0.a \

           $(HOME)/../BLACS/LIB/blacsCinit_MPI-LINUX-0.a

   SCALAPACK_LIBS=$(HOME)/../scalapack-1.8.0/libscalapack.a

   COMP_LIBS=dc_lapack.a
   MPI_INTERFACE=libmpi_f90.a
   MPI_INCLUDE=.

7. To run siesta from any directory

    $ cd yourdirectory
    $ ln -s ../path to siesta/Obj/siesta . ( to link the siesta )
    $ mpdboot -n 1 -f hostfile
    $ mpiexec -n <np> ./siesta < xyz.fdf | tee xyz.out &

    **** make sure to kill the mpd after every run ****
    $ mpdallexit


On Sat, Feb 26, 2011 at 9:47 AM, Michael Shin <[email protected]> wrote:

> Dear All
> Can any one guide me and send me some related steps for installation of
> parallel version of SIESTA-3.0-rc2.
> I will be grateful if some has successfully installed the parallel version
> of SIESTA-3.0-rc2 and can send me arch.make file.
> Also tell me the FORTRAN compiler name which can support parallel version
> of SIESTA-3.0-rc2
> Regrads
>
>

Responder a