Ray is a parallel de novo genome assembler that utilises the message-passing interface everywhere and is implemented using peer-to-peer communication.
Ray is free software distributed under the terms of the GNU General Public License, version 3 (GPLv3).
Ray is implemented using RayPlatform, a message-passing-interface programming framework.
Ray is documented in
Standard:
Metagenomics:
Transcriptomics:
In progress:
http://github.com/sebhtml/ray (Ray plugins for genomics)
http://github.com/sebhtml/RayPlatform (the engine RayPlatform)
If you want to contribute, clone the repository, make changes and I (Sébastien Boisvert) will pull from you after reviewing the code changes.
http://github.com/sebhtml/Ray-TestSuite (system tests & unit tests)
http://github.com/sebhtml/Ray.web (Ray SourceForge web site)
http://github.com/sebhtml/ray-logo (artworks)
Users: denovoassembler-users AT lists.sourceforge.net
Read it on gmane: http://blog.gmane.org/gmane.science.biology.ray-genome-assembler
Development/hacking: denovoassembler-devel AT lists.sourceforge.net
SEQanswers: http://seqanswers.com/forums/showthread.php?t=4301
You need a C++ compiler (supporting C++ 1998), make, an implementation of MPI (supporting MPI 2.2).
tar xjf Ray-x.y.z.tar.bz2
cd Ray-x.y.z
make PREFIX=build
make install
ls build
tar xjf Ray-x.y.z.tar.bz2
cd Ray-x.y.z
mkdir build
cd build
cmake ..
make
make PREFIX=build2000 MPICXX=/software/openmpi-1.4.3/bin/mpicxx
make install
Tested C++ compilers: see Documentation/COMPILERS.txt
To compile with MPI I/O, use this:
make MPI_IO=y
Some processors have the popcnt instruction and other cool instructions. With gcc, add -march=native to build Ray for the processor used for the compilation.
make PREFIX=Build.native DEBUG=n ASSERT=n EXTRA=" -march=native"
make install
Another way to build Ray is to use whole-program optimization. With gcc, use this script:
./scripts/Build-Link-Time-Optimization.sh
make PREFIX=Ray-Large-k-mers MAXKMERLENGTH=64
# wait
make install
mpirun -np 512 Ray-Large-k-mers/Ray -k 63 -p lib1_1.fastq lib1_2.fastq \
-p lib2_1.fastq lib2_2.fastq -o DeadlyBug,Assembler=Ray,K=63
# wait
ls DeadlyBug,Assembler=Ray,K=63/Scaffolds.fasta
make PREFIX=build-3000 MAXKMERLENGTH=64 HAVE_LIBZ=y HAVE_LIBBZ2=y \
ASSERT=n FORCE_PACKING=y
# wait
make install
ls build-3000
see the Makefile for more.
To run Ray on paired reads:
mpiexec -n 25 Ray -k31 -p lib1.left.fasta lib1.right.fasta -p lib2.left.fasta lib2.right.fasta -o RayOutput
ls RayOutput/Contigs.fasta
ls RayOutput/Scaffolds.fasta
ls RayOutput/
Ray can be run with a configuration file instead.
mpiexec -n 16 Ray Ray.conf
Content of Ray.conf:
-k 31 # this is a comment -p lib1.left.fasta lib1.right.fasta
-p lib2.left.fasta lib2.right.fasta
-o RayOutput
RayOutput/Contigs.fasta and RayOutput/Scaffolds.fasta
type Ray -help for a full list of options and outputs
Ray assembles color-space reads and generate color-space contigs. Files must have the .csfasta extension. Nucleotide reads can not be mixed with color-space reads. This is an experimental feature.
http://denovoassembler.sf.net/publications.html
cd code
doxygen DoxygenConfigurationFile
cd DoxygenDocumentation/html
firefox index.html
Doctoral Award to S.B., Canadian Institutes of Health Research (CIHR)
see AUTHORS
see Documentation/VISUAL_STUDIO.txt