-
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
MatrixMarket Package should support CS* layouts #4
Comments
The patch above hard-codes MatrixMarket to always generate CSR arrays. That's a sufficiently common case that it might be reasonable, at least in the short term. A cooler solution might be to have the call be parameterized by the sparse domain map that should be used to store the sparse domain/array. E.g., the Block distribution is parameterized by a sparse layout type that it will use for any sparse subdomains created for it. Perhaps the same thing could be done here? |
I attempted to fork only to realize this package has no tests, silly me. So I edited within my local version of Chapel source and got this error
I added
to the top of my test file. The next error is when I compiled with
Trying w/o fast now, will get back. |
The top error was due to the missing The bus error is likely the result of transpose not being prepared to deal with square matrices as discussed on #5 |
re: re: the suggested patch in the issue description - @buddha314's preliminary timings show that a matrix read is very slow. It might be worth looking into potential CSR-specific optimizations down the road. |
@buddha314 can you submit a patch and PR for review? |
lil ol' me? I'm not sure I'm qualified. Let me turn in the 2 lines Brad suggested. |
@buddha314 you can read/write chapel! you're totally qualified! |
I don't understand the Chapel testing structure and I can't find the docs. Do you have a link to them? |
@buddha314 apologies for the delay. For testing, a couple simple test programs on small (2x4, 4,4) matrices should be sufficient. I'm good if your testing codes do not use the official chapel testing framework. It could be a simple program that makes a matrix, writes it to disk, loads it from disk and does a comparison and prints "success" or "failure" depending on the outcome. In this case, the simpler a solution is the better! |
As documented here, please support the new CS layouts in the MM package.
As discussed in #7440 the MatrixMarket format does not support the new sparse layouts. The loaded matrices therefore have very little analytic support, including transpose.
@bradcray suggests this sort of work-around for starters.
The text was updated successfully, but these errors were encountered: