NCBI+ blastp and GALAXY_SLOTS - increase number of threads

Hello Galaxy team!
We are running a local Galaxy installation which is set on a server with multiple cores. I executed a job for searching peptides against the NCBI-nr database querying 5000 peptides against the NCBI-nr database. The query is taking quite long. For speeding up the process, we edited a tool_conf.xml template to tell Galaxy to use more threads using the “local_slots” parameter set to 16.

We tested the this conf file using TopHat and it works as expected i.e. TopHat takes the num_threads parameter from the job_conf.xml file. However, when using BLAST+ blastp (v2.14 or v2.10), the operation resorts back to 1 thread. Our job_conf.xml file is as follows:

<?xml version="1.0"?>
<!-- A sample job config that explicitly configures job running the way it is
     configured by default (if there is no explicit config). -->
<job_conf>
    <plugins>
        <plugin id="local" type="runner" load="galaxy.jobs.runners.local:LocalJobRunner" workers="4"/>
        <plugin id="multilocal" type="runner" load="galaxy.jobs.runners.local:LocalJobRunner" workers="1"/>
        <plugin id="cli" type="runner" load="galaxy.jobs.runners.cli:ShellJobRunner" workers="1"/>
    </plugins>

    <!--
    <handlers>
       <handler id="main" />
    </handlers>
    -->

    <destinations default="local">
        <destination id="local" runner="local"/>
        <destination id="multicore16" runner="multilocal">
            <param id="local_slots">16</param>
        </destination>
        <destination id="mccli16" runner="cli">
            <param id="local_slots">16</param>
        </destination>
    </destinations>
    <tools>
      <tool id="bowtie2" destination="multicore16" />
      <tool id="bowtie"  destination="multicore16" />
      <tool id="tophat2" destination="multicore16" />>
      <tool id="blast" destination="mccli16" />
      <tool id="blastp" destination="mccli16" />
      <tool id="ncbi_blast_plus" destination="mccli16" />
    </tools>
</job_conf>

Navigating down the rabbit hole of connected files, we are still not able to figure out why TopHat takes the parameters from job_conf.xml but ncbi-blastp+ does not. We assume that blastp is taking the number_threads parameter from some other file.
My question is: Which file specifies the parameter for increasing the number of threads for the blastp tool? Or
How can we increase the number of threads for the blastp tool?

Thank you!

Hi @prao123

I cross-posted your question over to the Admin chat. They may reply here or there, and feel free to join the chat. You're invited to talk on Matrix

Meanwhile, the tutorials may also help, along with this recent Q&A.

Local Galaxy

A local Galaxy server is a choice for personal use, and can be scaled to support multiple users.

Your service can be hosted publicly or privately. Connect to local, institutional, or commercial cloud computing resources and customize your usage policies.

:computer: Local Galaxy

2 Likes

My first guess would be that the used tool id is wrong. For blastp the id is ncbi_blastp_wrapper, see here.

Note that for small instances the job_conf.xml is sufficient for configuring ressources. The TPV method cited by @jennaj seems to be better on the long run (maybe even for smaller instances).

3 Likes

Sometimes the most inane thing that I forget is the solution! I changed the tool id to “ncbi_blastp_wrapper” and it worked!

Thank you for that solution!