0

I have been trying to use PETSc for some MPI enhanced matrix operations, but I keep getting this error when I submit the job using slurm on a supercomputer:

ERROR: ERROR: LoadError: LoadError: could not load library 
"/home/20ph92r03/petsc/arch-linux-c-debug/lib/libpetsc.so"
liblapack.so.3: cannot open shared object file: No such file or directorycould not 
load library "/home/20ph92r03/petsc/arch-linux-c-debug/lib/libpetsc.so"
liblapack.so.3: cannot open shared object file: No such file or directory

And this is my jobscript

#!/bin/bash
#SBATCH -J slepcTest
#SBATCH -p standard-low
#SBATCH --output=slepcTest-out
#SBATCH -n 2
#SBATCH -t 1:00:00

module load compiler/intel-mpi/mpi-2020-v4

export LD_LIBRARY_PATH=/home/21ph92r03/julia-1.8.0/lib/julia:$LD_LIBRARY_PATH

time mpiexec -n 2 /home/20ph92r03/julia-1.8.0/bin/julia mpiSlepc.jl

I have followed the earlier threads related to the same error and modified the LD_LIBRARY_PATH environment variable in the .bashrc file, like this:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:'/home/20ph92r03/petsc/arch-linux-c- 
debug/lib/:/usr/lib64/'

But the error persists. I don't know what else to try!

Thanks!

7
  • If you expect /usr/lib64/liblapack.so.3, make sure it is installed on the compute nodes. Commented Jan 4, 2023 at 15:56
  • @GillesGouaillardet how do I know that? Commented Jan 4, 2023 at 16:07
  • 1
    run ldd /home/20ph92r03/petsc/arch-linux-c-debug/lib/libpetsc.so | grep lapack on your head node to confirm the location of the lapack library, then run ls -l /xxx/liblapack.so.3 in your script to check the availability on the compute nodes. Commented Jan 5, 2023 at 1:57
  • I ran the above commands, the first one gives me: liblapack.so.3 => /usr/lib64/liblapack.so.3 (0x00002b54d7de5000). And then I submit my job script with ls -l /usr/lib64/liblapack.so.3 to get ls: cannot access /usr/lib64/liblapack.so.3: No such file or directory. I guess then it's not installed on the compute nodes. So the next question is how to make sure it's installed on the compute nodes? Thanks! Commented Jan 5, 2023 at 5:16
  • 1
    It is clearly not installed on the compute nodes. The right fix is to ask your sysadmin to install it. Meanwhile, you can copy this library (and its dependencies such as libblas.so.?) in a shared directory and have LD_LIBRARY_PATH point to it. Commented Jan 5, 2023 at 6:31

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.