Skip to content

Cecilia/feature/nki-all-operators - #259

Open
Cecilia123li wants to merge 116 commits into
mainfrom
cecilia/feature/nki-vector-add
Open

Cecilia123li wants to merge 116 commits into
mainfrom
cecilia/feature/nki-vector-add

Conversation

@Cecilia123li

Copy link
Copy Markdown
Collaborator

All 45 operators + changes in core files to support nki trainium

Ubuntu added 30 commits June 8, 2026 19:29
…m allowed partitions and the free dimensions (PMAX, F) instead of (N, 1). Also removed unnecessary imports.
… up to 64k elements for SBUF. No pre-defined attribute for the maximum sbuf free dimensions at this moment so I am using a hard-coded value.
@bowencui123

Copy link
Copy Markdown
Collaborator

This consolidated branch is the retained source of truth for the NKI operators; for review it has been split onto main as one PR per operator (branch bowen/nki/<operator>, operator-only diffs, @Cecilia123li credited as co-author), plus:

Per-operator PRs (45):

The older per-operator cecilia/feature/nki-* PRs (#170#226) were closed as superseded; their branches remain.

Ubuntu and others added 3 commits August 29, 2026 18:54
…rflow fix

Bowen's autotune commit built on top of the old host-side _choose_oh_block()
helper (guessed SBUF_BUDGET_BYTES=100KB) that was removed after it overflowed
real SBUF. Keep the in-kernel auto-sizing (nl.tile_size.sbuf_fmax_bytes,
resolved inside the trace) as the default path via an oh_block=0 sentinel,
and let NkiAutotuner override it with candidate block sizes -- each one is
validated against the same real SBUF budget inside the kernel, so a candidate
that doesn't fit raises and is skipped by tune_or_cached rather than trusted.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013qAybi1Ym2hrjarDPdyGrs
…ector-add

# Conflicts:
#	core/engine.py
#	core/nki_timer.py
#	scripts/run_bench.py
bowencui123 added a commit that referenced this pull request Sep 18, 2026
…ches

The open pull requests were written against the old source layout. This
moves any file still under a pre-refactor source directory onto the
tilebench package and rewrites the imports inside it, so each branch is a
merge plus one command:

    git merge -c merge.directoryRenames=false origin/main
    python scripts/migrate_pr_paths.py

Disabling directory-rename detection is load-bearing. With it on, git
guesses a destination for a file added inside a renamed directory and picks
the wrong one for the NKI operator PRs, offering
tilebench/benchmarks/llm_generated/<op>/<model>/high/final/impl_nki.py
instead of tilebench/benchmarks/operators/<op>/impl_nki.py.

Verified on #294 (single operator), #303 (cross-operator import) and #259
(45 operators at once). Temporary: delete it once those branches land.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EdNBRsQvET5PUJ3Nw1hVCA
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