Skip to content
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

rocsparse spsv analysis phase #424

Open
uesrshihe opened this issue Dec 2, 2024 · 3 comments
Open

rocsparse spsv analysis phase #424

uesrshihe opened this issue Dec 2, 2024 · 3 comments

Comments

@uesrshihe
Copy link

"I have a question. In the rocsparse SPSV (Sparse Solver), there are three stages, and the second stage is the analysis phase, which generates the dependency array done_array. I am trying to think about how each element in the done_array is generated outside of the code logic. I converted the sparse matrix into a DAG (Directed Acyclic Graph), and found that the number of dependencies for each row does not match the values in the done_array. So, outside of the code, what is the basis for generating the done_array array?"

@ntrost57
Copy link
Contributor

ntrost57 commented Dec 3, 2024

Hi uesrshihe, it is not clear to me what you are asking for. Could you rephrase your question?

@uesrshihe
Copy link
Author

I have a question about the rocsparse SPSV (Sparse Solver). In the analysis phase (the second stage), a dependency array called done_array is generated. I am trying to understand how each element of this array is computed outside the code logic. I converted the sparse matrix into a Directed Acyclic Graph (DAG), but I noticed that the number of dependencies per row in the DAG does not match the corresponding values in the done_array.

From my understanding, the value for each node in done_array corresponds to the maximum path from that node to another node in the DAG that has no dependencies. Is this correct? If not, could you explain how the dependencies are defined and calculated during the analysis phase?

@ntrost57
Copy link
Contributor

ntrost57 commented Dec 4, 2024

What do you mean by outside the code logic? You can see how the done array is generated here

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants