Clean up plasticity (#1985)
1. Fix Python bindings for `recipe::update` - *drop* the GIL before handing off to C++ - tighten exception safety 2. Run plasticity examples with threads; both C++ and Python. - C++: Guard against I/O interleaving. - Py: Drop spikes from source, prettify reporting. - C++: use decor chaining. 3. Modernise PYBIND11_OVERLOAD -> *RIDE (advised since 2.6). 4. No longer do we initialise connectivity twice. - Simplify communicator construction. - Fix unit tests that needed to two-phase init communicator.
Showing
- arbor/communication/communicator.cpp 4 additions, 7 deletionsarbor/communication/communicator.cpp
- arbor/communication/communicator.hpp 0 additions, 2 deletionsarbor/communication/communicator.hpp
- arbor/simulation.cpp 1 addition, 2 deletionsarbor/simulation.cpp
- example/plasticity/plasticity.cpp 28 additions, 12 deletionsexample/plasticity/plasticity.cpp
- python/example/plasticity.py 12 additions, 10 deletionspython/example/plasticity.py
- python/recipe.hpp 8 additions, 8 deletionspython/recipe.hpp
- python/simulation.cpp 11 additions, 4 deletionspython/simulation.cpp
- test/unit-distributed/test_communicator.cpp 7 additions, 5 deletionstest/unit-distributed/test_communicator.cpp
Please register or sign in to comment