Skip to content

A project submitted as the requirement of the course CSE 549 (Computational Biology), titled as "Efficient Parallelization for KmerEstimate: A Streaming Algorithm for Estimating k-mer Counts with Optimal Space Usage". Original serial algorithm available at github.com/srbehera11/KmerEstimate.

License

Notifications You must be signed in to change notification settings

jamshed/KmerEstimate_Project

Repository files navigation

Compile and Run

Compile original algorithm implementation:

	g++ -o kmerEst kmerCountEstimate.cpp -std=c++11 -O3 -march=native

Compile parallel algorithm implementation(s):

	g++ -o monitor Monitor.cpp -std=c++11 -O3 -march=native -pthread
	
	g++ -o spinlock Spinlock.cpp -std=c++11 -O3 -march=native -pthread

Run original (serial) algorithm implementation:

	./kmerEst -f <seq.fa> -k  <kmerLen> -s <minHeap_Size> -c <coverage> -o <out.txt>

Run parallel (multi-threaded) algorithm implementation (Monitor i.e. lock and conditional-variable based approach):

	./monitor -f <seq.fa> -k  <kmerLen> -s <minHeap_Size> -t <thread count> -c <coverage> -o <out.txt>

Run parallel (multi-threaded) algorithm implementation (Spinlock based approach):

	./spinlock -f <seq.fa> -k  <kmerLen> -s <minHeap_Size> -t <thread count> -c <coverage> -o <out.txt>

Datasets

https://drive.google.com/drive/folders/1Nbp2Q38OY2_Y-CKe7pcxU6b3pLVnYuEL?usp=sharing

About

A project submitted as the requirement of the course CSE 549 (Computational Biology), titled as "Efficient Parallelization for KmerEstimate: A Streaming Algorithm for Estimating k-mer Counts with Optimal Space Usage". Original serial algorithm available at github.com/srbehera11/KmerEstimate.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published