Research window: Past 24 hours (2026-09-19 07:00 ~ 2026-09-20 07:00, Beijing time). This is a regular daily window with no overlap with the previous issue. Sources: GitHub (full check of push times across 28 repositories in the tile-ai organization; 3 repositories had pushes within the window; line-by-line review of 3 merges and 5 newly opened PRs in the main repo, including PR bodies, number of changed files, and lines added/deleted; 5 merges and 1 newly opened PR in TileOPs; dependency chain, model contracts, and validation records for the 4 PRs in the GLM-5.3 paged k-pool series; full parsing of benchmark and correctness result files plus environment metadata for the TileOPs-nightly snapshot; Ascend daily regression report; push checks for all adaptation and adopter repositories), Google News RSS multi-query searches in Chinese and English (via proxy), Hacker News, arXiv


Issue Index

  • Today’s Highlights: The full ROCm-side GLM-5.3 sparse attention k-pool chain was completed within 24 hours, with four PRs totaling roughly 9.8k added lines (09-19/09-20)
  • I. Core Project Progress
    • 1.1 Main repo: Metal backend adds 32-bit integer atomic add, unblocking counter-style portable kernels at code generation (09-19)
    • 1.2 Main repo: 256-bit global memory access restricted to SM100 and newer architectures, older architectures fall back to 128-bit (09-19)
    • 1.3 Main repo: Test suite sheds 509 lines in one pass, fast-math assertions switch to real reference implementations (09-20)
    • 1.4 Main repo review queue: Data type interception PR updated, Metal line-count PR closed without merge, Tile IR backend remains draft with no updates (09-19/09-20)
    • 1.5 TileOPs: FP8 batched matrix multiply transpose kernel merged, up to 4.66x speedup on H200 (09-19)
    • 1.6 TileOPs: GEMM kernels renamed by service area and GEMV two-band merged (09-19)
    • 1.7 TileOPs newly opened: Grouped GEMM tail-block tiling, directly catching up to CUTLASS grouped kernels (09-19)
  • II. Multi-Backend Adaptation (Ascend / Sunrise / MetaX / Hygon / Moore Threads)
    • 2.1 Ascend: Daily regression passes all 1936 items, second consecutive day (09-20)
    • 2.2 MetaX, Hygon, Moore Threads, Sunrise: No new commits within the window (09-17/09-18)
  • III. Ecosystem and Adopters
    • 3.1 Nightly snapshot: 1040 benchmarks and 1118 correctness checks with zero failures (09-19)
    • 3.2 Benchmark credibility governance: 8 anomalous bandwidth rows and three fixes on the same day (09-19/09-20)
    • 3.3 Adopters: TileKernels and FlashQLA had no pushes within the window (09-18)
    • 3.4 Migration line: Dense Gated DeltaNet prefill migration PR updated (09-19)
  • IV. Community, Tutorials, and Events
    • 4.1 Documentation site: One site deployment for the TileOPs documentation site, site content unchanged (09-19)
    • 4.2 Media and academia: Zero additions within the window (09-20)
    • 4.3 Release cadence: Main repo remains at v0.1.14, adaptation repo tags unchanged (09-02)
  • V. Trend Observations
    • 5.1 ROCm line: From “backend usable” to “native operator chain for new models”
    • 5.2 TileOPs spends a day on the measurement system: make judgments trustworthy first, then talk speed
    • 5.3 All three merges in the main repo this window are catch-up work; the increment is in the review queue
    • 5.4 The silent surface of the backend matrix expands: only Ascend maintains daily regression
    • 5.5 Gaps and risk points
  • Appendix: Materials and Verification Notes

Today’s Highlight: The full ROCm-side GLM-5.3 sparse attention k-pool chain landed within 24 hours

Date: 2026-09-19 to 2026-09-20 Source: tilelang #3251 GLM-5.3 k-pool decode tail maintenance#3253 paged k-pool logits#3254 k-pool Top-K transform#3255 paged k-pool fused selection

