-
Notifications
You must be signed in to change notification settings - Fork 272
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
Enable Single Regression in RSNRegression #170
Conversation
Enable a new 'single' mode of temporal regression for RSNRegression to enable applying existing results to a new CIFTI space or single regression in other contexts
global/scripts/RSNregression.m
Outdated
otherwise | ||
error(['unrecognized method: "' Method '", use "weighted" or "dual"']); | ||
error(['unrecognized method: "' Method '", use "weighted," "dual," or "single"']); |
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.
I would put the commas outside the quotes to reduce confusion, this isn't a manuscript.
global/scripts/RSNregression.sh
Outdated
matlab_args+=", 'GroupMaps', '$GroupMaps'" | ||
matlab_args+=", 'VAWeightsName', '$tempfile.91k.dscalar.nii'" |
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.
nitpick: indentation
Any other comments? |
Personally, I wouldn't have reused SpectraParams to specify an input file in this mode. |
Since it is exclusive, already there, and germane it seemed faster. |
Since this is testing and working and I want to run HCP Processing with it now, I will go ahead and commit it. |
We need to be careful with the versioning. |
That will be annoying to change the version with every commit. Can we do something more automated? |
If it needs to work in the zip files offered on the releases page, then not really. |
How do we handle this in Connectome Workbench? |
Manually there also, since debian doesn't keep the git stuff in the source tree. |
Ok, I just noticed that this was a change to a .m file. @glasserm : I've made this point before, but we can't be making changes to matlab code and merging it into the master without simultaneously recompiling the matlab. We now have a situation in which the compiled matlab is not in sync with the interpreted matlab. I'll leave it to you to work with Mike Hodge to resolve this. IMO, it would have been better to leave this change in a branch and use that for your immediate needs. Then we could deal with the compiled matlab issue on a more leisurely time frame. |
I don't think we should support compiled matlab then. |
That script doesn't currently support compiled matlab, as it happens, so it technically isn't out of sync. |
That's not a solution. The solution is simply to make use of a branch in your processing. |
The feature is ready for routine use by everyone. Unless compiled matlab can be automatically built upon commit (like Connectome Workbench is), it isn't feasible to support. We have already seen that compiled matlab has major problems with memory usage. We should be supporting interpreted matlab and a recipe for building Octave without problems + the container. |
I have no doubt that Octave is going to have a host of problems that we are completely clueless about currently. Dropping support for compiled matlab at this point in time would likely be a disaster. Fortunately, as @coalsont pointed out, |
That is not feasible without an automated build system. It is reasonable for releases but not for every commit to master. |
BTW: I think you considerably overestimate the number of people that are running the matlab stuff in interpreted mode. Most people using a cluster are probably going to need to be using either compiled matlab or Octave. |
Yes, it isn't ideal to have to worry about keeping things in sync, but we can't drop compiled matlab at this point in time; not if you want others to be able to use those scripts on their cluster computing systems (or even just without needing a potentially expensive matlab license on their local computer). |
I don't really have anything else to say about this. Things will not be in sync in master except before releases or we need an automated build system. No one manually compiles software and uploads it to a repo with every commit. |
I think the point of the master matlab compile script was so that when we are about ready to release, we can get them all synced then. Does our documentation give the impression that the master branch is the first version for users to try? |
FWIW, the binaries really shouldn't be part of the repo anyway, but that's an organizational discussion for another time. Storing a history of all the binary changes as part of the repo bloats its size. |
Enable a new 'single' mode of temporal regression for RSNRegression to enable applying existing results to a new CIFTI space or single regression in other contexts