<div dir="ltr"><div>David,</div><div>the common practice is to install blast, or any other application software packages, on a drive which is to be exported via NFS to the compute nodes.</div><div>Or indeed a section on your parallel filesystem (BeeGFS, GPFS, Lustre etc.)</div><div>You might call such an area /opt/    /opt/shared or /cm/shared</div><div>(At my place of work it is /hpc/shared in addition to /cm/shared   - /cm being for Bright packages)</div><div><br></div><div>Also it is common practice to use the Modules environment to deal with setting up your PATHs and for dealing with multiple versions of applications</div><div>Jeff Layton has a very good article on this    <a href="http://www.admin-magazine.com/HPC/Articles/Environment-Modules">http://www.admin-magazine.com/HPC/Articles/Environment-Modules</a></div><div><br></div><div>If you wish to bend your head even further look at Easybuild  <a href="https://easybuild.readthedocs.io/en/latest/">https://easybuild.readthedocs.io/en/latest/</a></div><div><br></div><div>There is an easyblock for Blast <a href="https://github.com/easybuilders/easybuild-easyconfigs/tree/master/easybuild/easyconfigs/b/BLAST">https://github.com/easybuilders/easybuild-easyconfigs/tree/master/easybuild/easyconfigs/b/BLAST</a></div><div>So in theory (hah!) you coudl build Blast and have a Module file built at the same time.</div><div>However this is getting far beyond the original question.</div><div><br></div><div>So the short answer - install applications on a disk area which is mounted on all the compute nodes.</div><div>Use modules.</div><div><br></div><div><br></div><div><br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On 15 December 2017 at 12:52, david vilanova <span dir="ltr"><<a href="mailto:vilanew@gmail.com" target="_blank">vilanew@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div dir="auto">Thanks manuel,</div><div dir="auto">The shared folder between master and slave sounds like a good option. I’ll go and try that one,</div><div dir="auto">Thanks</div><div><div class="h5"><br><div class="gmail_quote"><div>El El vie, 15 dic 2017 a las 12:36, Manuel Rodríguez Pascual <<a href="mailto:manuel.rodriguez.pascual@gmail.com" target="_blank">manuel.rodriguez.pascual@<wbr>gmail.com</a>> escribió:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid"><div>Hi David,<div><br></div><div>The command to be executed must be present on the node where the script is run.  When you submit a job in Slurm only the script is copied to the slave node, so the data and binaries must be there prior to the script execution. </div><div><br></div><div>The are many alternatives to deal with this situation depending on the system and software requirements. A common practice (as far as I know, I am not an experienced sysadmin) is to install the software in a shared storage and mount it both on the master node and in the slaves. This is analog to what you are probably doing with the user $HOME. </div><div><br></div><div>Of course this cannot always be done, and sometimes the only solution is install a particular library or application in every node. In this case there are many solutions to automatice the process. </div><div><br></div><div>Cheers, </div></div><div><div><br></div><div>Manuel</div></div><div class="gmail_extra"><br><div class="gmail_quote">2017-12-15 12:21 GMT+01:00 david <span><<a href="mailto:vilanew@gmail.com" target="_blank">vilanew@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid">Hi,<br>
<br>
when running a sbatch script i get "command not found".<br>
<br>
<br>
The command is blast (quite used bioinformatics tool).<br>
<br>
<br>
The problem comes from the fact that the blast binary is installed in the master node  but not on the other nodes. When the job runs on another node the binary is not found.<br>
<br>
<br>
What would be way to deal with this situation ? what is common practice ?<br>
<br>
<br>
thanks,<br>
<br>
david<br>
<br>
<br>
<br>
</blockquote></div><br></div>
</blockquote></div></div></div></div>
</blockquote></div><br></div>