Skip to content
Snippets Groups Projects
Unverified Commit a7070e36 authored by Sam Yates's avatar Sam Yates Committed by GitHub
Browse files

Enable simulation resume/restart. (#1427)

* Add start time to `epoch` struct, rename time fields to avoid confusion with tfinal parameter to `simulation_state::run()`. Default constructed epoch now has id -1.
* Replace `t_`, `epoch_`, `min_delay_` timekeeping in simulation_state with `epoch_` and `t_interval_`: `epoch_` holds most recently simulated interval.
* Split event_lane population out of exchange task.
* Document in code comments the sub-task dependencies in `simulation_state::run()`.
* Rewrite main simulation loop to abide by pre- and post-conditions that ensure correct behaviour from successive calls to
`simulation_state::run()`.
* Replace double buffer for `simulation::local_spikes_` with array, analogous to `event_lanes_`.
* Update cell groups, unit tests for new epoch interfaces.
* Remove `util::double_buffer` and test.
* Remove unnecessary includes in `mc_cell_group.hpp`.
* Add unit tests for simulation global spike callback and restart operations (i.e. successive calls to `simulat...
parent 58ce18a0
No related branches found
No related tags found
No related merge requests found
Showing
with 467 additions and 375 deletions
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment