TheJacksonLaboratory / splicing-pipelines-nf

Repository for the Anczukow-Lab splicing pipeline
14 stars 10 forks source link

Create a 'big job' option in STAR #173

Closed angarb closed 4 years ago

angarb commented 4 years ago

Problem

Solution

Implementation

PhilPalmer commented 4 years ago

Hey @angarb You can find mega memory defined here How would you want to toggle this behaviour? I'm guessing a new parameter would make sense but what parameter would you want?

For example, some ideas could be to have:

sk-sahu commented 4 years ago

I check with this following approaches.

  1. Having two label (48h and 72h) which dynamically change based an external param (like @angarb suggested star_max = true) This doesn't seems feasible (Tried every possible combination of hack method)
  2. As suggested by @PhilPalmer -

    --star_time + modify the existing star_memory parameter to be able to set dynamically the resources for star

This also seems difficult because of selector priority

Any other suggestions/ideas welcome, including from @cgpu

angarb commented 4 years ago

@sk-sahu and @cgpu - I think I implemented a fix for this on my branch new_config-

In the Sumner config, I set a parameter mega_time that can be overwritten (by the main config). For example, in my test run, I set mega_time to 68.h in the NF_splicing_pipeline.config - and it worked!

I set the default to 20.h, because I think that should be sufficient for most jobs.

params  {
  mega_time = 20.h
  }
  withLabel: mega_memory {
    cpus = { check_max (24, 'cpus')}
    memory = { check_max( 120.GB * task.attempt, 'memory' ) }
    time = { check_max( params.mega_time * task.attempt, 'time' ) }
  }
angarb commented 4 years ago

However, @cgpu and @sk-sahu, definitely open to other ideas!

angarb commented 4 years ago

One sample took 2 days and 9 hours to run through STAR! Eeeep!

sk-sahu commented 4 years ago

Good to know you have a fix @angarb

As I already mentioned above tried different approach, no better solution. So having a different config file only make sense.

If your fix solves the problem can we close this issue?

angarb commented 4 years ago

Hi @sk-sahu, so I actually made a new parameter - mega_time described above.

Making a new config also ended up being a bit more complicated.

Should I push the new parameter to the master? The new parameter is within our Sumner Config.

sk-sahu commented 4 years ago

@angarb yes you can push it to master, but please try to do it though a PR. So that we can make sure everything is okay (just an extra pair of eyes better)

sk-sahu commented 4 years ago

Fixed https://github.com/TheJacksonLaboratory/splicing-pipelines-nf/pull/191 by @angarb