Hi again, There are some problems with the linking the libraries for parallel execution. The system is based on ROCKS and if an MPI jobs is going to be run on the compute nodes, all libraries should be available on the nodes. Anyway...
As another try, I am rebuilding siesta parallel by downloading the source codes of the dependent libraries and install them on the NFS folder which is shared between nodes (the previous approach uses the package manager of the head node; hence nodes are not aware of that libraries). Please correct the following if I am wrong. Siesta needs the following libraries for a parallel run: OpenMPI LAPACK BLACS BLAS SCALAPACK I have installed OpenMPI from source and it is fine. It seems that some of the above mentioned libraries are merged into others. For example, according to the release note of scalapack-2.0.0: The BLACS is now part of ScaLAPACK, and is compiled into the ScaLAPACK library. It is no longer necessary to link against BLACS libraries. After building Scalapack, I see libscalapack.a. Next, I downloaded LAPACK-3.6.1 and built it. The following libraries are built liblapack.a librefblas.a libtmglib.a So, I think everything that I need are present. Now, consider the following section of arch.make of siesta #BLAS_LIBS=-lcblas -lf77blas -latlas BLAS_LIBS=libblas.a LAPACK_LIBS=dc_lapack.a liblapack.a BLACS_LIBS= #BLACS_LIBS=-lblacsCinit -lblacsF77init -lblacs SCALAPACK_LIBS=-lscalapack # Tricky business ... NETCDF_INCFLAGS= -I/usr/include NETCDF_LIBS= -lnetcdf -lnetcdff #NETCDF_INTERFACE=libnetcdf_f90.a LIBS=$(SCALAPACK_LIBS) $(BLACS_LIBS) $(LAPACK_LIBS) $(BLAS_LIBS) $(NETCDF_LIBS) As I borrowed From Robert (RCP). I have to change those line, but I am not sure what to do. Here is my suggestion LAPACK_LIBS=liblapack.a librefblas.a libtmglib.a SCALAPACK_LIBS=libscalapack.a NETCDF_INCFLAGS= -I/usr/include NETCDF_LIBS= -lnetcdf -lnetcdff LIBS=$(SCALAPACK_LIBS) $(LAPACK_LIBS) $(NETCDF_LIBS) Any idea? Regards, Mahmood
