Hi Mahmood, 

Another possibility, if you are managing that rocks cluster, would be to 
propagate packages installed on the head node to the slave nodes. Basically 
you’d have to edit a new xml config file, and build a new rocks distro. 

See eg. 
http://www.rocksclusters.org/roll-documentation/base/5.4/customization-adding-packages.html
 
<http://www.rocksclusters.org/roll-documentation/base/5.4/customization-adding-packages.html>

arthur

> On 08 Jul 2016, at 17:44, Mahmood Naderan <mahmood...@gmail.com> wrote:
> 
> 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
> 

Responder a