In the previous window (the evening of 09-18), the ROCm direction opened #3250, which does k-pool compression and cache writes for GLM-5.3; in this window the same author opened four more in a single day, extending this chain from decode tail maintenance all the way to fused selection. Together the four add roughly 9,767 lines and touch 40 files (7, 9, 11, and 13 files respectively). All four are marked as stacked dependencies, with #3255 describing itself as “containing the commits from #3250 through #3254 until each is merged” — the author is organizing review around a single complete delivery chain. As of the end of the window, none of the four has been merged.

The chain serves the already-released GLM-5.3-Flash configuration: index_kpool=4, index_topk=2048, index_head_dim=128, index_n_heads=32. Under this contract, the long-row path selects 512 four-token pools, expands them into 2,048 historical tokens, and then appends a tail of fewer than three tokens — this is the concrete form the sparse attention budget takes on the cache side.

The division of labor among the four:

  • #3251 (created 09-19 08:31): decode tail maintenance. The prefill kernel seeds a rolling BF16 tail for each request, decodes in ordered batches (both the ordinary and speculative decoding paths), and compresses the pool back on write when the closing token arrives; it validates tail ownership, position order, padding, and cache-write uniqueness.
  • #3253 (created 09-19 13:10): paged logits. It performs paged FP8 MQA scoring on the compressed k-pool cache: applies scaling per pool, ReLU per query head, and reduces using caller-provided FP32 head weights; it supports per-request pool ranges and page-table row ownership, and rejects illegal shapes, types, ranges, and page rows before launch.
  • #3254 (created 09-19 14:06): Top-K transform. It reuses the ROCm-side safe tl_topk selector, selects 512 pools under the 2,048-token budget, and expands them into logical token indices; short rows are enumerated directly while long rows use radix selection; it supports three output mappings: identity, direct token table, and irregular offsets.
  • #3255 (created 09-20 00:21): fused selection. A single launch completes scoring, radix selection, and token index transformation; it directly consumes the production-form interleaved uint8 cache layout (FP8 keys followed by FP32 scales), folding the first round of the radix histogram into the scoring stage; it provides caller-owned FP32 scratch and INT32 output buffers for graph-replay stability.

Validation is based on exact-head CI: on ROCm 7.2 gfx942, #3251 reports 2,423 passed and 1,852 skipped, with all six focused decode-tail cases passing; #3255 reports 2,435 passed and 1,816 skipped, with all six fused-selector cases passing. Test coverage spans long rows and short rows, the released 2,048 geometry, zero history, and scenarios with more than 4,096 equal partitions.

Interpretation: reading #3249 (the KDA decode example), #3250, and the four from this window together, AMD-side progress has shifted from “getting the backend running” to “the new model’s native operators must exist here too,” and it is being pushed using stacked PRs, treating the entire sparse attention path as a single deliverable.


I. Core Project Progress

Window Overview: 3 merges to the main repo’s default branch, all catch-up work (adding capabilities, fixing applicability, reducing test redundancy); 5 new PRs opened in the review queue, 4 of which belong to today’s focus, the ROCm series. TileOPs merged 5 PRs in a single day for the second consecutive day, and opened 1 new performance PR; its nightly benchmark produced a snapshot within the window.

1.1 Main Repo: Metal Backend Adds 32-bit Integer Atomic Add (09-19)

Date: 2026-09-19 Source: tilelang #3211 Metal support for 32-bit integer atomic add

Merged 09-19 20:55, author anerli, 2 files, +77/-0; the PR entered review on 09-12 and landed within the window.

It fixes a specific capability gap: Metal could not lower scalar int32 and uint32 T.atomic_add (including the form that returns the old value), so portable kernels relying on integer counters or slot allocation would fail outright at code generation. The change lowers such calls to Metal’s atomic_fetch_add_explicit: it preserves the distinction between device and threadgroup address spaces in atomic pointer casts, uses relaxed ordering (consistent with the operation’s existing reduction semantics), explicitly rejects unsupported widths, types, and storage domains, and adds source lowering and Metal execution regressions (covering both threadgroup atomics and the old-value-returning form).

For validation, the author ran a contended threadgroup histogram on Apple Metal, checking the final counts against the set of returned old positions; the local Metal suite passed 20 items with 3 skipped, and both new atomic tests passed.

