The exceptions raised in child process will be returned to the main process, and the error is stored in _value_ of the queue. To get the backtrace in subprocesses:
http://stackoverflow.com/questions/6126007/python-getting-a-traceback-from-a-multiprocessing-process
parallelise-python-loop-with-numpy-arrays-and-shared-memory
http://stackoverflow.com/questions/13068760/parallelise-python-loop-with-numpy-arrays-and-shared-memory
http://stackoverflow.com/questions/10721915/shared-memory-objects-in-python-multiprocessing
general usage:
http://stackoverflow.com/questions/5549190/is-shared-readonly-data-copied-to-different-processes-for-python-multiprocessing