diff options
author | Lars Buitinck <larsmans@gmail.com> | 2014-01-12 17:34:10 +0100 |
---|---|---|
committer | Lars Buitinck <larsmans@gmail.com> | 2014-01-14 20:33:15 +0100 |
commit | 7488ebeee75f98a01dc6c9bab6e98e254ff54c95 (patch) | |
tree | 4630a48c8ccbfc5d11e067ebf2b9afd48b9430ee /site.cfg.example | |
parent | 4b4796a35dfafbc4e037a5f1cd4a26d6a2e17f41 (diff) | |
download | numpy-7488ebeee75f98a01dc6c9bab6e98e254ff54c95.tar.gz |
DOC: site.cfg: warn against OpenBLAS and multiprocessing
Fixes #654 by not fixing it; I don't think NumPy *can* actually fix
the problem as it's a design flaw in Python's multiprocessing. Listed
various alternatives (Python 3.4 forkserver, single-threaded OpenBLAS,
Python threading).
Diffstat (limited to 'site.cfg.example')
-rw-r--r-- | site.cfg.example | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/site.cfg.example b/site.cfg.example index 4cf4a33a4..df74f0118 100644 --- a/site.cfg.example +++ b/site.cfg.example @@ -83,6 +83,17 @@ # for your configuration (in the following example we installed OpenBLAS with # ``make install PREFIX=/opt/OpenBLAS``. # +# **Warning**: OpenBLAS, by default, is built in multithreaded mode. Due to the +# way Python's multiprocessing is implemented, a multithreaded OpenBLAS can +# cause programs using both to hang as soon as a worker process is forked on +# POSIX systems (Linux, Mac). Python 3.4 will introduce a new feature in +# multiprocessing, called the "forkserver", which solves this problem. For +# older versions, either compile OpenBLAS with multithreading turned off or +# use Python threads instead of multiprocessing. +# (This problem does not exist with multithreaded ATLAS.) +# +# http://docs.python.org/3.4/library/multiprocessing.html#contexts-and-start-methods +# # [openblas] # libraries = openblas # library_dirs = /opt/OpenBLAS/lib |