Conversation
pelesh
left a comment
There was a problem hiding this comment.
Great job! A couple of items to address before this can be merged:
- Remove
Sparsebase class and include its content inCsrMatrix. - Remove
LinAlgWorkspaceCpuclass. It is not needed here.
There are a few other mainly nitpicking issues I suggest we address.
I suggest you merge |
Perhaps just implement the assignment operator and make it private method for now? I would leave this for a different PR though. |
|
@pelesh I would prefer deleting any copy operators. Implicitly copying something like a CSR matrix is a fast track to difficult to find performance decreases for no good reason. |
shakedregev
left a comment
There was a problem hiding this comment.
Documentation needs improvement. Otherwise, just the things we discussed.
pelesh
left a comment
There was a problem hiding this comment.
Almost there. The CsrMatrix needs to be implemented as a class template. There are a few other nitpicking issues I suggest we address.
pelesh
left a comment
There was a problem hiding this comment.
Looks good. I suggest you fix a few warnings popping up and rebase. We can merge then.
Minimal editing to get it to compile and run tests. Most edits are: - Commenting out GPU-related data structures and #ifdefs (todo comments left in this case) - Renaming namespaces - Changing logging code to just use `std::cerr`
9ac7b92 to
b916f02
Compare
pelesh
left a comment
There was a problem hiding this comment.
All review comments addressed.
Description
Adds the ReSolve
Csrmatrix class to GridKit, with minimal changes:Csrclass has been changed toCsrMatrixstd::cerrTracking issue: #261
Checklist
-Wall -Wpedantic -Wconversion -Wextra.Further comments
Follow-up PR will merge
SparseintoCsrMatrix.Something I'd like to fix is the potential to double free if the matrix is copied. This should probably be fixed by removing the ability to copy the matrix.