Skip to content

Add RRGraph-related API to documentation and clean-up RRSpatialLookup methods #1837

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

Merged
merged 18 commits into from
Sep 3, 2021

Conversation

tangxifan
Copy link
Contributor

@tangxifan tangxifan commented Aug 31, 2021

Description

This is a follow-up pull request to address the comments in #1828
It also addressed the issue #1834

Checklist:

  • Add RRGraph-related API to documentation
  • Adapt the code comments in rr_graph_builder.h and ``rr_spatial_lookup.h" to be doxgen compatible.
  • Remove the RRSpatialLookup() constructor

**Note: the code comments in rr_graph_view.h is untouched to avoid merging conflicts as @ethanroj23 is working on it.

Related Issue

This pull request is part of the refactoring effort of routing resource graph #1828

Motivation and Context

Along with refactoring, RRGraph APIs are being developed with enriched comments. It is time to build the documentation for the APIs.

How Has This Been Tested?

The documentation changes can be previewed at the readthedocs in the pull request checks.

Screenshots taken from the readthedocs:

image

image

Types of changes

  • Bug fix (change which fixes an issue)
  • New feature (change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

  • My change requires a change to the documentation
  • I have updated the documentation accordingly
  • I have added tests to cover my changes
  • All new and existing tests passed

@tangxifan tangxifan marked this pull request as draft August 31, 2021 22:37
@github-actions github-actions bot added the VPR VPR FPGA Placement & Routing Tool label Aug 31, 2021
@tangxifan tangxifan marked this pull request as ready for review August 31, 2021 23:57
@tangxifan
Copy link
Contributor Author

@vaughnbetz @hzeller This pull request is ready for your review. It does not change codes. so I expect the CI to be green.

Since this is the first time I use doxygen in documentation, any comments on beautifying the code comments are welcomed.

For @hzeller 's comments on removing RRSpaitial constructors, I will address it in another pull request. My intention is to narrow the scope of this PR in documentation changes only.

Since I have exploited readthedocs in previewing doc changes. The commit number is large. You may squash and merge.

Copy link
Contributor

@vaughnbetz vaughnbetz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good.

  • It seems the RRGraphView comments aren't in the API though -- can you also add Doxygen comments to it, or should Ethan do that? If Ethan, we should make sure he has an issue.
  • I think the TODO comments are for API developers rather than users, and hence should be regular (not Doxygen) comments. What do you think?

*
* Note:
* @note
* - This is the only data structre allowed to modify a routing resource graph
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

typo: "structure"

* - track index in a routing channel when type is CHANX/CHANY
* @param side is the side of node on the tile, applicable to OPIN/IPIN
*
* @note a node added with this call will not create a node in the rr_graph_storage node list
* You MUST add the node in the rr_graph_storage so that the node is valid
*
* TODO: Consider to try to return a reference to *this so that we can do chain calls
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe the TODO comment should be outside the doxygen commenting (put as just a regular comment) so it doesn't show up in the API comment?

*
* Note: currently this function only accepts SOURCE/SINK nodes. May unlock for the other types
* @note currently this function only accepts SOURCE/SINK nodes. May unlock for the other types
* depending on needs
*
* TODO: Consider to make a high-level API to duplicate the nodes for large blocks.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe the TODO comment should be outside the doxygen comments so it is a note to developers rather than API users?

@vaughnbetz
Copy link
Contributor

@ethanroj23 : see the comments above on RRGraphView Doxygen commenting.

@tangxifan
Copy link
Contributor Author

Looks good.

  • It seems the RRGraphView comments aren't in the API though -- can you also add Doxygen comments to it, or should Ethan do that? If Ethan, we should make sure he has an issue.
  • I think the TODO comments are for API developers rather than users, and hence should be regular (not Doxygen) comments. What do you think?

@vaughnbetz I can definitely add Doxygen comments to the RRGraphView files. Currently. my concern is that my modification will cause merging conflicts with Ethan's pull requests. I can do follow-up pull request during the gap of his pull requests or work with him on reworking the comments.

For the typo fix and TODO comments, they make sense to me. I will address the comment in this pull request.

@tangxifan
Copy link
Contributor Author

@vaughnbetz I have addressed the comments. I also double checked the documentation and see that the TODO comments are not shown in the VPR API pages.

Regarding the RRGraphView comments, please let me know what you think. I will take action then.

@vaughnbetz
Copy link
Contributor

Thanks @tangxifan . @ethanroj23 : I think it's best if you make the RRGraphView comments doxygen compatible to avoid merge conflicts (and to group related work together) as @tangxifan suggests.

@vaughnbetz vaughnbetz merged commit eb3be2b into master Sep 3, 2021
@vaughnbetz vaughnbetz deleted the rr_graph_api_doc branch September 3, 2021 20:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
VPR VPR FPGA Placement & Routing Tool
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants