Nengo_mpi requirement

Hello,

I’m working on certain project which will possibly require nengo_mpi. Does it require Python 2.6?

While patching user@ubuntu-test4:~/.local/nengo-mpi$ pip install --user . it gives the below error.

Building wheels for collected packages: nengo-mpi
Building wheel for nengo-mpi (setup.py) … error
ERROR: Command errored out with exit status 1:
command: /usr/bin/python3 -u -c ‘import sys, setuptools, tokenize; sys.argv[0] = ‘"’"’/tmp/pip-req-build-dz4nepzk/setup.py’“'”‘; file=’“'”‘/tmp/pip-req-build-dz4nepzk/setup.py’“'”‘;f=getattr(tokenize, ‘"’“‘open’”’“‘, open)(file);code=f.read().replace(’”‘"’\r\n’“'”‘, ‘"’"’\n’“'”‘);f.close();exec(compile(code, file, ‘"’“‘exec’”’"‘))’ bdist_wheel -d /tmp/pip-wheel-kw_bqxu9
cwd: /tmp/pip-req-build-dz4nepzk/
Complete output (124 lines):
running bdist_wheel
running build
running build_py
creating build
creating build/lib
creating build/lib/nengo_mpi
copying nengo_mpi/about.py → build/lib/nengo_mpi
copying nengo_mpi/native.py → build/lib/nengo_mpi
copying nengo_mpi/init.py → build/lib/nengo_mpi
copying nengo_mpi/simulator.py → build/lib/nengo_mpi
copying nengo_mpi/main.py → build/lib/nengo_mpi
copying nengo_mpi/utils.py → build/lib/nengo_mpi
copying nengo_mpi/spaun_mpi.py → build/lib/nengo_mpi
copying nengo_mpi/model.py → build/lib/nengo_mpi
creating build/lib/nengo_mpi/partition
copying nengo_mpi/partition/metis.py → build/lib/nengo_mpi/partition
copying nengo_mpi/partition/init.py → build/lib/nengo_mpi/partition
copying nengo_mpi/partition/work_balanced.py → build/lib/nengo_mpi/partition
copying nengo_mpi/partition/random.py → build/lib/nengo_mpi/partition
copying nengo_mpi/partition/base.py → build/lib/nengo_mpi/partition
copying nengo_mpi/partition/split_ea.py → build/lib/nengo_mpi/partition
creating build/lib/nengo_mpi/tests
copying nengo_mpi/tests/test_mpi.py → build/lib/nengo_mpi/tests
copying nengo_mpi/tests/options.py → build/lib/nengo_mpi/tests
copying nengo_mpi/tests/init.py → build/lib/nengo_mpi/tests
copying nengo_mpi/tests/test_simulator.py → build/lib/nengo_mpi/tests
copying nengo_mpi/tests/test_cpp.py → build/lib/nengo_mpi/tests
copying nengo_mpi/tests/utils.py → build/lib/nengo_mpi/tests
copying nengo_mpi/tests/test_refimpl.py → build/lib/nengo_mpi/tests
copying nengo_mpi/tests/conftest.py → build/lib/nengo_mpi/tests
copying nengo_mpi/tests/test_native_operators.py → build/lib/nengo_mpi/tests
installing to build/bdist.linux-x86_64/wheel
running install
running install_lib
creating build/bdist.linux-x86_64
creating build/bdist.linux-x86_64/wheel
creating build/bdist.linux-x86_64/wheel/nengo_mpi
creating build/bdist.linux-x86_64/wheel/nengo_mpi/partition
copying build/lib/nengo_mpi/partition/metis.py → build/bdist.linux-x86_64/wheel/nengo_mpi/partition
copying build/lib/nengo_mpi/partition/init.py → build/bdist.linux-x86_64/wheel/nengo_mpi/partition
copying build/lib/nengo_mpi/partition/work_balanced.py → build/bdist.linux-x86_64/wheel/nengo_mpi/partition
copying build/lib/nengo_mpi/partition/random.py → build/bdist.linux-x86_64/wheel/nengo_mpi/partition
copying build/lib/nengo_mpi/partition/base.py → build/bdist.linux-x86_64/wheel/nengo_mpi/partition
copying build/lib/nengo_mpi/partition/split_ea.py → build/bdist.linux-x86_64/wheel/nengo_mpi/partition
copying build/lib/nengo_mpi/about.py → build/bdist.linux-x86_64/wheel/nengo_mpi
copying build/lib/nengo_mpi/native.py → build/bdist.linux-x86_64/wheel/nengo_mpi
copying build/lib/nengo_mpi/init.py → build/bdist.linux-x86_64/wheel/nengo_mpi
copying build/lib/nengo_mpi/simulator.py → build/bdist.linux-x86_64/wheel/nengo_mpi
copying build/lib/nengo_mpi/main.py → build/bdist.linux-x86_64/wheel/nengo_mpi
creating build/bdist.linux-x86_64/wheel/nengo_mpi/tests
copying build/lib/nengo_mpi/tests/test_mpi.py → build/bdist.linux-x86_64/wheel/nengo_mpi/tests
copying build/lib/nengo_mpi/tests/options.py → build/bdist.linux-x86_64/wheel/nengo_mpi/tests
copying build/lib/nengo_mpi/tests/init.py → build/bdist.linux-x86_64/wheel/nengo_mpi/tests
copying build/lib/nengo_mpi/tests/test_simulator.py → build/bdist.linux-x86_64/wheel/nengo_mpi/tests
copying build/lib/nengo_mpi/tests/test_cpp.py → build/bdist.linux-x86_64/wheel/nengo_mpi/tests
copying build/lib/nengo_mpi/tests/utils.py → build/bdist.linux-x86_64/wheel/nengo_mpi/tests
copying build/lib/nengo_mpi/tests/test_refimpl.py → build/bdist.linux-x86_64/wheel/nengo_mpi/tests
copying build/lib/nengo_mpi/tests/conftest.py → build/bdist.linux-x86_64/wheel/nengo_mpi/tests
copying build/lib/nengo_mpi/tests/test_native_operators.py → build/bdist.linux-x86_64/wheel/nengo_mpi/tests
copying build/lib/nengo_mpi/utils.py → build/bdist.linux-x86_64/wheel/nengo_mpi
copying build/lib/nengo_mpi/spaun_mpi.py → build/bdist.linux-x86_64/wheel/nengo_mpi
copying build/lib/nengo_mpi/model.py → build/bdist.linux-x86_64/wheel/nengo_mpi
running install_egg_info
running egg_info
creating nengo_mpi.egg-info
writing nengo_mpi.egg-info/PKG-INFO
writing dependency_links to nengo_mpi.egg-info/dependency_links.txt
writing requirements to nengo_mpi.egg-info/requires.txt
writing top-level names to nengo_mpi.egg-info/top_level.txt
writing manifest file ‘nengo_mpi.egg-info/SOURCES.txt’
reading manifest file ‘nengo_mpi.egg-info/SOURCES.txt’
writing manifest file ‘nengo_mpi.egg-info/SOURCES.txt’
Copying nengo_mpi.egg-info to build/bdist.linux-x86_64/wheel/nengo_mpi-0.1.0.dev0.egg-info
running install_scripts
running install_mpi
running build_mpi
running config_mpi
MPI configuration: [mpi] from ‘mpi.cfg’
MPI C compiler: /usr/bin/mpicxx.openmpi
MPI C++ compiler: /usr/bin/mpicxx.openmpi
/usr/bin/mpicxx.openmpi -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/hdf5/openmpi/ -c _configtest.c -o _configtest.o
/usr/bin/mpicxx.openmpi -pthread _configtest.o -lhdf5_openmpi -lcblas -ldl -lm -o _configtest
success!
removing: _configtest.c _configtest.o _configtest
/usr/bin/mpicxx.openmpi -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/hdf5/openmpi/ -c _configtest.cxx -o _configtest.o
/usr/bin/mpicxx.openmpi -pthread _configtest.o -lhdf5_openmpi -lcblas -ldl -lm -o _configtest
success!
removing: _configtest.cxx _configtest.o _configtest
/tmp/pip-req-build-dz4nepzk/setup.py:302: DeprecationWarning:

`numpy.distutils` is deprecated since NumPy 1.23.0, as a result
of the deprecation of `distutils` itself. It will be removed for
Python >= 3.12. For older Python versions it will remain present.
It is recommended to use `setuptools < 60.0` for those Python versions.
For more details, see:
  https://numpy.org/devdocs/reference/distutils_status_migration.html


from numpy.distutils.misc_util import get_numpy_include_dirs

Creating concrete makefile: mpi_sim/Makefile.configured
Building mpi_sim.so, nengo_mpi and nengo_cpp.
Running command: make all -f Makefile.configured EXE_DEST=…/build LIB_DEST=…/build
/usr/bin/mpicxx.openmpi -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -std=c++11 -fPIC -c -o nengo_cpp.o nengo_cpp.cpp
/usr/bin/mpicxx.openmpi -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -std=c++11 -fPIC -c -o signal.o signal.cpp
/usr/bin/mpicxx.openmpi -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -std=c++11 -fPIC -c -o operator.o operator.cpp
/usr/bin/mpicxx.openmpi -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -std=c++11 -fPIC -c -o simulator.o simulator.cpp
/usr/bin/mpicxx.openmpi -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -std=c++11 -fPIC -c -o spec.o spec.cpp
/usr/bin/mpicxx.openmpi -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -std=c++11 -fPIC -c -o spaun.o spaun.cpp
/usr/bin/mpicxx.openmpi -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -std=c++11 -fPIC -c -o probe.o probe.cpp
/usr/bin/mpicxx.openmpi -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -std=c++11 -fPIC -c -o chunk.o chunk.cpp
/usr/bin/mpicxx.openmpi -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -std=c++11 -fPIC -c -o sim_log.o sim_log.cpp
/usr/bin/mpicxx.openmpi -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -std=c++11 -fPIC -c -o debug.o debug.cpp
/usr/bin/mpicxx.openmpi -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -std=c++11 -fPIC -c -o utils.o utils.cpp
/usr/bin/mpicxx.openmpi -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -std=c++11 -fPIC -c -o mpi_simulator.o mpi_simulator.cpp
/usr/bin/mpicxx.openmpi -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -std=c++11 -fPIC -c -o mpi_operator.o mpi_operator.cpp
/usr/bin/mpicxx.openmpi -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -std=c++11 -fPIC -c -o psim_log.o psim_log.cpp
/usr/bin/mpicxx.openmpi -o …/build/nengo_cpp nengo_cpp.o signal.o operator.o simulator.o spec.o spaun.o probe.o chunk.o sim_log.o debug.o utils.o mpi_simulator.o mpi_operator.o psim_log.o -DNDEBUG -O3 -std=c++11 -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -lhdf5_openmpi -lcblas -ldl -lm
/usr/bin/mpicxx.openmpi -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -std=c++11 -fPIC -c -o nengo_mpi.o nengo_mpi.cpp
/usr/bin/mpicxx.openmpi -o …/build/nengo_mpi nengo_mpi.o signal.o operator.o simulator.o spec.o spaun.o probe.o chunk.o sim_log.o debug.o utils.o mpi_simulator.o mpi_operator.o psim_log.o -DNDEBUG -O3 -std=c++11 -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -lhdf5_openmpi -lcblas -ldl -lm
/usr/bin/mpicxx.openmpi -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -std=c++11 -fPIC -c -o _mpi_sim.o _mpi_sim.cpp
/usr/bin/mpicxx.openmpi -o …/build/mpi_sim.so signal.o operator.o simulator.o spec.o spaun.o probe.o chunk.o sim_log.o debug.o utils.o mpi_simulator.o mpi_operator.o psim_log.o _mpi_sim.o -shared -DNDEBUG -O3 -std=c++11 -I/usr/include/hdf5/openmpi/ -I/usr/include/python3.8 -I/home/user/.local/lib/python3.8/site-packages/numpy/core/include -lhdf5_openmpi -lcblas -ldl -lm
Command complete.
Copying nengo_mpi to build/bdist.linux-x86_64/wheel/nengo_mpi-0.1.0.dev0.data/scripts.
error: [Errno 2] No such file or directory: ‘build/bdist.linux-x86_64/wheel/nengo_mpi-0.1.0.dev0.data/scripts’

ERROR: Failed building wheel for nengo-mpi

Could anyone assist on this please.

Thank you
Ishkhan

Hello,

nengo_mpi issue still persist, would appreciate if someone could get back on the topic.

Nevertheless seems there is a workaround. Python’s mpi4py so far works for me. In case if somebody else faces similar issue with nengo_mpi.

Thank you
Ishkhan