HiCCUPS error_Couldn't load native library

115 views
Skip to first unread message

Zhibo M.

unread,
Sep 15, 2017, 5:34:56 PM9/15/17
to 3D Genomics
Hi, 
When the juicer gets to the HiCCUPS step, it encounter the error showing below. I have checked the lib64 directory, two driver files are there.
I also looked the /lib directory, it does not have the libJCudaDriver-linux-x86_64.so file. But it requires root to add any file to this directory. My understanding is the software went ahead and looked the lib64 directory for the driver file. But somehow didn't find the file neither.
I have tried with bothe 0.7 and 0.75 version of the .jar files. Tried different juicer_tool files from other clusters. None of them help with this error.
By the way,if this helps, I am working on a PBS cluster with scripts files modified from the LSF version. Major modification was job submitting and job dependencies. I did not change any other part of the script.
Does anyone know what could be wrong?
Thanks,
Zhibo

Arrowhead complete


HiCCUPS:


Reading file: /lustre1/mzhibo/hic/workdir/workdir2/aligned/inter_30.hic

HiC file version: 8

No valid configurations specified, using default settings

Unable to assess map sparsity; continuing with HiCCUPS

Default settings for 5kb, 10kb, and 25kb being used

Running HiCCUPS for resolution 5000

Exception in thread "main" java.lang.UnsatisfiedLinkError: Could not load the native library.

Error while loading native library "JCudaDriver-linux-x86_64" with base name "JCudaDriver"

Operating system name: Linux

Architecture         : amd64

Architecture bit size: 64

Stack trace from the attempt to load the library as a resource:

java.lang.NullPointerException: No resource found with name '/lib/libJCudaDriver-linux-x86_64.so'

        at jcuda.LibUtils.loadLibraryResource(LibUtils.java:149)

        at jcuda.LibUtils.loadLibrary(LibUtils.java:83)

        at jcuda.driver.JCudaDriver.<clinit>(JCudaDriver.java:255)

        at jcuda.utils.KernelLauncher.initialize(KernelLauncher.java:603)

        at jcuda.utils.KernelLauncher.<init>(KernelLauncher.java:586)

        at jcuda.utils.KernelLauncher.create(KernelLauncher.java:393)

        at jcuda.utils.KernelLauncher.create(KernelLauncher.java:321)

        at jcuda.utils.KernelLauncher.compile(KernelLauncher.java:270)

        at juicebox.tools.utils.juicer.hiccups.GPUController.<init>(GPUController.java:55)

        at juicebox.tools.clt.juicer.HiCCUPS.runHiccupsProcessing(HiCCUPS.java:416)

        at juicebox.tools.clt.juicer.HiCCUPS.run(HiCCUPS.java:361)

        at juicebox.tools.HiCTools.main(HiCTools.java:86)

Stack trace from the attempt to load the library as a file:

java.lang.UnsatisfiedLinkError: /lustre1/mzhibo/hic/apps/juicer/scripts/lib64/libJCudaDriver-linux-x86_64.so: libcudart.so.7.0: cannot open shared object file: No such file or directory

        at java.lang.ClassLoader$NativeLibrary.load(Native Method)

        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1941)

        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1857)

        at java.lang.Runtime.loadLibrary0(Runtime.java:870)

        at java.lang.System.loadLibrary(System.java:1122)

        at jcuda.LibUtils.loadLibrary(LibUtils.java:94)

        at jcuda.driver.JCudaDriver.<clinit>(JCudaDriver.java:255)

        at jcuda.utils.KernelLauncher.initialize(KernelLauncher.java:603)

        at jcuda.utils.KernelLauncher.<init>(KernelLauncher.java:586)

        at jcuda.utils.KernelLauncher.create(KernelLauncher.java:393)

        at jcuda.utils.KernelLauncher.create(KernelLauncher.java:321)

        at jcuda.utils.KernelLauncher.compile(KernelLauncher.java:270)

        at juicebox.tools.utils.juicer.hiccups.GPUController.<init>(GPUController.java:55)

        at juicebox.tools.clt.juicer.HiCCUPS.runHiccupsProcessing(HiCCUPS.java:416)

        at juicebox.tools.clt.juicer.HiCCUPS.run(HiCCUPS.java:361)

        at juicebox.tools.HiCTools.main(HiCTools.java:86)


        at jcuda.LibUtils.loadLibrary(LibUtils.java:126)

        at jcuda.driver.JCudaDriver.<clinit>(JCudaDriver.java:255)

        at jcuda.utils.KernelLauncher.initialize(KernelLauncher.java:603)

        at jcuda.utils.KernelLauncher.<init>(KernelLauncher.java:586)

        at jcuda.utils.KernelLauncher.create(KernelLauncher.java:393)

        at jcuda.utils.KernelLauncher.create(KernelLauncher.java:321)

        at jcuda.utils.KernelLauncher.compile(KernelLauncher.java:270)

        at juicebox.tools.utils.juicer.hiccups.GPUController.<init>(GPUController.java:55)

        at juicebox.tools.clt.juicer.HiCCUPS.runHiccupsProcessing(HiCCUPS.java:416)

        at juicebox.tools.clt.juicer.HiCCUPS.run(HiCCUPS.java:361)

        at juicebox.tools.HiCTools.main(HiCTools.java:86)

***! Problem while running HiCCUPS

Neva Durand

unread,
Sep 15, 2017, 6:48:47 PM9/15/17
to Zhibo M., 3D Genomics
It's important to know which version of CUDA you have and exactly what operating system.

I also found this thread that might help (scroll down).


--
You received this message because you are subscribed to the Google Groups "3D Genomics" group.
To unsubscribe from this group and stop receiving emails from it, send an email to 3d-genomics+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/3d-genomics/afb92233-be3c-4abe-9af4-8b06dd21fb6d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Neva Cherniavsky Durand, Ph.D.
Staff Scientist, Aiden Lab

Zhibo M.

unread,
Sep 16, 2017, 11:13:41 AM9/16/17
to 3D Genomics
Hi Neva,
I am using CUDA7.5. But CUDA 8 is also available to be loaded on the cluster. The cluster runs centOS6.5 64bit system with PBS job scheduler.
Do I need to do any changeS in juicer_tools file to let the juicer use CUDA7 vs CUDA7.5? 
If I want to try the CUDA8, besides the new jar file for cuda8, and cudadrivers in lib64, what else should be changed to let it work? Like juicer_tools file?
And I will look into the thread you mentioned and try their suggestions too.
Thanks,
Zhibo
To unsubscribe from this group and stop receiving emails from it, send an email to 3d-genomics...@googlegroups.com.

Neva Durand

unread,
Sep 16, 2017, 12:12:53 PM9/16/17
to 3D Genomics, Zhibo M.
You should be fine just changing the jar. The lib64 folder is not needed for cuda 8 (and possibly not for 7.5 either)


Reply all
Reply to author
Forward
0 new messages