Skip to content

Installation instructions for standalone fmriprep are out of date, causing crashes. #2008

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

Closed
bbfrederick opened this issue Feb 28, 2020 · 2 comments
Milestone

Comments

@bbfrederick
Copy link
Contributor

bbfrederick commented Feb 28, 2020

We've recently updated our standalone fmriprep installation fmriprep 1.5.8 (and will now go to 20.0.x) from 1.4.1. We have found that AROMA processing crashes with the following error:

`
Node Name: fmriprep_wf.single_subject_017_wf.func_preproc_task_session3_wf.ica_aroma_wf.ica_aroma
File: /data/latncase/MDD_STRESS/fmriprep/test_ERISONE2/derivatives/fmriprep/sub-017/log/20200227-134551_1da3a78f-5ea2-4ce5-90ee-b7f94ab0e167/crash-20200228-001011-mai14-ica_aroma-2e188a62-9b80-471c-8dbc-0dfcb69d4583.txt
Working Directory: /data/latncase/MDD_STRESS/fmriprep/work/fmriprep_wf/single_subject_017_wf/func_preproc_task_session3_wf/ica_aroma_wf/ica_aroma
Inputs:

TR: 2.0
args: -np
compress_report: auto
denoise_type: nonaggr
dim:
environ: {}
feat_dir:
fnirt_warp_file:
in_file:
mask:
mat_file:
melodic_dir:
motion_parameters:
out_dir: out
out_report: ica_aroma_reportlet.svg
report_mask:
Traceback (most recent call last):
File "/PHShome/bbf2/software/anaconda3/envs/fmriprep158/lib/python3.7/site-packages/nipype/pipeline/plugins/legacymultiproc.py", line 67, in run_node
result["result"] = node.run(updatehash=updatehash)
File "/PHShome/bbf2/software/anaconda3/envs/fmriprep158/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 516, in run
result = self._run_interface(execute=True)
File "/PHShome/bbf2/software/anaconda3/envs/fmriprep158/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 635, in _run_interface
return self._run_command(execute)
File "/PHShome/bbf2/software/anaconda3/envs/fmriprep158/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 741, in _run_command
result = self._interface.run(cwd=outdir)
File "/PHShome/bbf2/software/anaconda3/envs/fmriprep158/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 397, in run
runtime = self._run_interface(runtime)
File "/PHShome/bbf2/software/anaconda3/envs/fmriprep158/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 792, in _run_interface
self.raise_exception(runtime)
File "/PHShome/bbf2/software/anaconda3/envs/fmriprep158/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 723, in raise_exception
).format(**runtime.dictcopy())
RuntimeError: Command:
ICA_AROMA.py -tr 2.000 -np -den nonaggr -i /data/latncase/MDD_STRESS/fmriprep/work/fmriprep_wf/single_subject_017_wf/func_preproc_task_session3_wf/ica_aroma_wf/smooth/vol0000_xform-00000_merged_smooth.nii.gz -m /data/latncase/MDD_STRESS/fmriprep/work/fmriprep_wf/single_subject_017_wf/func_preproc_task_session3_wf/bold_std_trans_wf/_key_MNI152NLin6Asym/mask_std_tfm/ref_bold_corrected_brain_mask_maths_trans.nii.gz -meldir /data/latncase/MDD_STRESS/fmriprep/work/fmriprep_wf/single_subject_017_wf/func_preproc_task_session3_wf/ica_aroma_wf/melodic -mc /data/latncase/MDD_STRESS/fmriprep/work/fmriprep_wf/single_subject_017_wf/func_preproc_task_session3_wf/bold_hmc_wf/normalize_motion/motion_params.txt -o /data/latncase/MDD_STRESS/fmriprep/work/fmriprep_wf/single_subject_017_wf/func_preproc_task_session3_wf/ica_aroma_wf/ica_aroma/out
Standard output:

------------------------------- RUNNING ICA-AROMA -------------------------------
--------------- 'ICA-based Automatic Removal Of Motion Artifacts' ---------------

Standard error:
usage: ICA_AROMA.py [-h] -o OUTDIR [-i INFILE] [-mc MC] [-a AFFMAT] [-w WARP]
[-m MASK] [-f INFEAT] [-tr TR] [-den DENTYPE] [-md MELDIR]
[-dim DIM]
ICA_AROMA.py: error: unrecognized arguments: -np
Return code: 2
`
The '-np' option does not exist in ICA-AROMA-0.4.1beta (what is listed in the documentation).

This error does not occur on the containerized version of fmriprep. Comparing the Dockerfile to the documented requirements, it seems that:

  1. ICA-AROMA-0.4.5 is the appropriate version.
  2. bids-validator should be version 1.4.0, not 1.1.0.
  3. c3d is no longer a dependency.

I've fixed a local copy of installation.rst (and an unrelated typo in CONTRIBUTING.md), and would be happy to do a pull request with the fix.

Blaise

@effigies
Copy link
Member

@bbfrederick A PR would be most welcome. Thank you for working through this.

We've talked a couple times about trying to make ICA-AROMA a bit more friendly to install and use (basically put on PyPI), but none of us has had the bandwidth to take on another maintenance project.

@bbfrederick
Copy link
Contributor Author

PR submitted.

You could make wget a prerequisite, then have a script that just fetches the appropriate precompiled binaries from wherever as an intermediate step. But yeah, somebody would have to write and test it.

I'm a complete convert to the containerized distribution. Unfortunately, I use two HPC's and one won't allow me to use it in singularity because of security concerns (Them: "We don't have the bandwidth to hand check every version of every container for malicious software." Me: "That's the whole point of singularity - it doesn't let me do anything I couldn't do already, so why would you have to check it?" Them: "Well, we don't know that. We have to do a careful examination of the issue and we don't have the bandwidth to do that either".) I opened a ticket to install it in July of 2019, and they're still "looking into it". Actually, they just closed my ticket, so I guess they aren't.

The second cluster would be fine with me installing it, except the entire cluster runs on Centos 6 (singularity needs Centos 7 minimum) and they have no timeline for upgrading (SMH).

So standalone it is for the time being.

@mgxd mgxd added this to the 20.0.2 milestone Feb 28, 2020
@mgxd mgxd closed this as completed Mar 4, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants