Hi Shane,
We've not touched anything on the BLAST+ wrapper here for
a while - the command line is always built using:
-num_threads "\${GALAXY_SLOTS:-8}"
That means use the environment variable $GALAXY_SLOTS
if set, defaulting to 8 threads if not. See:
https://github.com/peterjc/galaxy_blast/blob/master/tools/ncbi_blast_plus/ncbi_macros.xml#L352Galaxy itself should be setting $GALAXY_SLOTS via your
cluster configuration - and from your description this seems
to be set to 1 thread/slot only.
I suspect since I’m running an old configuration that my cluster setup isn’t optimal. I didn’t really want my users going nuts since our cluster is small (6 nodes, 16 cores each) so I wasn’t keen to give them too much power because and was happy that tools would only run on single cores although I’ve set things up as per the docs way back when so it uses multiple handlers and so on and with default_cluster_job_runner =
drmaa:/// all in the galaxy.ini (universe_wsgi.ini actually)
Can you tell us more about how your Galaxy LSF is setup?
Have you got BLAST specific cluster job settings?
Nothing specific, but it would seem that the GALAXY_SLOTS variable has gone from being unset to set with the install I’ve got now and that would explain why BLAST has slowed down a lot.
(I don't use LSF so don't have the details to hand)
I’m just using the drmaa plugin so I’m guessing I need to either specify a job runner for BLAST which sets GALAXY_SLOTS. The documentation isn’t entirely clear although it seems I need to create a job_conf.xml which sets local_slots to a value for runner drmaa unless there’s a way to set that in the galaxy.ini file instead.