I use python scripts to process and extract information from 4D images (functional MRI scans). Part of the analysis is intended for parallel operation (for each object) using the multiprocessor package:
pool = Pool(processes=numberCores)
resultList = pool.map(SubjectProcesser, argList)
They apply to various types of files and various types of analysis. For one specific type of analysis, I get the following error:
Process PoolWorker-1:
Traceback (most recent call last):
File "/home2/user/epd/epd-7.2-2-rh5-x86_64/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/home2/user/epd/epd-7.2-2-rh5-x86_64/lib/python2.7/multiprocessing/process.py", line 114, in run
self._target(*self._args, **self._kwargs)
File "/home2/surchs/epd/epd-7.2-2-rh5-x86_64/lib/python2.7/multiprocessing/pool.py", line 99, in worker
put((job, i, result))
File "/home2/user/epd/epd-7.2-2-rh5-x86_64/lib/python2.7/multiprocessing/queues.py", line 392, in put
return send(obj)
IOError: bad message length
I narrowed it to the point that it fails. Parallel processes, apparently, are performed OK (determined by viewing various debugging prints at different stages of my scripts), but then there is a failure when reassigning the results.
, . , , .
, ,
- ( , ). . timeseries - .
( ) ( ) .
, , ( ), - :
, , , , .
-, , , " ", , .
, , . , , .
. , , , .