Skip to content

v3.0.0

Latest
Compare
Choose a tag to compare
@jwbuurlage jwbuurlage released this 19 Aug 21:49

Breaking changes

  • Bulk now requires C++20.
  • bulk::index now represents indices as size_t

Added

  • Add clear_queues argument to world::sync, to optionally retain all messages
    from the previous superstep.
  • Expose clear method of queue.
  • Add DGEMM example (Cannon's algorithm).

Changed

  • Default barrier for thread backend is now std::barrier.
  • Added Barrier concept, and constrain the associated environment and
    world parameters.
  • Span based coarray puts are now based on std::span.

Removed

  • bulk::span was removed in favor of std::span.

Fixed

  • Prevent bulk::sum and bulk::product from silently truncating values (@TimoMaarse, #11)
  • Fix const correctness of bulk::product(bulk::world&, T).
  • Fix data race in shared state creation for world::split in the thread backend.
  • Explicitly cast to T* in the implementation of bulk::coarray:data.