-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
parallel implementation #31
Conversation
Hi. Thanks for this -- have been meaning to implement some parallelisation of the pathways, but haven't had the time yet. I'm currently getting an error when I run this on my machine, using the naive_cd4.rds dataset from this tutorial.
Is this running fine on your end? Jack |
Hi, It works for me. The "multi-argument returns are not permitted" is likely due to the tryCatch error message, which I just removed. I'm not sure what error was thrown on your end -- can you run it again, optionally without the tryCatch, to see what's the problem?
|
Hmm, odd. New error, but this time:
Having a closer look, in the
|
Can you
Thanks! |
|
The tryCatch block itself shouldn't cause errors and should be included for safe cluster shutdown. If you can run it with the tryCatch block, then this should be good to merge. Otherwise we need to find the underlying problem. |
Yup -- looks like I caused an issue with the %>% dependency when I was running it. Anyway, it all looks to be working well now, so have merged everything. Thanks a bunch for that, it was really useful |
It may be worth noting that the greatest speedup comes from running many pathways (eg 1000+). With only 50 pathways, as in the tutorial, the processes spawn time begins to exceed actual execution time. |
Yeah, good point -- I'll add some more benchmarking with increasing gene set sizes |
Small usability point - I would remove the parallel parameter and instead set cores=1 as default. If cores > 1, then use parallel processing. This avoids an extra parameter and user confusion. |
Hmm yeah, I think that's probably best on reflection. I'll change it up in the next version |
This resolves #6 and #17.