Skip to content

hw: Allow collectives with NoLoopback - #239

Merged
Lore0599 merged 1 commit into
chenwu/c2c-mcastfrom
colluca/collectives-no-loopback
Oct 1, 2026
Merged

Lore0599 merged 1 commit into
chenwu/c2c-mcastfrom
colluca/collectives-no-loopback

Conversation

@colluca

@colluca colluca commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor

This PR does two things:

  • Assertion failures are now raised on any loopback transaction, both unicast (already the case), and now also collective.
  • Remove the assertion that forbids collectives when loopback is disabled; this case is actually supported by FlooNoC.

Routers whose endpoint never initiates collectives can now set NoLoopback=1. With NoLoopback=1, a collective copy addressed to the flit's own input port is dropped; this is documented in the parameter doc.

Also fixes typos in comments.

🤖 Generated with Claude Code

The datapath already handles multicast with loopback disabled: the
own-input crosspoint is tied off and `expected_handshakes` excludes the
own-input route. Drop the SupportLoopback assertion so that routers
whose endpoint never initiates collectives can disable loopback, and
document the semantics in the NoLoopback parameter.

Also fix a few typos in comments.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@Lore0599
Lore0599 merged commit 27fd001 into chenwu/c2c-mcast Oct 1, 2026
28 checks passed
@Lore0599
Lore0599 deleted the colluca/collectives-no-loopback branch October 1, 2026 14:24
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