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

Facing Problems in Dynamic PageRank #56

Open
rajat-99 opened this issue Oct 9, 2021 · 6 comments
Open

Facing Problems in Dynamic PageRank #56

rajat-99 opened this issue Oct 9, 2021 · 6 comments

Comments

@rajat-99
Copy link

rajat-99 commented Oct 9, 2021

Hi
I am currently working on Dynamic PageRank, but am encountering problems in using it, which are listed as follows:

  1. Initially I created a file PageRankDynamic.cu in the test folder of hornetsnest and added its details into the cmakelist in order to compile it into the build folder. However I was met with several errors.

  2. HornetGPU and BatchUpdate were undefined in /hornetsnest/src/Dynamic/PageRank.cu, which I defined in /hornetsnest/include/Dynamic/PageRank.cuh as shown below. I would like to know whether this is correct or not.
    image
    I also changed line number 112 of /hornetsnest/include/Dynamic/PageRank.cuh to
    image

  3. Currently in line number 210 and 213 of /hornetsnest/src/Dynamic/PageRank.cu, the forAllEdges function is called as below:
    image
    However on executing it the following errors arise:
    image

Could anyone help me in regards to this matter?

@ogreen
Copy link
Contributor

ogreen commented Oct 23, 2021

Hey @rajat-99 , are you still facing this problem?

@ogreen
Copy link
Contributor

ogreen commented Oct 23, 2021

I think that the problem is that you are not sending the correct function to the forAllEdges primitive.

Take a look the primitive in BFS:
https://github.com/rapidsai/cuhornet/blob/main/hornetsnest/include/Static/BreadthFirstSearch/TopDown2.cuh#L99
For PageRank:
(call the primitive) https://github.com/rapidsai/cuhornet/blob/main/hornetsnest/src/Static/PageRank/PageRank.cu#L124
(the primitive itself ) https://github.com/rapidsai/cuhornet/blob/main/hornetsnest/src/Static/PageRank/PageRankOperators.cuh#L80

@rajat-99
Copy link
Author

rajat-99 commented Oct 28, 2021

Thanks for the reply @ogreen. I am still facing the problem in the Dynamic PageRank. Could you look at the following lines and inform me if the work is still in progress or not?

if (is_insert) {
//forAllEdges(hornet, batch_update, SetupInsertions { hd_prdata } );
//forAllEdges(hornet, batch_update, RecomputeInsertionContriUndirected { hd_prdata } );
forAllEdges(hornet, batch_update, RecomputeContri { hd_prdata } );
} else {
//forAllEdges(hornet, batch_update, SetupDeletions { hd_prdata } );
forAllEdges(hornet, batch_update, RecomputeContri { hd_prdata } );
//forAllEdges(hornet, batch_update, RecomputeDeletionContriUndirected { hd_prdata } );
}
.
(This entire if-else section calls the same function with same arguments for both the insertion and the deletion operations; The code compiles after removing this section.)

@ogreen
Copy link
Contributor

ogreen commented Nov 1, 2021

@rajat-99 , this algorithm is not currently in development.
And you are correct. It looks like the non-commented out lines of code are the same.
The difference is in the commented out lines of code. These were disabled for reasons unknown to me.
The if statement seems to be responsible for insertions and the else statements for deletions.

@rajat-99
Copy link
Author

@ogreen could you provide me some resources for understanding the algorithms you are using in dynamic pagerank? Thanks in advance.

@ogreen
Copy link
Contributor

ogreen commented Nov 23, 2021

I am afraid that I don't have that information.
Euna might be able to answer your question:
https://github.com/eunaeuna

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