Skip to content

fix(embedding): coalesce MO inputs before GPU scheduling - #31

Merged
aunjgr merged 2 commits into
matrixorigin:upstream-dev-mergefrom
aunjgr:fix/embedded-mo-input-coalescing
Oct 12, 2026
Merged

aunjgr merged 2 commits into
matrixorigin:upstream-dev-mergefrom
aunjgr:fix/embedded-mo-input-coalescing

Conversation

@aunjgr

@aunjgr aunjgr commented Oct 12, 2026

Copy link
Copy Markdown
Collaborator

Embedded MO input currently schedules GPU work from each available queue snapshot. This coalesces toward the existing 32 MiB expanded target and flushes on EOS, descriptor/row bounds or input-credit pressure. Producers publish durable pressure before waiting; direct claims enforce the same policy as readiness checks. Immutable string/NULL/size summaries avoid rescanning complete frames and remain charged to the existing 64 MiB input window.

Refs MatrixOne #28966, #28968. Public ABI, numeric semantics, GPU execution and existing cancellation/retry ownership are preserved.

Validation: the native control suite passes 91 cases / 750 assertions in normal, ASan/UBSan/leak-check and TSan modes; three concurrency controls pass 100 repetitions each in one TSan process. The linked GPU suite passes 35 cases / 34,640 assertions, including 1/2/4-stream producers. Pinned formatting/lint hooks pass. All 22 canonical SF1 queries match native MO exactly through the public SQL/schema and bounded row comparer.

Matched Q1 development measurements use the same MO base 64b7a43852, unchanged verified MO GPU artifacts, frozen compiler/RAPIDS provider, datasets, two streams and canonical SQL; one warmup excluded, five measured repetitions. Baseline Sirius is 955b6881; candidate is 585536bf.

Scale Baseline GPU median Candidate GPU median Input units, median
SF1 0.775129s 0.185689s 600 → 12
SF10 9.296148s 2.217461s 7264 → 117

Both scales pass the planned ≥20% latency improvement and ≥90% input-unit reduction gates. These are targeted premerge development results. The dependent MO PR will pin the actual merged native commit and run the full guarded release campaign, including the full-suite regression/resource gates. Numeric optimization and legacy cutover remain separate work.

@aunjgr
aunjgr marked this pull request as ready for review October 12, 2026 10:01
@aunjgr
aunjgr merged commit b953bb5 into matrixorigin:upstream-dev-merge Oct 12, 2026
6 of 9 checks passed
zuyu pushed a commit that referenced this pull request Oct 14, 2026
* fix(embedding): coalesce MO inputs before GPU scheduling

* fix(embedding): retain resource errors for oversized pool blocks
zuyu pushed a commit that referenced this pull request Oct 21, 2026
* fix(embedding): coalesce MO inputs before GPU scheduling

* fix(embedding): retain resource errors for oversized pool blocks
zuyu pushed a commit that referenced this pull request Oct 22, 2026
* fix(embedding): coalesce MO inputs before GPU scheduling

* fix(embedding): retain resource errors for oversized pool blocks
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