Skip to content

Crispy13/GeneFuseRust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GeneFuse vRust

A Rust ported GeneFuse with improved performance.

This program is a Rust porting version based on GeneFuse 0.8.0

How to use: Build from source

  1. If you don't have Rust, install it.
  2. Build it with the below command on the root dir of this repo:
cargo build --release

The command will make a binary in {repo_root}/target/release/genefuse

  1. Run genefuse
target/release/genefuse

Notes: Some modifications in this version

  • Added read name as a criteria to sort Match objects. (The original codes can yield different unique read count per run.)
  • It can accept a file having a list of fusion csvs. If you give it a file like that instead of a single csv, it outputs report files per fusion csv file.
  • Parallelized part of matcher::makeIndex() method to increase performance.
  • Some multi-threading codes were modified to be used in Rust.

Performance test

  • In a test, this version's running time was 6.62x and it used 105% memory.
  • Details

Multiple csv path file Example

./EGFR_KRAS.csv
./TP53_EGFR.csv

For more information about this program, please see the original repository.