Skip to content
Snippets Groups Projects
  1. Jun 23, 2021
    • Sebastian Schmitt's avatar
      Fix typo (#1592) · 9155ee45
      Sebastian Schmitt authored
      9155ee45
    • Benjamin Cumming's avatar
      Add optional target-specific configuration for CMake (#1586) · bcd2ca1e
      Benjamin Cumming authored
      - Add an optional CMake option `ARB_CXX_FLAGS_TARGET` for setting target-specific flags to use when compiling for the target architecture (not applied to compilation of modcc).
      - If `ARB_ARCH=="none"` CMake will not add architecture-specific `mtune/march/mcpu` flags
      - Remove `ARB_CXXOPT_ARCH` from the installed `arbor-config.cmake`, and replace with more general `ARB_CXX_FLAGS_TARGET`.
      - Update spack `package.py` to use this feature to pass custom flags.
      
      Fixes #1519
      Fixes #1522 
      
      Replaces PR #1518 
      bcd2ca1e
  2. Jun 22, 2021
  3. Jun 21, 2021
    • Nora Abi Akar's avatar
      Fix stack overflow bug in the task system (#1583) · 8afe2594
      Nora Abi Akar authored
      
      * Turn each task queue in the task system into a finite set of queues of increasing priority. The number of queues is a compile-time constant, currently two.
      * When a task of priority higher than that of the highest priority queue is scheduled, execute it synchronously.
      * When scheduling tasks in a task group, use a priority one higher than that of the calling task; when waiting on the task group, work only on tasks with this priority or higher. This is sufficient to avoid the deep recursion issue seen in issue #1570.
      
      Fixes #1570.
      Co-authored-by: default avatarSam Yates <yates@cscs.ch>
      8afe2594
  4. Jun 18, 2021
    • thorstenhater's avatar
      Fix SEGV in simulation with default `cable_cell` (#1543) · 250cce4f
      thorstenhater authored
      * Skip relevant corner cases in the matrix solver.
      * Minor clean-ups in `make_span`.
      * Add regression test for bug, additional unit tests for `span` and `make_span`.
      
      Closes #1540.
      250cce4f
    • Nora Abi Akar's avatar
      Labels instead of indices for placeable item identfication. (#1504) · e0e18976
      Nora Abi Akar authored
      New structs and types:
      * `cell_tag_type` (std::string): for labelling placeable items on a cell. The label refers to a number of items placed on a locset, equal to the number of locations in a locset. The number of locations in not always known to the user, so the previous way of using indices for items was no longer sufficient. 
      * `lid_selection_policy`: for allowing a user to select a single item from a group of items sharing a label. Currently only `round_robin` and `assert_univalent` are supported. 
      * `cell_local_label_type` and `cell_global_label_type`: for identifying the target and source of a connection or gap_junction connection. 
      * `cell_label_ranges`, and `cell_labels_and_gids`: for propagating information about the labelled items on the cell from the cell groups back to the simulation and communicator. 
      * `label_resolution_map` and `resolver`: for selecting an item (and retaining state) from a labelled group of items on a cell according to a user-selected policy.
      
      Changes to the model-initialization: 
      * The `communicator` now needs `label_resolution_maps` constructed from the cell group data in order to build the `connections` vectors. 
      * The `simulation_state` object handles the transfer of the information when it is constructed. 
      * Spike exchange at runtime remains unchanged, because `communicator::connections` remains unchanged. 
      
      Changes to cells, cell_groups and recipe:
      * `decor::place` expects a third label parameter, no longer returns an `lid_range`.
      * `lif`, `source`, and `benchmark` cells need source/target labels in their constructors. 
      * A `cell_group` needs to save data about the gid/labels/lid_ranges of each cell, to propagate back to the `communicator` constructor. 
      * Connections/gap junction connections are formed between {label, policy} pairs on cells instead of indices. 
      * `num_sources`, `num_targets`, `num_gap_junction_sites` deleted from `recipe`.
      
      Additional changes:
      * Add MPI wrapper for exchanging vectors of strings. 
      * Corresponding updates to unit tests, Python wrapper, C++ and Python examples, documentation.
      
      Fixes #1394
      e0e18976
  5. Jun 16, 2021
  6. Jun 08, 2021
  7. Jun 02, 2021
  8. Jun 01, 2021
  9. May 31, 2021
  10. May 27, 2021
  11. May 26, 2021
  12. May 19, 2021
    • Benjamin Cumming's avatar
      Add Fujitsu ARM-SVE CI test (#1512) · 1d8e799f
      Benjamin Cumming authored
      Add a CI test for ARM-SVE
      
      - compiles and runs the unit tests with vectorization enabled for the `armv8.2-a+sv` architecture
      - uses a dedicated gitlab runner on ault.cscs.ch
      
      Fixes #1498
      1d8e799f
  13. May 18, 2021
  14. May 17, 2021
  15. May 10, 2021
  16. May 04, 2021
  17. May 03, 2021
  18. Apr 29, 2021
  19. Apr 23, 2021