GithubHelp home page GithubHelp logo

chi-0828 / rna-abundance-quantification-on-upmem Goto Github PK

View Code? Open in Web Editor NEW
6.0 1.0 2.0 46.53 MB

Running state-of-the-art RNA-seq abundance quantification software "kallisto" on UPMEM DPU system

License: MIT License

Makefile 1.41% C 78.70% M4 0.57% Roff 0.90% Perl 1.45% Shell 0.32% Scilab 0.13% C++ 16.53%
rna-seq-quantification upmem dpu kallisto processing-in-memory

rna-abundance-quantification-on-upmem's Introduction

RNA-Abundance-Quantification-on-UPMEM

  • More details can be found in the paper: "RNA-seq Quantification on Processing in Memory Architecture: Observation and Characterization"
  • paper

Our new project about RNA-seq Quantification on UPMEM DPU

UpPipe

Cite the paper if you use D_kallisto in your work

Liang-Chi Chen, Shu-Qi Yu, Chien-Chung Ho, Yuan-Hao Chang, Da-Wei Chang, Wei-Chen Wang, Yu-Ming Chang, "RNA-seq Quantification on Processing in memory Architecture: Observation and Characterization," The 11th IEEE Non-Volatile Memory Systems and Applications Symposium (NVMSA), August 23-25, 2022

@inproceedings{chen2022rna,
  title={RNA-seq Quantification on Processing in memory Architecture: Observation and Characterization},
  author={Chen, Liang-Chi and Yu, Shu-Qi and Ho, Chien-Chung and Chang, Yuan-Hao and Chang, Da-Wei and Wang, Wei-Chen and Chang, Yu-Ming},
  booktitle={2022 IEEE 11th Non-Volatile Memory Systems and Applications Symposium (NVMSA)},
  pages={26--32},
  year={2022},
  organization={IEEE}
}

Build

// build htslib first
cd ext/htslib
autoheader
autoconf
make -j16
// build our main program
cd ../..
mkdir obj
cd src 
make -j16

Usage

./D_kallisto pseudo [fastq file] 
      -i [index file] 
      -o [output path] 
      -t [num of CPU threads] 
      -d [num DPUs]
      --single
      -l [double]
      -s [double]

E.g., testing 100K reads/11-mer by 64*8 dpus

time ./D_kallisto pseudo -i ~/data/experiment/11-mer.idx -o out --single ~/data/experiment/RNA_read/100K.fastq -l 150 -s 30 -t 8 -d 64

More information

DPU program is in src/dpu_app
DPU allocation and CPU-DPU(DPU-CPU) transfers are in src/ProcessReads.cpp

Reference

kallisto

https://github.com/pachterlab/kallisto

UPMEM

https://github.com/CMU-SAFARI/prim-benchmarks
https://sdk.upmem.com/2021.3.0/
https://sdk.upmem.com/2021.3.0/CppAPI/index.html

Testing CPU-based kallisto

time ./kallisto pseudo -i ~/data/experiment/11-mer.idx -o out --single ~/data/experiment/RNA_read/100K.fastq -l 150 -s 30 -t 8 

rna-abundance-quantification-on-upmem's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.