I am assembling paired-end RNA-Seq data. Running abyss-pe as follows: ~/downloads/abyss-1.3.4/bin/abyss-pe E=0 n=4 q=10 v=-v k=64 j=12 name=my_lib_name -C my_out_dirr in="<fq1> <fq2>" OVERLAP_OPTIONS='--no-scaffold' SIMPLEGRAPH_OPTIONS='--no-scaffold' MERGEPATHS_OPTIONS='--greedy' mp=''
Running this gives me following error:
which: no mpirun in (<system PATH>)
/bin/bash: mpirun: command not found
make: *** [<my lib>-1.fa] Error 127
I compiled abyss executable --without-mpi but still abyss-pe starts with mpirun. Any idea how to run it without having to use openmpi?
Thanks.
2 answers
Hi Vinay,
Sorry! Yesterday (in another thread) I suggested adding np=1 to your abyss-pe command. But looking at abyss-pe script, I see that won't work for running ABySS without MPI.
abyss-pe tries to detect the number of cores available based on the environment variables set by your job scheduler. And if it finds more than one core it tries to run the MPI version. I don't know which scheduler you are using, but try running this command immediately before abyss-pe in your job script:
unset NSLOTS LSB_DJOB_NUMPROC SLURM_NTASKS
If you like ABySS and are planning to continue using it, it is well worth downloading and building OpenMPI (you don't need administrative permissions -- you can install it in your home directory). It will make your ABySS jobs go a lot faster, even if you are only running the assemblies on a single machine.
install ABySS using Linuxbrew. See http://linuxbrew.sh Install Linuxbrew, and then
brew install homebrew/science/abyss
Log in to answer this question.
Can you provide how you installed/compiled abyss?
OpenMP and MPI are two different things. Take a look at this thread.
Thanks, st.ph.n. That clarifies a bit. Do you know if there was a way to run abyss-pe without mpirun?