FMRIPREP - An unknown Error occuring during the preprocessing

Hi everyone,

I am very new using fmriprep and the different kind of errors that are generated seems very obscure to me…

So, maybe someone can help me on this one. After processing one subject for few hours (without recon-all and multislicing), here are the lines generated. I understand that something goes wrong with a file name or a path?? I don’t know…

Thank you very much,

Mathieu

[Node] Finished “fmriprep_wf.single_subject_02_wf.func_preproc_task_actobs_run_03_wf.bold_mni_trans_wf.mask_mni_tfm”.180915-20:15:06,536 nipype.workflow INFO:
[Node] Setting-up “fmriprep_wf.single_subject_02_wf.func_preproc_task_actobs_run_03_wf.bold_mni_trans_wf.bold_to_mni_transform” in “/tmp/work/fmriprep_wf/single_subject_02_wf/func_preproc_task_actobs_run_03_wf/bold_mni_trans_wf/bold_to_mni_transform”.
180915-20:15:06,546 nipype.workflow INFO:
[Node] Running “bold_to_mni_transform” (“fmriprep.interfaces.itk.MultiApplyTransforms”)
180916-16:19:59,986 nipype.workflow INFO:
[Node] Finished “fmriprep_wf.single_subject_02_wf.func_preproc_task_actobs_run_04_wf.bold_mni_trans_wf.bold_to_mni_transform”.
Process Process-4:
Traceback (most recent call last):
File “/usr/local/miniconda/lib/python3.6/multiprocessing/process.py”, line 258, in _bootstrap
self.run()
File “/usr/local/miniconda/lib/python3.6/multiprocessing/process.py”, line 93, in run
self._target(*self._args, **self._kwargs)
File “/usr/local/miniconda/lib/python3.6/concurrent/futures/process.py”, line 169, in _process_worker
call_item = call_queue.get(block=True)
File “/usr/local/miniconda/lib/python3.6/multiprocessing/queues.py”, line 113, in get
return _ForkingPickler.loads(res)
File “/usr/local/miniconda/lib/python3.6/site-packages/traits/has_traits.py”, line 1440, in setstate
self.trait_set( trait_change_notify = trait_change_notify, **state )
File “/usr/local/miniconda/lib/python3.6/site-packages/traits/has_traits.py”, line 1543, in trait_set
setattr( self, name, value )
File “/usr/local/miniconda/lib/python3.6/site-packages/nipype/interfaces/base/traits_extension.py”, line 112, in validate
self.info_text, value))
traits.trait_errors.TraitError: The trait ‘header_source’ of a MergeInputSpec instance is an existing file name, but the path ‘’ does not exist.
exception calling callback for <Future at 0x7fdb88b81ef0 state=finished raised BrokenProcessPool>
Traceback (most recent call last):
File “/usr/local/miniconda/lib/python3.6/concurrent/futures/_base.py”, line 324, in _invoke_callbacks
callback(self)
File “/usr/local/miniconda/lib/python3.6/site-packages/nipype/pipeline/plugins/multiproc.py”, line 143, in _async_callback
result = args.result()
File “/usr/local/miniconda/lib/python3.6/concurrent/futures/_base.py”, line 425, in result
return self.__get_result()
File “/usr/local/miniconda/lib/python3.6/concurrent/futures/_base.py”, line 384, in __get_result
raise self._exception
concurrent.futures.process.BrokenProcessPool: A process in the process pool was terminated abruptly while the future was running or pending.
exception calling callback for <Future at 0x7fdb88ca7da0 state=finished raised BrokenProcessPool>
Traceback (most recent call last):
File “/usr/local/miniconda/lib/python3.6/concurrent/futures/_base.py”, line 324, in _invoke_callbacks
callback(self)
File “/usr/local/miniconda/lib/python3.6/site-packages/nipype/pipeline/plugins/multiproc.py”, line 143, in _async_callback
result = args.result()
File “/usr/local/miniconda/lib/python3.6/concurrent/futures/_base.py”, line 425, in result
return self.__get_result()
File “/usr/local/miniconda/lib/python3.6/concurrent/futures/_base.py”, line 384, in __get_result
raise self._exception
concurrent.futures.process.BrokenProcessPool: A process in the process pool was terminated abruptly while the future was running or pending.

This is likely a memory error. Please check:

and

first.

Also, it would be nice to have the title of your post edited to include “FMRIPrep” somewhere, and that you tagged the post with “fmriprep” as well.

Please let us know any outcome of your troubleshooting (hopefully those threads will give you the solution).

Cheers,
Oscar

Dear Oscar,

Thanks for your answer. I rerun another subject today and had the same error as as I reported this morning.

If this is a memory problem, I have certainly missed something. I changed some parameters in the docker (I am on Windows 12) and I have now 2 CPU and 25856 MB allocated to the docker. Is there another thing to do with memory?

I ran this command line:

docker run -ti --rm -v D:\ActObs:/data:ro -v D:\fmriprep:/out -v $FREESURFER_HOME/license.txt:/opt/freesurfer/license.txt poldracklab/fmriprep:latest /data /out/out participant --partici
pant-label 02 --ignore slicetiming

Thanks a lot,

Mathieu

I would try first adding --nthreads 1 --omp-nthreads 2. If you still experience problems, then try also adding --low-mem.

You can add these options after the --ignore slicetiming argument.

I lauched a new subject (including recon-all)
I won’t be at lab before Friday, I will give you a feedback at this moment.
Thanks a lot for your help!
Mathieu

1 Like