-
-
Notifications
You must be signed in to change notification settings - Fork 131
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
Finch+PyData benchmarks #652
Conversation
31f3b9f
to
405bf3a
Compare
7d021de
to
ae598b9
Compare
fe066d5
to
e9b5a1f
Compare
e9b5a1f
to
8294fb4
Compare
fcc2fc0
to
3958b47
Compare
Tensordot is a fine way to benchmark, though I would almost prefer the |
also, I think that large should be 1_000_000 by 1_000_000 with 10_000_000 nnz. |
it's fine to leave small as 10 x 10, as a test case to measure calling overhead, though we might want to make it even smaller to be more accurate. the medium size you've chosen is also very small. The two most meaningful sizes are the extremes, as these show the latency and throughput of the kernel. |
4e65ecc
to
6938f55
Compare
By
Hmm, we plan to add another backend to I'm Ok, with copying these to |
f3531f1
to
ff411c7
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This LGTM overall, just a couple of minor changes.
ff411c7
to
97685cf
Compare
97685cf
to
525149d
Compare
I'd suggest setting up a new repo that can test both libraries instead of copying code, which can get increasingly out of sync. In addition, it might be a nice start to a "sparse extension" to the Array API benchmarks. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks @mtsokol!
I don't think we need to copy these over to finch-tensor, and I see why we would want them here. I'll likely add some similar benchmarks in Finch.jl to test the scheduling heuristics in-tree as I make changes |
Issue: finch-tensor/finch-tensor-python#24
Finch and PyData asv benchmarks.
Hi @willow-ahrens!
I started working on a list of specific benchmarks that we want to implement and use for measuring improvements for Lazy API and Finch in general:
sparse matrix-vector (generated with
fsprand
)sparse.tensordot
)y = Ax + z
(A
is sparse)sparse tensor-tensor
SDDMM
A=B∘CD
(A
andB
are sparse)reductions (sum, prod)
elementwise (add, mul)