-
Notifications
You must be signed in to change notification settings - Fork 13
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
Allocations using mul!
#109
Comments
I think TensorOperations does something like that. I am a bit hesitant to allow hidden matrices to be generated for this package, though it might make sense to have versions of |
Thanks for the note on TensorOperations.jl. A version of |
Kronecker is likely easier to use if you are just doing matrix algebra. TO is a bit more general and advanced and can likely attain somewhat higher performance. Take a look and share your thoughts if we should extend Kronecker in this direction. |
After looking at TO, I think Kronecker.jl would be a better fit. I can work on a PR for the temporary array argument |
Maybe you can best take the lead in this and we can look together if it can be improved. Feel free to open a PR! |
Thanks for this package! I've noticed there are some allocations when using
mul!(y,A,x)
, wherex,y
are<: Vector
andA
is aKroneckerProduct
. This seems to be due toalloc_temp_array
in_kron_mul_fast_square!(C, B, factors)
.Since we're calling
mul!
many times, these allocations add up. Would it make sense to have a version ofKroneckerProduct
which stores this temporary array as a hidden field to avoid allocating?The text was updated successfully, but these errors were encountered: