-
Notifications
You must be signed in to change notification settings - Fork 7
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
Pulp & Patoh Integration #230
Conversation
…ration # Conflicts: # src/generate_explicit_instantiations.py # tests/suites/sparsebase/preprocess/preprocess_tests.cc
graph.m = m; | ||
graph.out_array = csr->get_col(); | ||
graph.out_degree_list = csr->get_row_ptr(); | ||
graph.vertex_weights = nullptr; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
maybe we should consider supporting weights in formats
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is not trivial, they all support different types which is why I avoided doing so for now.
IDType *PatohPartition<IDType, NNZType, ValueType>::PartitionCSR( | ||
std::vector<format::Format *> formats, PreprocessParams *params){ | ||
|
||
if(typeid(IDType) != typeid(int) || typeid(NNZType) != typeid(int)){ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
constexpr like above?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same here converter can be used.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
left minor comments.
Seems good.
int np = pparams->num_partitions; | ||
IDType* partition = new IDType[n]; | ||
|
||
if constexpr (std::is_signed_v<IDType> && std::is_signed_v<NNZType> && |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
try converting first and if that fails raise an exception could be better.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
minor changes needed.
Btw, don't forget to add the |
…ration # Conflicts: # .github/workflows/testing.yml # CMakeLists.txt # src/sparsebase/config.h.in # src/sparsebase/preprocess/preprocess.cc
This PR includes the following contributions:
PulpPartition
class wrapping the partitioner available here: https://github.com/HPCGraphAnalysis/PuLPPatohPartition
class wrapping the partitioner available here: https://faculty.cc.gatech.edu/~umit/software.htmlMetisPartition
.@param
style doc commentsAs of now, the following work is still needed for the partitioning side of this library to be complete:
PartitionBase
class similar toReorderBase
.XXXGraphPartitioner
. And assertions can be added as well.