-
Notifications
You must be signed in to change notification settings - Fork 11
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
Empty product #29
Empty product #29
Conversation
These things are fine
I am concerned about making this breaking change to save a zero-initialization. In the case where you want to output into an empty matrix, you can always pass one into |
The question is whether this actually is a breaking change - I would say no. The creation of an uninitialized instead of a zero matrix is the change introduced in the |
By the way, I'm also very curious about all those test failures, as I didn't touch the Pardiso part at all. And the one failed test in COO multiplication on my machine I attributed to a newer version of NumPy/SciPy that I had installed where probably some properties were renamed, but now it also happens here. I'll have to check this one. |
Don't worry about the pardiso tests, it's just the initialization function and it passes locally. The gram matrix function will sometimes return an array which is partially uninitialized, and it will do so unpredictably depending on the arguments that are provided (it does not pass the current release unit tests). Fixing it with numpy indexing at the end has memory and time costs that certainly exceed initializing the array when it's declared. IF you don't mind, I'm going to roll back those changes, and keep the changes that fix #28. I will also write unit tests to cover passing in an empty matrix as |
Sure, you can roll back the non-initialization; it is not so bad for performance. |
Aight, I ended up keeping it and just initializing the gram matrix to zero
As a warning, this is not true for the sparse syrk, depending on which (unrelated) flags are provided |
2ef0643
into
flatironinstitute:release
Fixes #28