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

Add router_cores and get_core_at #446

Merged
merged 4 commits into from
Jan 21, 2025
Merged

Add router_cores and get_core_at #446

merged 4 commits into from
Jan 21, 2025

Conversation

broskoTT
Copy link
Contributor

@broskoTT broskoTT commented Dec 30, 2024

Issue

Somewhat related to #439

Description

get_core_at can be a useful API provided by coordinate manager. There are scenarios where we want to learn what is located at a specific core location. This obviously can't be offered for LOGICAL coord system, but for others it is possible.
Since there are also some places in the code which request specifically some cores which might be router_only cores, I've also added router_cores to CoordinateManager and SocDescriptor (see Cluster::test_setup_interface or Cluster::broadcast_pcie_tensix_risc_reset)

List of the changes

  • Add translate_coord_to api which doesn't know what coretype is there
  • Add router cores everywhere
  • Restructured constants a bit to follow tensix, dram, eth, arc, pci ordering.
  • Wrote a test to verify new behavior

Testing

Added tests which test the new API.

API Changes

There are no API changes in this PR.

@broskoTT broskoTT requested a review from pjanevskiTT December 30, 2024 13:00
Copy link
Contributor

@pjanevskiTT pjanevskiTT left a comment

Choose a reason for hiding this comment

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

Just take a look at get_coord_at implementation, I think the lookup I left in the comment should be sufficient. It should me much less code and more performant. Let me know if I am missing something there

device/api/umd/device/tt_core_coordinates.h Outdated Show resolved Hide resolved
device/coordinate_manager.cpp Outdated Show resolved Hide resolved
Copy link
Contributor

@pjanevskiTT pjanevskiTT left a comment

Choose a reason for hiding this comment

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

nice

device/api/umd/device/coordinate_manager.h Show resolved Hide resolved
device/api/umd/device/tt_core_coordinates.h Outdated Show resolved Hide resolved
device/api/umd/device/tt_core_coordinates.h Outdated Show resolved Hide resolved
device/api/umd/device/tt_core_coordinates.h Outdated Show resolved Hide resolved
device/api/umd/device/coordinate_manager.h Show resolved Hide resolved
@broskoTT broskoTT enabled auto-merge (squash) January 21, 2025 14:51
@broskoTT broskoTT merged commit 558328f into main Jan 21, 2025
19 checks passed
@broskoTT broskoTT deleted the brosko/get_coord branch January 21, 2025 15:04
broskoTT added a commit that referenced this pull request Jan 22, 2025
### Issue
Continuation of #446 

### Description
Minor fixes

### List of the changes
- Added the translate_coord_to api to soc descriptor as well
- Added more verbose fatal messages for translation.

### Testing
No additional tests

### API Changes
There are no API changes in this PR.
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

Successfully merging this pull request may close these issues.

2 participants