Assessment: atomic add is a prerequisite capability for basic patterns like counters, slot allocation, and histograms; this commit fills in one more basic primitive on the Metal side—together with its continued maintenance of a Metal-specific test surface, Metal as “the second touchstone for portable kernels” keeps closing its gaps.

1.2 Main Repo: 256-bit Global Memory Access Restricted to SM100 and Newer Architectures (09-19)

Date: 2026-09-19 Source: tilelang #3248 256-bit global memory access restricted to SM100 and newer architectures

Merged 09-19 13:15, author penguin-wwy, 3 files, +56/-7. The PR appeared as a new entry in the previous window and was merged in this one.

Content: restricts the 256-bit PTX global load/store path to SM100 and newer architectures, and only emits it on CUDA 12.9 or above; older architectures fall back to the 128-bit path; adds CUDA tests for pre-SM100, covering T.ldg256/T.stg256 and the fallback behavior of vector stores.

Assessment: wide memory access is a capability of new architectures; in the “ship the width first, add the dependent conditions later” path, the fallback surface is where regression risk lives; this fix tightens “emit whenever possible” into “emit only when appropriate,” and together with the test consolidation in 1.3, belongs to the same category of clearing historical debt.

1.3 Main Repo: Test Suite Sheds 509 Lines in One Pass, Fast-Math Assertions Switched to Real Reference Implementations (09-20)

Date: 2026-09-20 Source: tilelang #3252 Remove duplicate codegen smoke tests and fix fast-math assertions

Merged 09-20 01:44, author penguin-wwy, 6 files, +20/-509. Removes duplicate matmul and T.gemm codegen smoke tests on both the CPU and LLVM sides, deletes the standalone fast-math CUDA test module entirely; and fixes assertions that “compare fast-math output against itself”—adding real reference implementations for exp10, log2, log10, cos, sin, tan, switching tan to deterministic inputs with tolerance relaxed to rtol=atol=1e-2, and changing unsupported operations to explicit assertion failures instead of self-comparison.

Assessment: what’s deleted is duplicate coverage, what’s added is real coverage—a self-comparison assertion is as good as no assertion; this is a commit that “improves quality and removes duplication” in test assets, consistent with the main repo’s overall orientation of shifting quality issues earlier.

1.4 Main Repo Review Queue: Data Type Interception PR Updated, Metal Row-Count PR Closed Without Merge, Tile IR Backend Moved to Draft (09-19/09-20)

Date: 2026-09-19 to 2026-09-20 Source: #3245 Reject unsupported GEMM data type combinations before CUDA code generation#3215 Metal runtime-variable GEMM row count#3247 CUDA Tile IR execution backend

Status updates on three existing PRs:

  • #3245 (updated 09-19 16:20, not merged): intercepts unsupported GEMM data type combinations before entering CUDA code generation, continuing the orientation of “shifting silent errors earlier into explicit failures.”
  • #3215 (closed 09-20 01:37, not merged): the Metal-side “runtime-variable GEMM row count” was closed after nine days in review, without a merge.
  • #3247 (previous issue’s focus, CUDA Tile IR execution backend): currently in draft status with no updates within the window, its last activity stopping on the evening of 09-18; this issue only notes its status and does not elaborate further.

Assessment: the substantive increment in the main repo’s review queue has been taken over by the ROCm model operators (see today’s focus), while existing large changes have stalled in this window.

1.5 TileOPs: FP8 Batched Matmul Transpose Kernel Merged, Up to 4.66x Speedup on H200 (09-19)

Date: 2026-09-19 Source: TileOPs #2153 Transpose FP8’s B operand with a coalesced-access kernel

Merged 09-19 09:55, author michaelwithu, 7 files, +308/-51, 2 commits. The PR appeared as newly opened in the previous window (at the time, 4 of 5 cases lost to the baseline implementation, with the worst at 0.34x), and was merged in this window.

Content: replaces the materialization of FP8’s B operand [B, K, N] → [B, N, K] with a coalesced-access TileLang transpose kernel; the copy path is now determined by b’s strides (no longer just trans_b), and K-innermost inputs skip the copy under both parameter settings; layout warnings are only emitted when a transpose actually occurs; adds direct coverage for the FP8 transpose kernel (including tile tails), and aligns the optional baseline benchmark rows with fp32 reference validation.

