-
Notifications
You must be signed in to change notification settings - Fork 184
Installation
This documentation is a work in progress.
- The latest version of GNU CoreUtils
- The latest version of the Burrows-Wheeler Aligner (BWA)
- You must install CUDA for HiCCUPS peak calling, and use an NVIDIA GPU.
- The native libraries included with Juicer are compiled for CUDA 7. Other versions of CUDA can be used, but you will need to download the respective native libraries from JCuda.
- For best performance, use a dedicated GPU. You may also be able to obtain access to GPU clusters through Amazon Web Services or a local research institution.
- You must install the Java 1.7 or 1.8 JDK. (Alternative link for Ubuntu/LinuxMint)
- Apache Ant is needed to build the jar from source files. Ant should be installed on most Macs. To verify installation via the command prompt, type
ant -version
in command prompt. If Ant is not on your Mac, install it via homebrew by typing:
brew update
brew install ant
Installing Ant on Windows requires some minor changes to your system environment. Follow the instructions in this article.
For installing on Linux, type:
sudo apt-get install ant
or sudo yum install ant
depending on your package installer
Juicer requires the use of a cluster, with ideally >= 4 cores (min 1 core) and >= 64 GB RAM (min 16 GB RAM). Juicer currently works with the following resource management software:
Make sure to copy the appropriate scripts from the github repo to your cluster as well as the fastq reads and appropriate reference files.
The following shows a sample configuration of the all the files and directories on the cluster once Juicer is fully set up (using AWS as an example). It assumes that all files needed by Juicer are set up under /opt/juicer
. You can also access a public mirror of these files by going to https://s3.amazonaws.com/juicerawsmirror/opt/juicer/[paths_below]
, for example: https://s3.amazonaws.com/juicerawsmirror/opt/juicer/work/HIC003/fastq/HIC003_S2_L001_R1_001.fastq.gz.
# tmp directory
/opt/juicer/tmp
# sample work directory is /opt/juicer/work/HIC003
/opt/juicer/work/HIC003/fastq
/opt/juicer/work/HIC003/fastq/HIC003_S2_L001_R1_001.fastq.gz
/opt/juicer/work/HIC003/fastq/HIC003_S2_L001_R2_001.fastq.gz
# another sample work directory is /opt/juicer/work/MBR19
/opt/juicer/work/MBR19/fastq
/opt/juicer/work/MBR19/fastq/chr19_R1.fastq.gz
/opt/juicer/work/MBR19/fastq/chr19_R2.fastq.gz
# Core Juicer scripts from github in /opt/juicer/scripts
/opt/juicer/scripts/chimeric_blacklist.awk
/opt/juicer/scripts/statistics.pl
/opt/juicer/scripts/stats_sub.awk
/opt/juicer/scripts/split_rmdups.awk
/opt/juicer/scripts/countligations.sh
/opt/juicer/scripts/juicebox
/opt/juicer/scripts/juicebox_tools.jar
/opt/juicer/scripts/juicer_postprocessing.sh
/opt/juicer/scripts/dups.awk
/opt/juicer/scripts/juicer.sh
/opt/juicer/scripts/LibraryComplexity.class
/opt/juicer/scripts/hicInternalMenu.properties
/opt/juicer/scripts/abnormal.awk
/opt/juicer/scripts/check.sh
/opt/juicer/scripts/fragment.pl
/opt/juicer/scripts/makemega_addstats.awk
/opt/juicer/scripts/mega.sh
/opt/juicer/scripts/relaunch_prep.sh
/opt/juicer/scripts/cleanup.sh
# Sequence reference files in /opt/juicer/references
# hg19 and mm9 reference files in mirror
/opt/juicer/references/Homo_sapiens_assembly19.fasta
/opt/juicer/references/Mus_musculus_assembly9_norandom.fasta
Make sure to copy the appropriate scripts from the github repo to your cluster as well as the fastq reads and appropriate reference files.
After running BWA indexing (might take a couple hours) bwa index <fasta file>
:
# after running BWA indexing
/opt/juicer/references/Homo_sapiens_assembly19.fasta.sa
/opt/juicer/references/Homo_sapiens_assembly19.fasta.ann
/opt/juicer/references/Homo_sapiens_assembly19.fasta.amb
/opt/juicer/references/Homo_sapiens_assembly19.fasta.pac
/opt/juicer/references/Homo_sapiens_assembly19.fasta.bwt
/opt/juicer/references/Mus_musculus_assembly9_norandom.fasta.bwt
/opt/juicer/references/Mus_musculus_assembly9_norandom.fasta.amb
/opt/juicer/references/Mus_musculus_assembly9_norandom.fasta.pac
/opt/juicer/references/Mus_musculus_assembly9_norandom.fasta.ann
/opt/juicer/references/Mus_musculus_assembly9_norandom.fasta.sa
After building the restriction sites files python generate_site_positions.py
# restriction sites files in /opt/juicer/restriction_sites
/opt/juicer/restriction_sites/mm9_HindIII.txt
/opt/juicer/restriction_sites/mm10_MboI.txt
/opt/juicer/restriction_sites/mm10_DpnII.txt
/opt/juicer/restriction_sites/hg19_MboI.txt
/opt/juicer/restriction_sites/hg38_MboI.txt
/opt/juicer/restriction_sites/hg38_DpnII.txt
/opt/juicer/restriction_sites/hg19_DpnII.txt
/opt/juicer/restriction_sites/hg19_HindIII_new.txt
/opt/juicer/restriction_sites/mm9_DpnII.txt