Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expand and update examples, improve spmm performance #89

Merged
merged 44 commits into from
May 30, 2024

Conversation

rileyjmurray
Copy link
Contributor

@rileyjmurray rileyjmurray commented Apr 17, 2024

Changes to examples

  • The total least squares examples now run the classical algorithm in addition to the randomized algorithm. We compare runtime and solution quality for the two methods.
  • I've added three examples for low-rank approximation of sparse matrices.
    • QB-based SVD of randomly generated synthetic test matrices (rank one plus noise).
    • QB-based SVD of any sparse matrix in Matrix Market format.
    • Low-rank QRCP of a sparse matrix in Matrix Market format.

Changes to sparse matrix functionality

  • I've added two kernel implementations for SPMM of row-major data. This was needed to address cache inefficiencies revealed in the existing SPMM kernels during low-rank QRCP benchmarking.
  • I've removed the requirement for A.reserve((int64_t) 10) being able to execute for a matrix A that's compatible with the SpMatrix concept. Apparently this didn't work with sparse matrices marked as const.

I've also added two files of developer notes: RandBLAS/DevNotes.md and RandBLAS/sparse_data/DevNotes.md.

@CLAassistant
Copy link

CLAassistant commented Apr 19, 2024

CLA assistant check
All committers have signed the CLA.

@rileyjmurray rileyjmurray changed the title WIP: update examples Expand and update examples May 30, 2024
@rileyjmurray rileyjmurray changed the title Expand and update examples Expand and update examples, improve spmm performance May 30, 2024
@rileyjmurray rileyjmurray merged commit 9d0a03f into main May 30, 2024
5 checks passed
@rileyjmurray rileyjmurray deleted the 24-04-examples branch May 30, 2024 11:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants