группа утверждения не - PullRequest
0 голосов
/ 28 апреля 2019

Я пытаюсь запустить конвейер предварительной обработки, используя nipype, и получаю следующее сообщение об ошибке:

Traceback (most recent call last):
  File "preprocscript.py", line 211, in <module>
    preproc.run('MultiProc', plugin_args={'n_procs': 8})
  File "/sw/anaconda/3/lib/python3.6/site-packages/nipype/pipeline/engine/workflows.py", line 579, in run
    runner = plugin_mod(plugin_args=plugin_args)
  File "/sw/anaconda/3/lib/python3.6/site-packages/nipype/pipeline/plugins/multiproc.py", line 162, in __init__
    initargs=(self._cwd,)
  File "/sw/anaconda/3/lib/python3.6/multiprocessing/pool.py", line 175, in __init__
    self._repopulate_pool()
  File "/sw/anaconda/3/lib/python3.6/multiprocessing/pool.py", line 236, in _repopulate_pool
    self._wrap_exception)
  File "/sw/anaconda/3/lib/python3.6/multiprocessing/pool.py", line 250, in _repopulate_pool_static
    wrap_exception)
  File "/sw/anaconda/3/lib/python3.6/multiprocessing/process.py", line 73, in __init__
    assert group is None, 'group argument must be None for now'
AssertionError: group argument must be None for now

и я не уверен, что именно может быть не так в моем коде, что приводит к этому, или это проблема моего программного обеспечения. Я нахожусь в системе Linux и использую Python 3.6.

1 Ответ

0 голосов
/ 29 апреля 2019

Используемый вами модуль содержит ProcessPoolExecuter. В Python 3.7 они добавили некоторые дополнительные аргументы к этому классу, а именно initargs, который вызывается в многопроцессорном модуле nipype , который вы используете. К сожалению, он не имеет обратной совместимости с 3.6, и они не писали другим способом, чтобы использовать этот модуль.

Вы можете обновить или не использовать многопроцессорную часть nipype.

...