Results (H200, CUDA 13.2, torch 2.13.0): five cases speed up 2.30x to 4.66x relative to mainline—MoE prefill 0.8741 → 0.1874 ms (4.66x), MHA decode PV 0.0605 → 0.0131 ms (4.62x), square 4-batch 1K 0.0355 → 0.0137 ms (2.59x); ratios relative to the baseline implementation flip from lagging to leading (e.g., square 8-batch 2K rises from 1.81x to 4.16x); the trans_b=True path is unchanged, holding at 1.03x to 1.20x.

Assessment: this is the branch closure under #2130 (GEMM meta-task)—batched matmul is already established on standard shapes, and FP8 and layout corners are the last weak spots; this commit fills in the largest of them.

1.6 TileOPs: GEMM Kernels Renamed by Service Area, Two GEMV Bands Merged (09-19)

Date: 2026-09-19 Source: TileOPs #2156 Rename kernels by service area, merge two GEMV bands

Merged 09-19 23:11, author lcy-seso, 19 files, +421/-274.

Content: each dense GEMM / BMM kernel class is renamed by “what distinguishes it from its sibling classes”—main loop structure (Tma, CpAsync, Persistent), input shape (Gemv), or scaling granularity (TensorScale, BlockScale). SmallBatchGemmKernel is merged into GemvKernel: the two already shared the same builder, differing only in claimed region and configuration rules; after the merge, one class carries three bands, with the band determined by band_for and fed into constructor parameters, cache identity, default configuration, and tuning grid. Dispatch is unchanged (the union of the three bands equals the original two regions), and the kernel body, configuration rules, and tuning grid are untouched; w4a16_decode.py is renamed to w4a16_gemv.py following the class name.

Breaking change: kernel_map= keys migrate with the class names (7 keys, e.g., gemm_kernel → gemm_tma_kernel, gemm_basic_kernel → gemm_cp_async_kernel); old keys were previously silently dropped and fell back to the factory implementation, and now raise an error directly at construction time.

Assessment: renaming is not an aesthetic issue—as the number of kernels grows, names must directly answer “why should this one be chosen”; incidentally, “wrong key silently falls back” is changed to an explicit failure, the same discipline as the main repo’s “shift silent errors earlier.”

1.7 TileOPs New: Grouped GEMM Tail-Block Tiling, Directly Chasing CUTLASS Grouped Kernels (09-19)

Date: 2026-09-19 Source: TileOPs #2157 Tile grouped GEMM tail blocks and allow callers to declare padded row layouts

Opened 09-19 22:12 (not merged), author michaelwithu, 10 files, +297/-110.

Content: among the four grouped GEMM workloads, only nt bf16 has a real opponent (under fp16, torch’s grouped matmul degrades into 16 separate calls, and only bf16 reaches CUTLASS’s grouped kernel), and it lags by 6.4%. Two root causes: the 128x256 tile places the entire output tile (64 KiB) in shared memory, leaving room in the main loop for only a three-stage pipeline (versus four); the epilogue_stage_n mechanism that could swap that buffer for a fourth pipeline stage was previously only exposed for dense and batched matmul. Simply enabling the mechanism silently doesn’t work either: the last tile of a tight group is a residual block, and those rows are stored with row masks rather than written out as a full tile, so tiling instead pays an extra staging round—under real MoE routing (minimum 1 row per group, maximum 663 rows, 55% of tiles are residual blocks) this costs 3% to 5.5%. The residual-block ratio is a property of the routing, not of the shape, and the selector cannot distinguish it, so the caller is allowed to declare “which kind I have.”

Assessment: changing the decision of “whether to tile” from shape inference to caller declaration is a key step for grouped GEMM to approach CUTLASS; whether it affects the default path remains to be seen from nightly regressions after merge.


II. Multi-Backend Adaptation (Ascend / Sunrise / MetaX / Hygon / Moore Threads)

Window Overview: None of the four existing backends plus Sunrise have any commits; the only activity is Ascend’s daily regression report.

2.1 Ascend: Daily Regression Passes All 1936 Items, Second Consecutive Day (09-20)

