Hi Paul,
* Paul Van Allsburg wrote on Wed, Mar 29, 2006 at 06:12:56PM CEST:
> I've installed 7.1.2 using intel compilers on a test cluster and now
> would like to add it on a cluster that has a few active nodes. I need
> to add
> /opt/intel/fce/9.0/lib
> /opt/intel/cce/9.0/lib
> /opt/intel/ict/2.0/itc/6.0/lib
> /opt/intel/ict/2.0/mpi/2.0/lib
> /opt/intel/ict/2.0/cmkl/8.0.1/lib
> to /etc/ld.so.config,
FWIW, I think this is a better way to do it than sourcing the iccvars.sh
and similar scriptlets which then set LD_LIBRARY_PATH and so on. You
may still need some of the other settings of those scripts -- for PATH,
the license file, and as a user I always appreciate MANPATH being
adjusted (but maybe your users don't ever log in there).
> my question is could running ldconfig interfere with the running jobs?
No, that should not interfere with processes that are running already,
unless maybe they use dlopen at some point. Then, I believe, the
following could happen, in theory:
Either the to-be-dlopened module or some shared library dependence of it
that has not been loaded already, will now be found in another path.
This could happen, for example, if you used some libraries from above
paths, and they are, say, present in both /opt/intel/fce/9.0/lib and
/opt/intel/cce/9.0/lib. I think this should still not break running
applications: you'll simply use the new library.
The ldconfig call renames the cache file atomically after writing to a
temp file, and ld-linux has means to reopen if the file changed, so that
should not be a problem either.
Barring any serious but so far unknown bugs, that is. ;-)
Cheers,
Ralf
|