-
Notifications
You must be signed in to change notification settings - Fork 0
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
Gridsearch nkg #127
Gridsearch nkg #127
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A handful of comments, but otherwise, looks great 👍
I've moved non-universal default values out of the invoker python script and into the shell script. I think it makes more sense for people to keep personal shell script around for their preferred arguments, rather than hard-code them as defaults in the python gridsearch invoker itself However this does mean one can't just run |
I've now created invokers/sh/gridsearch.sh which runs the .py invoker with the arguments. A bit of indirection, but I think it helps keep things clean and flexible. Sorry for post-request changes @neukym! |
It looks good. I have a couple of minor suggestions but I just need to think about them. Can you confirm this works with inverse_operator present though? For me it takes longer than 10 mins on lws-gpu, and I have to stop it. Can we print out some sort of basic progress indicator - I thought ollie had got it to 3 mins or so? |
Also can we automatically create |
I'll verify this. (It doesn't error out, but I haven't run it through yet - it's going now.) |
To confirm, this now works very quickly, even for hexel space (3.30 seconds) 👍 Ready to merge, awaiting @ollieparish's confirmation. |
Happy with this too, happy to merge but still not convinced about requiring certain parser options to be passed when running, especially as (I'm assuming) this will be run on the login nodes running random functions on sensor space, having a baseline and then only changing 1 or 2 things is quite helpful (for me at least) |
Agreed 👍 let's hold off from merging until @caiw is with us on Friday. |
Happy to discuss this! If you're talking about removing arguments' default values, thereby requiring them to be supplied at the cli, my thinking was as follows: It's better to have the gridsearch functions themselves, and the cli invoker, be agnostic to any one specific analysis project, and more just library code. Certain things can have default values if they make sense as a generic default for all (i.e. "we recommend this" or "you'd need a reason to change this", like Otherwise we have the situation where:
When running repeated analyses for a given project project, one can have a separate shell/python script which calls the gridsearch function, providing default params, and allowing rapid re-running only changing one or two things. E.g. I might have a I'm not religious on these points, but that was my thinking. If I've misunderstood the point: sorry, and happy to discuss what you actually meant :) |
We have agreed to remove requirements (and reinsert defaults) - but that in the long run, everything will be done via config files, but with CLI argument overrides (documented in #137). |
When we've tracked down the bug with the mismatched hemisphere sizes, I'm happy for this to be merged in |
submit_gridsearch.sh
Outdated
@@ -18,19 +18,23 @@ | |||
args=(5) # 2 3 4 5 6 7 8 9 10) | |||
ARG=${args[$SLURM_ARRAY_TASK_ID - 1]} | |||
|
|||
# This gets the directory of the toolbox, assuming that *this file you're reading right now* is in the root directory of | |||
# the toolbox | |||
TOOLBOX_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unfortunately this doesn't work on the queue:
'/usr/bin/bash: line 1: cd: /var/spool/slurm/job3347806: No such file or directory'
Switching back.
Changes
expression_plot()
code to do plotting of p-values.Note
#TODO
s.