Date: 2026-09-20 Source: tilelang-ascend daily test report #1814

Ascend’s daily scheduled test produced its report at 09-20 05:30 (Beijing time): all 1936 items passed, 0 failures, a 100% pass rate. Compared with the previous day (1936 items on 09-19), both the case count and the results are unchanged; there were no new commits in the repo within the window.

Assessment: the main repo’s three merges in this window landed on Metal, CUDA, and tests respectively, none touching the Ascend path, so flat regression is expected. The case count has stayed at 1936 for two consecutive days, indicating that upstream brought no new test surface to the Ascend side within the window; its multi-device test sharding (#1812) saw no updates within the window.

2.2 MetaX, Hygon, Moore Threads, Sunrise: No New Commits Within the Window (09-17/09-18)

Date: 2026-09-17 to 2026-09-18 (each one’s most recent push) Source: tilelang-metaxtilelang-hygontilelang-musatilelang-sunrise

All four repos had no commits within the 24-hour window: MetaX and Hygon’s most recent pushes were 09-17 (17:38 and 20:25), Moore Threads was the morning of 09-17, and Sunrise was the morning of 09-18—all previously reported in the last issue. Version status: MetaX and Hygon have no releases, Moore Threads’ latest is v0.1.14+musa.1 (09-11), Sunrise’s candidate branch sits at 0.1.14+sunrise.1.1.0, and no repo tags were updated within the window.

Assessment: the activity from Sunrise entering candidate status in the previous window did not continue, and the four adaptation repos went silent in sync; a single day of silence does not constitute a trend (adopters have previously shown “pulsed updates”), but it is worth watching—if silence continues in the next window, it would indicate that each vendor’s adaptation reviews are proceeding on a batch cadence.


III. Ecosystem and Adopters

3.1 Nightly Snapshot: 1040 Benchmarks and 1118 Correctness Tests, Zero Failures (09-19)

Date: 2026-09-19 Source: TileOPs-nightly snapshot branch / snapshot environment metadata

The nightly pipeline generated a snapshot within the window for TileOPs 917590ba (i.e., #2154: the merge that rebuilds the performance history window from the snapshot repository) (committed 09-19 16:19). Parsing the two result files, benchmarks and correctness: correctness 1118 items, 0 failures, 2 skipped; benchmarks 1040 cases, 0 failures, 3 skipped — matching the previous snapshot’s case counts, with all passing.

Environment metadata is consistent with the previous issue: H200, CUDA 13.2, driver 595.71.05, power cap 700 W, SM clock 1500 MHz (cap 1980), memory clock 3201 MHz, MIG disabled, repeat duration 100 ms, warmup 25 ms, image recorded by its content identifier, TileLang 0.1.11 plus codename version, PyTorch 2.13.0.

3.2 Benchmark Credibility Governance: 8 Rows of Bandwidth Anomalies and Three Fixes the Same Day (09-19/09-20)

Date: 2026-09-19 to 2026-09-20 Source: #2155 Pricing by routed selected experts / #1996 Byte audit looks only at the read side / #2154 Rebuild the performance history window from the snapshot repository

In this window, TileOPs’ densest engineering investment was not in operators but in “making the benchmark verdict itself credible,” with three merges in a single day:

  • #2155 (merged 09-19 21:24): The nightly run in 3.1 reported 8 rows of bandwidth anomalies (all decode workloads of IndexedExpertMLPFwdOp, half fp16 and half bf16), with readings up to 132.4 TB/s, while the physical ceiling of the H200 is about 4.8. The root cause was a formula error: byte counts were billed for all experts, whereas routed MoE only reads the experts selected by topk_ids. After the fix, readings fell back — deepseek-v3-decode-1 from 132.43 to 3.62 (active experts 7/256), decode-32 from 6.97 to 4.47 (164/256), decode-64 from 5.06 to 4.47 (226/256), qwen3-235b-decode-32 from 4.92 to 4.42 (115/128). A side finding: FusedMoEExpertsFwdOp uses the same formula yet had always passed, only because its workloads start at 512 tokens with all experts active — it passed “by shape” rather than “by correctness”; and FusedMoeSharedExpertFwdOp never counted the writes of the shared output at all.
  • #1996 (merged 09-20 06:50): Changed the byte audit criterion to look only at the read side. Dirty L2 lines are written back only after the kernel finishes, falling outside the profiling interval, so measured write bytes are naturally smaller than the algorithmic minimum; using them to judge failure would wrongly kill correct rows (three rows were misjudged on the first execution). It also fixed the unconditional billing of the default alpha multiplication in add_fwd/sub_fwd (2 FLOP per element while the spec is 1), and added a CI entry point and a per-family run mode to the audit.
  • #2154 (merged 09-19 15:36): Migrated the 14-day performance baseline window from a “mutable artifact” to the snapshot branch (one commit per run, never expiring): previously each run read the previous run’s artifact and overwrote it, and one API 502 once caused a run to publish only its own single record (versus neighbors’ 14, 15, and 19 records).

Interpretation: The three fixes address, respectively, “the formula is responsible to semantics,” “measurement is responsible to physical principles,” and “data is responsible to provenance” — an operator library’s nightly baseline is the credit foundation for its role as an upstream dependency; make the conclusions credible first, then talk about fast or slow.

3.3 Adopters: No Pushes from TileKernels or FlashQLA in the Window (09-18)

Date: 2026-09-18 (most recent push) Source: TileKernels / FlashQLA

Neither adopter pushed within the window: TileKernels’ most recent push remains at 04-23; FlashQLA’s most recent push was 09-18 15:53 (the three merges already reported in the previous issue). Within the organization, TileRT likewise had no pushes (most recent 08-13, now static for seven consecutive weeks).

3.4 Migration Line: Dense Gated DeltaNet Prefill Migration PR Updated (09-19)

Date: 2026-09-19 Source: TileOPs #2144 Migrate dense Gated DeltaNet prefill

The migration-class PR updated within the window: migrating dense Gated DeltaNet prefill into the existing kernel organization (created 09-16, updated 09-19 23:11, not merged). The author is a community member, the same account as the TileSight documentation repository reported in the previous window. This item shares the same context as the renaming in 1.6 and the GEMM meta-task in #2130 — structural consolidation of the operator library after its growth in count: the linear attention, GEMM, and paged cache lines are all converging toward a unified class and manifest organization.


IV. Community, Tutorials, and Events

4.1 Documentation Site: One Site Deployment for the TileOPs Documentation Site, Site Content Unchanged (09-19)

Date: 2026-09-19 Source: TileOPs.github.io documentation site repository

The TileOPs documentation site had one site deployment record within the window (a deployment commit on the gh-pages branch at 09-19 08:01, corresponding to the main branch content built on 09-17), with no new commits on its default branch (the most recent content update remains #51 on 09-17). This is a deployment-class action rather than a content update; the main repository’s documentation site had no pushes within the window.

4.2 Media and Academia: Zero Additions in the Window (09-20)

Date: 2026-09-20 Source: Google News RSS (via proxy) / Hacker News / arXiv

Multiple Chinese and English Google News RSS queries on the topic (9 groups, including component names, domestic accelerators, and operator-kernel combination terms) yielded zero additions within the window; Hacker News had no topic hits in the past five days; all 9 topic results from the arXiv full-text search predate this window (the most recent being a 07-24 performance modeling paper, already reported in the previous issue); the organization created no new repositories.

4.3 Release Cadence: Main Repository Still at v0.1.14, Adapter Repository Tags Unchanged (09-02)

Date: 2026-09-02 (most recent release) Source: Main repository v0.1.14 release

The main repository’s latest tag remains v0.1.14 (released 09-02), with no new tags in the window; TileOPs has no release records; the Ascend repository’s latest is TileLang-ascend v0.1.2.000-release (09-09); Moore Threads is v0.1.14+musa.1 (09-11). The main repository has gone 18 days without a release since v0.1.14, while the review queue and merges continue — the gap between release cadence and development cadence is widening.


V. Trend Observations

5.1 The ROCm Line: From “Backend Usable” to “Native Operator Chains for New Models”

The previous issue’s reading that “AMD-side progress has shifted to specific operators for specific models” was reinforced in this window: four PRs submitted at once as a stacked chain, covering every link of the GLM-5.3 sparse attention k-pool, and directly bound to the configuration contract of an already-released model (2048-token budget, 512 pool, four-token pool granularity). This shows that work on the ROCm side is now organized around “model delivery” rather than “backend capability completion” — after a new model is released, how quickly its unique operators arrive on the AMD path is becoming a direct indicator of that backend’s maturity.

5.2 TileOPs Spends a Day on the Measurement System: Make the Verdict Credible First, Then Talk About Fast or Slow

#2154, #2155, and #1996 all land on the verdict logic of benchmarks and audits, and together with the all-green nightly snapshot in the window, this shows the maintenance layer now regards “whether the nightly conclusions are correct” as equally important as “whether the kernels are faster.” The signal value of such governance lies in this: only when the measurement system is credible do performance comparisons (such as the 4.66x in 1.5 or the 6.4% gap in 1.7) carry decision-making significance. Conversely, the “same erroneous formula going undetected for a long time” exposed in this window also suggests there are still blind spots in the coverage of its verdict logic.

5.3 All Three Merges in the Main Repository This Window Are Catch-Up Work; the Increment Is in the Review Queue

Adding a capability (Metal atomic add), fixing applicability (256-bit memory access fallback), improving test quality (removing 509 lines and adding a reference implementation) — all three point to clearing debts rather than expanding new capabilities. The real new increment is in the review queue: four ROCm model operators; while the previous issue’s major change (the Tile IR backend) has shifted into a stalled draft. The main repository currently presents a dual track of “cautious merging, exploration on file”: major route-level changes settle in draft form, while day-to-day work advances in small closing steps.

5.4 The Silent Surface of the Backend Matrix Expands: Only Ascend Maintains Daily Regression

The previous window still had the activity of Sunrise entering candidacy; in this window, the four adapter repositories plus Sunrise are all silent, with the only activity being Ascend’s daily regression (1936 items all passing). One should avoid reading a single day’s silence as stagnation (the adopters’ pulsed cadence has precedent), but this contrast itself gives a reading: in the multi-backend landscape, only Ascend maintains a “daily visible” engineering cadence, while the activity of the others must be observed weekly or even monthly.

5.5 Gaps and Risk Points

Three points need flagging: first, all four GLM-5.3 PRs remain unmerged, and the stacked dependency means chained review is required — any one getting stuck will hold up the landing of the entire chain; second, the 8 rows of bandwidth anomalies and the byte-audit false kills fixed in this window (3.2) show that the nightly verdict logic had been running incorrectly for a period (anomalous readings inflated up to 27 times the physical ceiling), and the stability of the fixed criteria needs continued observation in subsequent snapshots; third, the main repository’s release stagnation has reached 18 days, the review queue keeps accumulating, and within the window a Metal PR that had run for nine days was closed (#3215) — the balance between queue throughput and backlog is a point for further observation.


Appendix: Sources and Verification Notes

Source Verification Table

Source Verification Result
tile-ai organization (28 repos) 3 repos had pushes in the window: tilelang, TileOPs, TileOPs-nightly; TileOPs.github.io also had one site deployment commit
Main repo tilelang default branch 3 merges (#3211, #3248, #3252); 5 new PRs opened in the window (#3251 to #3255); #3247 is in draft state with no updates
TileOPs 5 merges (#2153, #2154, #2155, #2156, #1996); 1 new PR opened (#2157); #2144 has updates
TileOPs-nightly Snapshot generated for commit 917590ba (benchmark and correctness result files, environment metadata); results fully parsed
Ascend Daily regression report: all 1936 items passed (second consecutive day); no commits in the repo during the window
Other domestic backends and Sunrise MetaX, Hygon, Moore Threads, and Sunrise had no commits in the window; tags not updated
Adopters TileKernels and FlashQLA had no pushes in the window; TileRT within the organization likewise had no pushes
Google News RSS (multiple Chinese and English queries, via proxy) Zero new items in the window
Hacker News No topic matches in the past five days
arXiv Latest topic search result dated 07-24; no new preprints in the window
Documentation sites One site deployment for the TileOPs documentation site (content unchanged); no pushes for the main repo documentation site

Complete Source List