-
Notifications
You must be signed in to change notification settings - Fork 2
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
WIP: Test non-canonical sparse arrays #14
Conversation
scipy.sparse generally supports them, while sparse.pydata.org struggles. TOD: Make sure there are no false positives and updtae converter matrix to support them correctly. Also, perhaps report upstream to be documented properly?
TODO get COO to work correctly -- it broke from deduplication
* Detection and workaround for cupy/cupy#7713 * Correct coo_matrix scrambling: canonical format attribute is cached and sparse.COO depends on it. Create new scrambled coo_matrix instead of modifying in place so that the attributes are correct. * Update conversion cost
I can't reproduce the issues on Linux with scipy.sparse.csc_matrix locally, even with the same versions of Python, NumPy, SciPy. Weird! I'm out of depth what to do here. |
The error seems to be caused by the duplicate since the last two entries in the array differ. Strange that it doesn't occur locally. Race condition? Compiler/CPU architecture/Undefined Behavior? Hard to report without a local reproducer! |
Actually got a "hit" on Windows. Different probability points at a race condition? |
* Also prune when deduplicating * Deduplicate CSC before densifying
Handle empty cols/rows at the end of the array correctly. Edge cases to be tested, but unlikely to occur.
Likely cause was an incorrect routine to add duplicates. It added the value to the wrong column/row if the last one was empty. |
scipy.sparse generally supports them, while sparse.pydata.org struggles.
Closes #13