Chapter 4 Build the Salmon and STAR indexes

4.1 Prerequisites

conda activate iobrpy
export IOBRPY_REF="$IOBRPY_DEMO/reference"
mkdir -p "$IOBRPY_REF"
cd "$IOBRPY_REF"

wget -c \
https://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_human/release_44/gencode.v44.transcripts.fa.gz
wget -c \
https://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_human/release_44/gencode.v44.annotation.gtf.gz
wget -c \
https://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_human/release_44/GRCh38.primary_assembly.genome.fa.gz

gunzip -f \
  gencode.v44.transcripts.fa.gz \
  gencode.v44.annotation.gtf.gz \
  GRCh38.primary_assembly.genome.fa.gz

4.2 Build Salmon index

mkdir -p "$IOBRPY_REF/salmon"

salmon index \
  -t "$IOBRPY_REF/gencode.v44.transcripts.fa" \
  -i "$IOBRPY_REF/salmon/gencode44" \
  -k 31 \
  -p 8

4.3 Build STAR index

mkdir -p "$IOBRPY_REF/star"

STAR --runMode genomeGenerate \
  --genomeDir "$IOBRPY_REF/star" \
  --genomeFastaFiles "$IOBRPY_REF/GRCh38.primary_assembly.genome.fa" \
  --sjdbGTFfile "$IOBRPY_REF/gencode.v44.annotation.gtf" \
  --runThreadN 16 \
  --sjdbOverhang 100

4.4 Notes

  • Release/assembly: This guide uses GENCODE v44 (GRCh38).
  • Threads: The Salmon index uses 8 threads, and the STAR index uses 16 threads.
  • Index type: Salmon uses the transcriptome index at $IOBRPY_REF/salmon/gencode44; STAR uses the genome index at $IOBRPY_REF/star.
  • Storage: STAR indexes are large (tens of GB), whereas Salmon indexes require substantially less space.