Skip to content

[TLE] Add signal and signal_wait operators - #863

Draft
legilla wants to merge 57 commits into
flagos-ai:mainfrom
legilla:draft/tle/add_signal_op
Draft

[TLE] Add signal and signal_wait operators#863
legilla wants to merge 57 commits into
flagos-ai:mainfrom
legilla:draft/tle/add_signal_op

Conversation

@legilla

@legilla legilla commented Jul 29, 2026

Copy link
Copy Markdown

No description provided.

@CLAassistant

CLAassistant commented Jul 29, 2026

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

@github-actions github-actions Bot added DOC Improvements or additions to documentation tle CORE add_put_signal_0722 labels Jul 29, 2026
@github-actions github-actions Bot removed the DOC Improvements or additions to documentation label Aug 5, 2026
@github-actions github-actions Bot added the CI/CD label Aug 10, 2026
@legilla
legilla marked this pull request as draft August 16, 2026 07:46
legilla and others added 5 commits August 16, 2026 17:50
FlagCX PR flagos-ai#539 (Unified IR) deletes flagcxDevNetSignalCtrIncS and makes
remote counter increments unreachable; only local (send-side) counters
remain, which TLE does not use. Remove the counter surface so kernels
never emit the deleted symbol:

- SignalOpKind: drop CTR (inc/add only)
- SignalWaitKind: drop COUNTER (signal/shadow only)
- Stop emitting flagcxDevNetSignalCtrIncS / flagcxDevNetWaitCounterS
- Update Python frontend, verifiers, pybind enums, tests, and docs

Remaining S-path calls (flagcxDevNetGetFromCommS, SignalSigIncS/SigAddS,
WaitSignalS, WaitSignalMeetShadowS) are all retained by PR flagos-ai#539.
Rename VerfiyUtils.h/.cpp to VerifyUtils.h/.cpp (fix typo, update
CMakeLists.txt and 3 include sites).

Add shared signal-arg verification functions in the Signal namespace:
  - verifySignalOp(SignalOpKind, mlir::Value) -> optional<string>
  - verifySignalWaitOp(SignalWaitKind, mlir::Value) -> optional<string>
Return nullopt when valid, otherwise a user-facing error message
(Python-style: 'value must be provided when op is add' etc.).

Use in MLIR verifiers (4 one-liners in Ops.cpp / FlagCxOps.cpp),
as a pre-creation check in the pybind create_signal / create_signal_wait
lambdas (throws py::value_error), and via a new tle.utils submodule
(verify_signal / verify_signal_wait) consumed by distributed.py
signal() / signal_wait().
# Conflicts:
#	.github/workflows/nvidia3.6-build-and-test.yml
#	third_party/tle/dialect/lib/Conversion/TleToLLVM/FlagCxOpToLLVM/CMakeLists.txt
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants