I don't see any disadvantage to using qsub to background jobs that I typically would run interactively inside of screen. If you have a cluster available, then this is an optimal solution.
Although we have a job scheduler available, for a long time I tended to use screen to background long-running jobs or achieve parallelism without a lot of qsub script-writing overhead. Eventually, the limitations of this approach became apparent, and I wrote this qsub wrapper qgo to allow me to replace & and screen with qsub:
#!/bin/bash
mkdir -p qsubscripts
qsub -w $(pwd)/qsubscripts -d $(pwd) -M [email protected] $@ -S /bin/zsh -
Note that I'm using my preferred shell (zsh) but of course you can remove this argument, or add others. The use of $@ allows for the inclusion of resource specifications like -l ncpus=4 as needed. Here's how you'd use the script:
echo 'command -a 23 -b zz' | qgo | tee jobids
The STDERR.* and STDOUT.* files will be written to qsubscripts in the current working directory. The job ids are provided on The working directory for the job is set as thecwd` as well, which makes it easier to write these short scripts.