juicer install

1,066 views
Skip to first unread message

Jianzhong Su

unread,
Apr 12, 2016, 4:25:00 PM4/12/16
to 3D Genomics
Hi,
       
       I try to install juicer-master to compute the interaction matrix from hic. But the program  could not alway find the /lib/libJCudaDriver-linux-x86_64.so. 

 I install the latest CUDA/7.5.18. Install the java/1.8.0u71,  gnu/glpk/4.55 and bwa/0.7.4 in our server.

module load  java/1.8.0u71

module load  gnu/glpk/4.55

module load  bwa/0.7.4

module load  cuda/7.5.18

java -Xms512m -Xmx2048m  -jar /mount/weili4/jianzhos/XiaoTian/HIC/juicer-master/AWS/scripts/juicebox_tools.jar hiccups -r 5000,10000 -f .1,.1 -p 4,2 -i 7,5 -t 0.02,1.5,1.75,2 inter.hic InterLoopsList

I have added the path in ~/.bashrc 

 export LD_LIBRARY_PATH=/mount/weili4/jianzhos/XiaoTian/HIC/juicer-master/lib/JCudnn/lib:$LD_LIBRARY_PATH

Alternative: export PATH=$PATH:/mount/weili4/jianzhos/XiaoTian/HIC/juicer-master/lib/JCudnn/lib

But I meet the same errors 

Reading file: inter.hic
HiC file version: 8
Running HiCCUPS for resolution 10000
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:339)
at juicebox.tools.clt.juicer.HiCCUPS.run(HiCCUPS.java:283)
at juicebox.tools.HiCTools.main(HiCTools.java:79)
Stack trace from the attempt to load the library as a file:
java.lang.UnsatisfiedLinkError: no JCudaDriver-linux-x86_64 in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1864)
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:339)
at juicebox.tools.clt.juicer.HiCCUPS.run(HiCCUPS.java:283)
at juicebox.tools.HiCTools.main(HiCTools.java:79)

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:339)
at juicebox.tools.clt.juicer.HiCCUPS.run(HiCCUPS.java:283)
at juicebox.tools.HiCTools.main(HiCTools.java:79)


Thanks,

Jianzhong


 

Muhammad Shamim

unread,
May 24, 2016, 3:54:15 PM5/24/16
to 3D Genomics
Hi Jianzhong,

My apologies for the late reply.
The JCuda native libraries are not the same as the CUDA libraries.
The steps to get hiccups working (assuming you already have juicebox_tools.jar):
  1. Install CUDA on your machine (version 7 or 7.5 - NVIDIA GPUs are required)
    You should also confirm the CUDA installation is complete through the default tests
    provided by NVIDIA and by calling nvcc
  2. Download the appropriate JCuda native libraries. We have these zipped for JCuda 7 and 7.5 here: https://github.com/theaidenlab/juicebox/tree/master/lib/jcuda
    A sample setup with additional instructions is also available here: https://github.com/theaidenlab/juicebox/tree/master/native_launcher
    Native libraries for other versions can be downloaded from http://jcuda.org/
  3. Call java -Djava.library.path=/path/to/natives/ -jar juicebox_tools.jar hiccups ...
The current error basically is saying that it can't locate the native library for JCuda (which should be in the natives folder -  see example here).

Please let me know if this works or if you have any other questions.

Best,
Muhammad Saad Shamim
Reply all
Reply to author
Forward
0 new messages