-
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
Metis Integration and Optional Libraries #153
Conversation
… generate_explicit_instantiations script
…ete except a few edge cases
…iables and default prefix locations
…gration # Conflicts: # examples/CMakeLists.txt # src/generate_explicit_instantiations.py # src/sparsebase/preprocess/preprocess.h
…w partitioning classes
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.
Looks good. Just two comments:
- getting started page should be updated?
- also about the return of number of parts (by the way, it can also be a utility function in PartitionBase that counts it in O(n) time).
/*! | ||
* @returns An IDType array where the i-th index contains the ID for the partitioning i belongs to | ||
*/ | ||
IDType* Partition(format::Format * format, std::vector<context::Context*> contexts, bool convert_input); |
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.
Actually, i was thinking about implementing the class that will apply a partitioning, and maybe it would be useful for partitioning to also return the number of parts. What do you think?
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.
Great idea. But lets open a separate issue for this, this PR waited long enough :)
* Wraps the METIS partitioner available here: https://github.com/KarypisLab/METIS | ||
* The library must be compiled with the USE_METIS option turned on | ||
* and the pre-built METIS library should be available. | ||
* See the Optional Dependencies page (under Getting Started) in our documentation for more info. |
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 seems there aren't any updates to the getting started page in this PR. will this be added later or did you forget to add the file 😂
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.
I have another branch with that file added. But I think I didn't intend to write this reference before that merged. For some reason I forgot that and added it in. I will make another PR soon with the updated docs.
This PR will provide a
MetisPartition
class in the preprocessor module which is a wrapper for METIS.Also a
PartitionPreprocessType
class is established, intended to be used by all future partition classes.There are also more substantial changes introduced in this PR:
I will make a separate PR soon to add documentation regarding these changes.