Skip to content

[Only for CI] Extensions - #2475

Draft
ThrudPrimrose wants to merge 9312 commits into
mainfrom
extended
Draft

ThrudPrimrose wants to merge 9312 commits into
mainfrom
extended

Conversation

@ThrudPrimrose

Copy link
Copy Markdown
Collaborator

No description provided.

@ThrudPrimrose
ThrudPrimrose changed the base branch from ci-fix to main August 3, 2026 11:37
@ThrudPrimrose ThrudPrimrose added no-ci Do not run any CI or actions for this PR and removed no-ci Do not run any CI or actions for this PR labels Aug 7, 2026
ThrudPrimrose added a commit that referenced this pull request Aug 20, 2026
…skip_gpu_outputs; restore OMP thread default; fix extras

- codegen.py: restore scalar_emission conditional form; pass skip_gpu_outputs=True
  so GPU map outputs are not scalarized (the unconditional preserve_abi run in PR #2475
  introduced broad CPU regressions).
- conftest.py: do not force OMP_NUM_THREADS=1; keep setdefault so callers control it.
- pyproject.toml: re-add fastgraph/polyhedral extras and testing z3-solver/matplotlib
  that were dropped when moving from setup.py.
ThrudPrimrose added a commit that referenced this pull request Sep 3, 2026
Restores a mergeable PR #2475 so the extended workflows fire again.

Main carried only 036a963, the upstream form of the __-prefixed
operator round-trip fix that extended had already landed locally as
6e25a02. Every conflict was a diff-alignment artifact around code
extended adds on top; no behaviour changed.

Resolutions:
- dace/symbolic.py, _SerializedSymbolicParser._functions: kept extended.
  Main's side of the hunk was empty; the block holds extended-only
  entries (ITE, id, diag, jn) that main never had.
- dace/symbolic.py, _print_ceiling: kept extended's body, took main's
  comment. The is_integer early return is byte-identical on both sides,
  so only the comment differed; upstream wording keeps the hunk from
  conflicting again. Extended's MPR lowering, the integral_index_expression
  int64 cast, and _print_Rational/_fp_literal/_print_Max/_print_Min/
  _print_minmax are all preserved.
- tests/symbolic/test_int_div_rewrites.py, imports: kept extended, a
  strict superset of main's line (adds symbol, dtypes, dace).
- tests/symbolic/test_int_div_rewrites.py, tests: kept extended. Main's
  side was empty; the block is two extended-only ceiling tests. Main's
  test_ceiling_of_an_integer_prints_as_its_argument was already present
  and auto-merged.
- tests/symbolic_serialization_test.py: kept extended. Main's side was
  empty; all four of main's new tests were already present, byte-identical.

Tests: 305 passed, 1 skipped (absent CloudSC fixture), 2 xfailed across
tests/symbolic/ and the serialization suite.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
ThrudPrimrose added a commit that referenced this pull request Oct 15, 2026
- ipow of integer operands is integer arithmetic: a shape extent, and a ceiling/floor that needs no
  rounding (TSVC offload "ipow(LEN_2D, 2) is not integral", stockham_fft's ceil() loop bounds).
- Printing reads what it may not see in an expression from its surroundings, and its memos key on it:
  a symbol's dtype comes from the SDFG being generated (the scope's declared types), and symstr /
  sym2cpp key on those types and on the printing facts. A modulo printed as C's % where the facts
  proved it was served from the memo where they did not.
- Canonicalization holds back a DOALL sibling of a sibling-loop chain with a refused sibling until
  WavefrontSkew (lu/ludcmp keep their (i, j) wavefront now that LoopToMap proves the j >= i loop).
- Frontend: an annotation's free symbol never replaces the program's declared global (backported to
  #2673); a promoted symbol already declared is not re-declared from the visitor scope; an extent
  respelled as its source is undeclared once.
- Tests stop asserting the pre-registry contract (dtype as symbol identity, simplify's own cache,
  sympy assumptions, declared iterators) and read signs from printing facts.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@ThrudPrimrose ThrudPrimrose added no-ci Do not run any CI or actions for this PR and removed no-ci Do not run any CI or actions for this PR labels Oct 30, 2026
…sing loop is live, a one-trip loop keeps its live-out check
… bump or unlike its entry value, and a start read by name past a store refuse; subscript_index_symbols takes C++ text
… in place, a buffer would lose what the write skips"

This reverts commit 8f96f3f.
…s in place, a buffer would lose what the write skips"

This reverts commit c0e86e9.
…ny more, a later fusion deleted its descriptor
… their own, the edge between them stays"

This reverts commit 838def2.
…rnel's thread block

The collective walked up one state only, missed the kernel above a nested loop body, and took the
default block size, which disagrees with the launch geometry and leaves rows unwritten.
…ets its own state

A part of a state that holds a map runs in every thread with no barrier inside, so a tasklet or a copy
behind the map raced it. Between states the lowering puts a grid barrier and guards what writes global
memory.
…ve in device memory

A kernel's copy of a host array is a thread local, so the value init publishes never reached the BFS
kernel. The test declares the unsigned types it passes.
@ThrudPrimrose ThrudPrimrose removed the no-ci Do not run any CI or actions for this PR label Nov 3, 2026

This branch has not been deployed

No deployments
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.

1 participant