kokkos / stdBLAS

Reference Implementation for stdBLAS
Other
118 stars 22 forks source link

Fix symmetric_matrix_rank_k_update, hermitian_matrix_rank_k_update, and symmetric_matrix_rank_1_update #263

Closed mhoemmen closed 8 months ago

mhoemmen commented 8 months ago

What this pull request fixes:

  1. Add a trait that identifies an ExecutionPolicy as a valid (possibly custom) execution policy. (Note that it's forbidden for users to specialize std::is_execution_policy_v.)

  2. Fix build errors when calling the following functions with or without an alpha (but no execution policy), by constraining ExecutionPolicy overloads (see #261)

    • symmetric_matrix_rank_k_update
    • hermitian_matrix_rank_k_update
    • symmetric_matrix_rank_1_update
  3. Fix actual bugs in both the with-alpha and no-alpha symmetric_matrix_rank_k_update and hermitian_matrix_rank_k_update overloads that were giving the wrong answers

  4. Drive-by fix for submdspan-related build errors in tests and examples, probably due to reference mdspan namespace changes that haven't been tested in this repository recently

What this pull request does not fix or do:

  1. Generally constrain all the ExecutionPolicy overloads of all the algorithms

Fixes #261.