Период отчёта: с 12 октября 2026 года (понедельник) по 16 октября (пятница), всего 5 рабочих дней, материалы 5 ежедневных отчётов Источники материалов: 5 выпусков ежедневного отчёта TileLang (10-12, 10-13, 10-14, 10-15, 10-16); дополнительно проведена проверка через 168-часовое окно по 29 репозиториям организации tile-ai, повторный расчёт результатов тестов шести снимков ночного конвейера и сверка метаданных релизов каждого репозитория (подробности в приложении)


1. Главные новости недели

  • Линия ROCm основного репозитория завершалась четыре дня подряд, ядро новой архитектуры DeepSeek стало третьей завершённой линией (10-13 ~ 10-14): 10-13 объединены реализация с одним волновым фронтом на 64 lane для прямого прохода и декодирования одного токена DeepSeek NSA (#3152, +111/-2) и адаптивный тайлинг с бюджетом LDS/VGPR для flash-decoding (#3149, +82/-5); ранним утром 10-14 дополнительно объединены ядра пред/постобработки mHC (многообразно-ограниченные сверхсвязи) (#3156, 2 файла +83/-6, на стороне HIP работа перераспределена на полном волновом фронте из 64 lane, а смешанные веса FP32 переведены в BF16 для MFMA) и пример safe-gated KDA-декодирования (#3249, +360, включая специализированную конфигурацию GLM-5.3-Flash TP8); 10-14 также исправлена ширина сегмента 64 lane для cumsum/cummax (#2326). Все четыре изменения указывают на «адаптацию к реальности устройства»: размер волнового фронта gfx942, типы входов MFMA, бюджет LDS/VGPR — всё погашено по пунктам, поддержка ROCm перешла от «запускается» к «синхронизации с релизами новых архитектур».

  • PTO для Ascend повышен со «самостоятельной цели» до «первоклассного пути исполнения», двойная миграция NSA и дисциплина откатов произошли на одной неделе (10-12 ~ 10-15): 10-15 объединена маршрутизация исполнения #3316 — комбинация target="ascend" и execution_backend="pto" после нормализации цели с учётом исполнения подключается напрямую к CodeGenTileLangPTO, путь auto сохраняет AscendC + TVM-FFI; предшествующий выбор цели в примерах #3474 (объединён 10-14, удалено жёстко закодированное target="ascend", CI прогоняет оба варианта — ascend / pto) вместе с семью изменениями, находящимися на рассмотрении в этом окне (бэкенд tvm_ffi, векторизация VMI, SS buffer, частичный pitch копирования L0 и др.), образует семейство. На той же неделе 10-12 объединены Ascend NSA Decode (#1701, +755, 28 многоуровневых тестов) и NSA Bwd (#1730, +1593, 20 тестов); 10-14 три PR «проверки фактов в документации» (#1612, #1676, #1681) были целиком откачены из-за несоответствия регулярных выражений для низкоприоритетных ожидаемых падающих тестовов (от #1888 до #1890), bitwise_rshift повторно отправлен в переработанной версии #1893 с удалением утверждений об ожидаемых падениях; 10-15 открыто исправление тихой числовой ошибки gemm_v0 на dav-3510 (#1900), которое выявило, что --npu-arch безусловно принимает dav-2201, из-за чего ядра A5 нацеливаются на неверную архитектуру.

  • TileOPs: 52 слияния за неделю: рефакторинг базового класса Op завершён, два оператора MoE зафиксированы, SM89 становится второй платформой (10-12 ~ 10-16): слитый 10-11 рефакторинг базового класса Op (#2520, 363 файла, +3362/-5227, заявлен как «предрелизное» закрытие) унифицирует выполнение операторов с границей компиляции и без неё через _run_call, объединяет select_kernel_key/select_implementation в key_for, а граница компиляции теперь выводится из manifest; документация сайта на следующий день дополнилась «Руководством по базовому классу Op». 10-13 в один день зафиксированы два оператора MoE — masked FP8 grouped GEMM (#2521, 20 файлов, +1788/-37, согласован с семантикой masked в deep_gemm) и DeepSeek grouped top-k (#2535, 15 файлов, +1193/-69, согласован с grouped_topk из vLLM и исправлена проблема планирования 32/132 SM при T=512); SM89 с 10-12 закрывается партиями (GQA prefilling/decoding, GDN / DeltaNet prefilling, GLA / DeltaNet backward, KDA prefilling, полный спектр Norm), а рабочие станции уровня RTX 40-й серии и L40 / 6000 Ada встают в один ряд с Hopper на стороне библиотеки операторов.

  • Шесть ночных снимков базовой платформы: корректность 1032 → 1134 (+102), бенчмарки 1947 → 1989 (+42), ноль сбоев на протяжении всего периода (10-12 ~ 10-16): за неделю в шести снимках число тестов корректности выросло с 1032 до 1134, число бенчмарков — с 1947 (52 набора) до 1989 (55 наборов); во всех шести — ноль сбоев и ошибок, по 1 пропуску. Наибольший однодневный прирост пришёлся на 10-15 (+41, синхронно с 16 слияниями в TileOPs); 10-16 было два снимка (ночной и ранний утренний) — впервые за неделю два снимка за один день. Среда оценки — H200, CUDA 13.2, torch 2.13.0+cu132, tilelang 0.1.12 (подробности в таблице главы 4).

  • Сведение мультибэкендов к одной версии: обновление Hygon v0.1.15 внедрено и открыто направление распределённого IPC, MetaX догнал upstream, Moore Threads молчит всю неделю (10-13 ~ 10-16): Hygon 10-14 слил полное обновление v0.1.15 (#20, сохранён бэкенд HCU и добавлено планирование layout scale-буфера для блочно-масштабируемого GEMM) и создал ветку v0.1.15-release; в тот же день через #19 (+2577/-28, 44 файла) открыл направление Distributed (унифицированный запускатор процессов, тест IPC allreduce, пример IPC GEMM allreduce и др.); 10-15 через #21 в тот же день открыл и слил в maintenance-ветку v0.1.12-release layout асинхронного копирования для блочного масштабирования; 10-16 слил #22 (K-major упакованное копирование scale и нативный FP32 MLS GEMM). MetaX 10-13 продвинул main до узла upstream v0.1.15 (зеркало #3309), 10-16 ветка dev слила upstream main и исправила один xfail-тест. У Moore Threads с 09-30 активности не было всю неделю — это единственный из четырёх бэкендов, не приведённый к v0.1.15.

  • TileFoundry за неделю: десять слияний: сквозная поддержка разреженного декодирования в TIR, Qwen3.8-27B prefill впервые превосходит SGLang на всей длине, рефакторинг ядра и внешний аудит в один период (10-12 ~ 10-16): 10-12 слит #223 со сквозной поддержкой разреженного декодирования в TIR (84 файла, +4424/-1543; исправлены потерянная работа циклов, завышенная стоимость поиска и ошибки поэтапного обновления); 10-13 слит пример prefill для Qwen3.8-27B #229 (89 файлов, +38069) — первый в этом репозитории пример, который быстрее SGLang на всех трёх длинах 1024 / 4096 / 8192 (при 8192 скоринг занимает лишь 3,1% FLOP, а нагрузка превышает точку перегиба H200 в 36 раз); 10-15 в том же окне внедрены рефакторинг слотов экземпляров (#232, весь набор исходников — 1674 прохождения) и контракт lowering / printer (#233); 10-16 добавлены контекст доступа analysis (#238) и исправления аллокации/lowering по issue 237 (#241). В том же окне, когда завершился рефакторинг, сторонний репозиторий навыков сразу внедрил TileFoundry vendor в рабочий процесс и перечислил 4 ошибки emitter и 2 ошибки рантайма — начался этап внешнего аудита.

  • У пользователей впервые появилась итерация версии: TileKernels v2.1.0 с переписанной стороной Ascend, FlashQLA исправляет Blackwell sm120 (10-14): DeepSeek TileKernels v2.1.0 (16 файлов, +352/-382) — первая итерация версии этого репозитория после добавления поддержки Ascend 09-30; изменения сосредоточены на стороне Ascend (существенно переписан norm_forward_asc, прямой и обратный проходы SwiGLU, гейтирование Engram); README требует обновления до TileLang 0.1.15, PyTorch 2.13, Ascend 950 NPU и CANN 9.2.0; Qwen FlashQLA #48 (5 файлов, +82/-5) исправляет недоступность прямого/обратного прохода Blackwell sm120 начиная с 0.1.13 (block_DV ошибочно изменён на 128, отсутствует aggregate_card_state); все тесты проходят на RTX 5090 + tilelang 0.1.15 + CUDA 13.0.

  • Матрица оборудования расширяется в ту же неделю: запуск SM121, две линии блочного масштабирования SM120 на рассмотрении, декодирование D=256 расширено до SM80/SM90, реализован сеточный параллелизм OpenMP для CPU (10-12 ~ 10-15): блочно-масштабированная MMA для SM121 (GB10 / DGX Spark) запущена 10-11 (#3430, проверено на DGX Spark с драйвером 580.178.04 / CUDA 13.0); ранее при sm_121a все блочно-масштабированные MMA компилировались в BPT.TRAP; на стороне SM120 всю неделю на рассмотрении MXFP8/MXFP4 (#3495) и семейство всех операндов mxf8f6f4 (#3099). На потребительской и рабочей стороне плотное декодирование FP16/BF16 с D=256 расширено с SM89 до SM80/SM90 (#2563, с нагрузкой Gemma-2B 8K cache, также исправлено игнорирование softcap в split плотного RoPE); в основном репозитории 10-14 слит сеточный параллелизм OpenMP для бэкенда CPU (#3109) и переход Windows NVCC на cl.exe (#3510).


2. Прогресс ключевых проектов (основной репозиторий tilelang)

Версии и релизы

  • Последний тег и релиз основного репозитория по-прежнему v0.1.15 (выпущен 30.09), за всю неделю новых тегов и новых записей на странице релизов не появилось, к пятнице этой недели прошло уже 16 дней. Последние три записи на странице релизов по порядку: v0.1.15 (30.09), v0.1.14 (02.09), v0.1.13 (03.08) — прежний месячный ритм на этой неделе был нарушен.
  • Теги линии адаптации за всю неделю не изменились: Ascend v0.1.2.000, MLIR Ascend v0.1.2.020.sglang.poc, MetaX v0.1.14 (13.10 только main-образ обновлён до узла v0.1.15, новый тег не проставлен), Moore Threads v0.1.14+musa.1; Hygon работает параллельно по двум линиям: основная v0.1.15 плюс поддерживаемая ветка v0.1.12-release.
  • Контрастом к релизному затишью стало повышение требований у downstream-потребителей: TileKernels v2.1.0 явно требует TileLang начиная с 0.1.15, а исправление sm120 в FlashQLA также проверено на 0.1.15 — с этой недели «базовая версия 0.1.15» стала фактическим минимальным требованием для тех, кто внедряет TileLang.

Компилятор, путь исполнения и языковой уровень

  • Маршрутизация исполнения PTO (#3316, влито 15.10): добавлен хук нормализации цели с учётом исполнения (подключается при создании BackendContext); специализированный нормализатор Ascend перед разбором специализирует нативную цель Ascend в вариант цели PTO и сохраняет такие атрибуты, как arch; генерация кода устройства переведена на PTO_CODEGEN и target.build.tilelang_pto_without_compile; в документации приведена эквивалентная конфигурация TILELANG_DEFAULT_TARGET=ascend плюс TILELANG_EXECUTION_BACKEND=pto. Тесты покрывают разбор контекста, сохранение атрибутов цели, диспетчеризацию кэша и выбор через переменные окружения.
  • Генерация кода PTO DeepGEMM (#3330, влито 14.10): сквозное отслеживание tl.ascend_set_mmad_direction через управляющий поток и кодирование действующего направления в инструкцию MAD, отклонение достижимых MAD при конфликтующих направлениях; поддержка инкрементальной загрузки после SIMD, преобразования адресов UB в указатели PTODSL для смешанных ядер AIC/AIV, динамических размерностей и шагов L0C→UB, знаковой упаковки MX scale int16. По собщению авторов, из 15 вариантов использования DeepGEMM PTO проходят 14, test_bf16_m_grouped_padding по-прежнему блокируется невозможностью легализации преобразования FP32→BF16 в бэкенде PTOAS VPTO.
  • Независимое исполнение AIV (#3485, влито 14.10): расширен Ascend AutoSchedule, чтобы AIV0 и AIV1 могли выполнять разную работу при зависимости sid (чередующееся завершение, разделение деквантования и завершения, непересекающиеся разделы входных данных, переключение ролей внутри цикла); AssignCore перенесён до оценки задержки и планирования, а для локальных буферов UB и скалярного состояния AIV созданы независимые идентичности.
  • Общий базовый класс генерации кода семейства C (#3289, влито 14.10): CodeGenTileLangCBase унифицирует генерацию кода CUDA, HIP, CPU C, Ascend C++, Metal и хостового кода C; исправлена проблема, когда T.import_source, T.Kernel(prelude=...) и pragma_import_c при отсутствии завершающего перевода строки в исходном тексте или окончании обратной косой чертой проглатывали следующую сгенерированную строку. Проверка: 83 проходящих сфокусированных регрессионных теста, 405 проходящих тестов в наборах codegen и launch.
  • Параллелизм по сетке CPU (#3109, влито 14.10): добавлен MaterializeCPUParallelGrid, превращающий аннотированные циклы сетки CPU в параллельные циклы OpenMP, с сопутствующим collapse циклов, настройкой числа потоков, порогом минимального числа итераций и понижением размещения выделений, а также с добавлением флагов компиляции для Linux / macOS / Windows — бэкенд CPU впервые получил параллелизм на уровне сетки.
  • Линия Host IR весь неделю на рассмотрении: #3473, унифицирующий пути исполнения CUDA и CuTeDSL, и #3481 с прямым JIT Host IR и нативным кэшем, открытые с 10.10, так и не были влиты и остаются крупнейшим направлением на рассмотрении в основном репозитории.
  • Семь изменений семейства PTO (на рассмотрении с 15.10): бэкенд исполнения tvm_ffi (#3516), векторизация T.Parallel в PTO VMI (#3512), SS buffer (#3514), явный pitch для частичных копий L0 (#3511), частичное копирование NZ буфера UB→L1 (#3530), типозависимая векторная выдача значений PTO Ramp (#3535), исправление локального векторного доступа внутри SIMT VF (#3523). Из них SS buffer влит утром 16.10 (#3514, подтверждено дополнительной проверкой после момента среза ежедневного отчёта).

Корректность и исправление дефектов

  • 10-12 (закрытие окна выходных): белый список dtype для GEMM (#3245, неподдерживаемые комбинации отклоняются до CUDA codegen, дефект #3004), шаг цикла For (#3427), загрязнение нормализации выходного индекса JIT (#3318), понижение узких целых для popcount (#3300, int8(-1) считается как 8 бит), допуск вещественных источников для побитовой редукции (#3332), выборы барьеров CuTeDSL (#3400, повторная публикация достижения несколькими потоками при 2D/3D блоках потоков), идентичность параметров NVRTC / CuTeDSL (#3414).
  • 10-13: точные границы потоков thread_storage_sync (#3291, 4 файла +292/-96, исправляет #2954); vendor помощника редукции PTODSL для Ascend (#3469, +555/-115) исправляет ModuleNotFoundError при CANN Weekly.
  • 10-14: T.fill с многобуферностью SimdVF (#3455, размерность многобуферной версии приводит к отклонению проверки заполнения всего буфера), переключатель очистки временных файлов bisheng (#3461), ошибочная отправка групп меж-warp allreduce (#3494).
  • 10-15: JIT отклоняет нехэшируемые параметры времени компиляции (#3417, предотвращает молчаливое повторное использование устаревших ядер из-за изменяемых значений по умолчанию, 91 проходит), устранение времени компиляции тестов (#3517), конфигурация управления (#3513, автоматические метки CodeRabbit).
  • 10-16 (включая подтверждённое дополнительной проверкой после отсечки ежедневного отчёта): Ascend SS buffer (#3514), построчное сохранение одного элемента при редукции SimdVF dim=1 (#3437), сброс состояния RNG между ядрами на Ascend (#3331), защита от двойного расширения общих буферов соседних конвейеров (#2342), ограничение производителя TMA-only warp 0 (#3503).
  • 10-16, раннее утро, новые ожидающие рассмотрения: исправление общего буфера cumsum при специализации по warp (#3536) — потоки-потребители нумеруются с 128, а шаблон сканирования не получает нижнюю границу диапазона, из-за чего CumSum1D / CumSum2D досрочно возвращаются на потоках-потребителях, а буфер остаётся незаписанным; после исправления тестовый пример #3528 из 131072 элементов полностью корректен (в main ошибочны 129019 элементов). Также сброс только для чтения L2 в profiler (#3534) и диагностика числа потоков общего сканирования (#3532).

Матрица производительности и оборудования

  • SM121 (GB10 / DGX Spark): #3430 позволяет tl::sm120_mma_sync_blockscaled принимать одновременно SM120 / SM121 в зависимости от arch и семейства, тесты NVF4 ограничиваются по семейству SM12x, а таблица архитектур CuTeDSL TMA допускает sm_121 / sm_121a.
  • Блочное масштабирование SM120: расширения MXFP8 (kind::mxf8f6f4, 1X, UE8M0) и MXFP4 (mxf4nvf4, 2X, UE8M0) (#3495, +884/-51, накопление в FP32, один масштаб на каждые 32 элемента K) и полное семейство операндов f8f6f4 (#3099) продолжают находиться на рассмотрении.
  • ROCm: помимо четырёх пунктов из главных новостей, исправление фронта волны scan от 10-15 (#2326) позволяет cumsum / cummax выбирать ширину сегмента по целевой ширине фронта волны, а 32-поточные блоки на этапе компиляции исключают шаблон на 64 lane; набор тестов CUDA scan на B300 — 17 пройдено.
  • Пакетная политика производительности SM89: декодирование MLA выбирает разбиение KV на 2/4/8/16 в зависимости от батча и числа головных блоков (#2511: одиночный запрос bf16 4k 0.158→0.034 мс, примерно 4.6×; 32k 1.170→0.162 мс, примерно 7.2×), предзаполнение KDA разбивается по плиткам из 16 значений столбцов (#2510: 4k/32k/64k снижение на 22.9%/19.8%/18.5%), расширение сканирования (#2574: от 4096 до 16384 токенов, расширение с 8 value-head до 16 value-head, ускорение в 19 строках на 2.5%~19.7%).
  • Windows / Metal: Windows NVCC переведён на MSVC (#3510, исправление воспроизводимого случая под CUDA 13.3); пакет из десяти изменений Metal (#3194 по #3210) на рассмотрении, охватывает аккумулятор сегментной нормализации, фрагменты simdgroup GEMM, векторные типы BF16, разворачивание коротких константных циклов и другое.

Наблюдение за очередью ревью

  • Открытые PR в основном репозитории: 170 (10-12) → 168 (10-13) → 161 (10-14) → 160 (10-15) → 165 (10-16), в течение недели колебались в диапазоне от 160 до 170; общее число открытых PR в масштабе организации выросло с 498 (10-12) до 507 (10-13), а на момент подготовки отчёта на этой неделе составило 532.
  • Слияния и результаты в масштабе организации: за неделю слито 109 PR, открыто 158 новых (основной репозиторий 30, TileOPs 52, репозиторий адаптации Ascend 8, TileFoundry 10, Hygon 3, MLIR Ascend 2, MetaX 2, сайт документации 2; окно по пекинскому времени с 10-12 по 10-16, измерено поиском по GitHub). За один день 10-16 обновлений на рассмотрении достигло 172 — максимум за неделю.
  • Структурная оценка сохраняется и усиливается: сокращение основного репозитория (170 → 165), утолщение TileOPs (9 → 16 с последующим откатом), восстановление репозитория адаптации Ascend (230 → 237) — картина «ворота слияния сужаются, очередь на рассмотрении растёт» сохранялась всю неделю, а подготовительные действия в период тишины релизов сосредоточились на стороне ревью.

3. Мультибэкендная адаптация (Ascend / MetaX / Hygon / Moore Threads и другие)

Ascend: слияние миграции, сходимость путей исполнения и дисциплина откатов

  • Слияние миграции: NSA Decode (#1701, 10-12, +755) реализует одномерное декодирование (seq_q=1) в режиме Developer mode hybrid с явным распределением L1/L0C/UB, 5 сегментов GM workspace автоматически распределяются через workspace_idx=[6..10], компилятор автоматически переключает области видимости Cube/Vector и вставляет межъядерную синхронизацию флагов; иерархическое тестирование 28 случаев (пороговые значения L0, функциональность L1 включая типовую конфигурацию DeepSeek-V3 D=128/S=16/BS=64, аномалии и граничные особые значения L2), практическая проверка на 910B3 fp16. NSA Bwd (#1730, +1593) предоставляет два JIT-ядра nsa_fwd и nsa_bwd_single, обратное распространение по парадигме flashattn_bwd с внутричиповой прямой передачей через T.copy (L0C→UB, UB→L1), что позволяет сэкономить 9 GM workspace, иерархическое тестирование 20 случаев.
  • Откат и переработка: 10-14 три PR по проверке фактов в документации (семантика round #1612, bitwise_rshift #1676, bitwise_xor #1681) были полностью откачены (#1888 по #1890). Причина объяснена в переработанной версии #1893: при выполнении ежедневного полного набора низкоприоритетных тестовых случаев регулярное выражение исключения в ожидаемо падающих тестах не совпало — фактически выбрасывалось InternalError из AscendVectorInstructionSelection вместо ожидаемого Compilation Failed, а эти тесты помечены как low_priority и не выполняются на этапе CI PR, обнаруживаются только при ежедневном полном прогоне. В переработанной версии удалены все утверждения об ожидаемых падениях (dtype вне таблицы поддержки теперь покрываются таблицей поддержки dtype в документации), сохранены переписанные docstring и тесты на реальном оборудовании.
  • На рассмотрении и в очереди: dav-3510 gemm_v0 тихая числовая ошибка (#1900, открыт 10-15) — наиболее достойный отслеживания PR этой недели — без исключений, без NaN/Inf, без нулевых значений, все проверки мультимножеств пройдены, только на удалённой стороне проявляется как сбой точности; два разделяемых коммита (--npu-arch берётся с платформы, ограничение staging gemm_v0) ожидают проверки порядка зависимостей. Также миграция обратного/прямого прохода KDA chunk_delta (#1895 / #1896), переработка документации bitwise_xor (#1899), situ_glu (#1891), примеры cann-bench/lstm (#1892), indexer_bwd (#1887). Количество открытых PR выросло с 230 до 237.
  • Основной репозиторий: помимо ключевых новостей о PTO-маршрутизации и независимом AIV, выбор цели в примерах #3474 позволяет TILELANG_DEFAULT_TARGET определять цель, точка входа DeepGEMM JIT поддерживает execution_backend="auto"; исправление группировки межварпового allreduce #3494 является ответом на обратную связь сообщества о корректности после слияния #3469, цикл замкнулся в течение двух дней.

MLIR Ascend (tilelang-mlir-ascend): реализовано явное управление памятью, исправления в базе знаний

  • Явное управление памятью и конвейером NPUIR #190 (слито 10-13, 12 файлов, +1092/-102): поддержка двустрочного копирования GM→UB со знаковым pitch и непрерывного копирования GM/L1 ND, представления физических буферов и хранилища изменяемых скаляров, событий ping-pong GEMM L0 и флагов блоков MMAD / Fixpipe (включая требования явной синхронизации), областей T.vbrc с размерностями времени выполнения; исправления знакового деления с округлением вниз/остатка Expert, беззнаковой арифметики и ленивого понижения условий.
  • Полный отчёт о производительности от 10-12 (#197, 7 операторов 112 случаев, все пройдены, CANN 8.5.0 / 910B2C / msprof) и исправления в базе знаний от 10-15 (#202, описание partial / merge для ArgMax N-split унифицировано как выполняемое в рамках одного device launch) слиты соответственно; параметризация T.Pipelined() (#199), codegen FloorDiv / FloorMod (#200), API распределения памяти Cube (#201) на рассмотрении. Открытых PR стабильно 32.

Hygon (Hygon): формирование трёх линий — поставка по старой линии, догоняющая upstream по новой линии, распределённая работа в новой ветке

  • Конвейер регистров (#18): находится на рассмотрении всю неделю, 49 файлов, +4144/-318; в бэкенд добавлен конвейер регистров (совместная работа с конвейером разделяемой памяти, вставка коммитов и барьеров по ступеням конвейера), а также warp-diverge при числе warp более 4; автор сообщает, что example_gemm достиг уровня rocblas.
  • Ветка функции FP8: в feat/hcu-mqa-fp8 MLS channelwise FP8 GEMM по самозаявлению достигает 432 TFLOPS; 10-12 добавлено «при M≤32 пропускная способность fp8-декодирования GEMM превышает hipblas» и упорядочены наименования (все — по самозамерам автора внутри ветки, PR не связан).
  • Основная линия и линия релизов: 10-14 влит #20 (полное обновление до upstream v0.1.15 с сохранением бэкенда HCU и рабочего процесса build.sh, добавлено планирование раскладки scale-буфера для блочно-масштабируемого GEMM HCU и сопутствующая раскладка LDS), создана ветка v0.1.15-release; 10-15 #21 включает раскладку асинхронного копирования блочного масштабирования в тот же день в поддерживаемую линию v0.1.12-release; 10-16 влит #22 (K-major упакованное копирование scale и нативный FP32 MLS GEMM, после момента среза ежедневного отчёта).
  • Распределённая линия: #19 (+2577/-28, 44 файла) и ветка distributed продвигались дважды за неделю: охвачены унифицированный запускатор распределённых процессов, валидация инициализации метаданных IPC, тесты BF16 / полностью однорангового IPC allreduce, пример IPC GEMM allreduce, распространение ошибок закрытия IPC и сбоя инициализации, защита от недопустимых peer, удалённое блочное копирование STRIDE, а также один рефакторинг «move distributed language APIs». Многокарточные коллективные коммуникации становятся основной линией следующего этапа Hygon.

MetaX: после достижения паритета с upstream — переход к слиянию линии dev

  • 10-13 ветка main продвинута до узла версии upstream v0.1.15 (зеркало #3309), зеркальная линия догнала релиз; dev (основная рабочая линия адаптации) ранее остановилась на 09-24. 10-16 dev влил upstream main (Merge branch 'main' ... into dev) и исправил один xfail-кейс [fix bug][MetaXGPU] — этот коммит (10-16 12:35) находится после момента среза ежедневного отчёта 10-16 и был внесён при дополнительной проверке на этой неделе. Открытые PR стабильно держатся на 16.

Moore Threads (MUSA) и Sunrise: полная тишина за неделю и обновление зависимостей

  • У Moore Threads после 09-30 за всю неделю не было пушей, открытых PR — 6; это единственный из четырёх отечественных бэкендов, не выровненный по v0.1.15; v0.1.15+musa.1 остаётся последним релизом (09-30).
  • Sunrise (репозиторий бэкенда TANG для S2/S3) 10-12 имеет лишь два обновления зависимостей CI от Dependabot (#7, #8) на рассмотрении, открытых PR — 3, динамики в коде нет.

4. Экосистема и потребители

TileOPs: неделя 52 влитых изменений — завершение рефакторинга, закрытие MoE, ежедневное обновление рейтинга по всем операторам

  • Управление: рефакторинг базового класса Op #2520 (влит 10-11, 363 файла, +3362/-5227) выполнен десятью коммитами по принципу «сначала поведение, потом механическое переименование»: операторы с границей компиляции и без неё унифицированно идут через _run_call, при сбое откат определяется тем, была ли цель выбрана данным вызовом, если подоператор не принадлежит ни одной стадии delegate_for, составной вызов целиком завершается неудачей, _validate_dtypes удалён, key_for объединяет две точки выбора, граница компиляции выводится из manifest. На следующий день в документацию влито «Руководство по базовому классу Op» (#69), код и документация синхронизированы.
  • Двойное завершение MoE: masked FP8 групповой GEMM #2521 (20 файлов, +1788/-37, закрывает #2388) с FP8 e4m3, блочными масштабами 1x128 / 128x128, выходом bf16 соответствует семантике masked в deep_gemm; ядро — постоянная сетка из TMA producer warp и двух WGMMA consumer warpgroup, пустые тайлы не занимают CTA, каждая плитка весов читается из HBM только один раз; манифест сужен до masked-раскладки и дополнен 14 строками нагрузок (две строки E=8 плюс двенадцать строк декодирования EP=8, охватывающих DeepSeek-V3, Qwen3-235B-A22B, Kimi-K2, batch 64 / 256), добавлен генератор moe.masked_routed_metadata, имитирующий дисбаланс экспертов (DeepSeek-V3 b64 пусто 4/32, Kimi-K2 b64 пусто 13/48). Групповой top-k DeepSeek #2535 (15 файлов, +1193/-69, закрывает #2268) дополнен num_expert_group / topk_group / routed_scaling_factor и соответствует grouped_topk из vLLM, одновременно исправлена проблема планирования, когда при T=512 стандартный TOKENS_PER_BLOCK занимает лишь 32/132 SM. Завершающий рефакторинг #2551 удаляет специализированное ядро TightRow, покрытие раскладок расширено до SM80 / SM86.
  • SM89 становится второй платформой: 10-12 три коммита (D256 dense GQA декодирование #2529, dense GQA префилл #2528, GDN / DeltaNet префилл #2527, 21 случай «сбой — невозможно распределить» переведён в прохождение), 10-13 четыре коммита (GLA обратный проход #2546: разделяемая память 114688→81920 байт; DeltaNet обратный проход #2547: 147968→98816; KDA fused префилл #2548: 256 потоков распределение 182528→101120; компактный построчный групповой GEMM #2549), плюс GQA split log-sum-exp переведён на накопление FP32 (#2550, при больших оценках bf16 максимальное отклонение split-смешивания 0.23, autotune переведён на замер по фактически запущенной программе) и декодирование D=256 расширено до SM80/SM90 (#2563).
  • Завершение семейства внимания: 10-15 три коммита влиты в один день — varlen GQA агрегация и конвейерное скользящее окно (#2537, FP32 per-head sinks с покрытием части varlen), постраничный GQA с read-only RoPE / двусторонним скользящим окном / per-head sinks (#2516), оператор записи постраничного KV PagedKVCacheWriteFwdOp (#2539, рассеивание на месте по слотам вызывающей стороны, пропуск слота -1, независимые масштабы K/V FP8, сохранение семантики NaN и насыщения при переполнении, приёмка в сравнении с FlashInfer и vLLM). Ранее 10-12 уже влиты MLA декодирование на SM89 (4.6x / 7.2x), расширение разбиения при тюнинге MLA (кандидатов 24→40, холодный тюнинг 348.6 с→151.6 с), широковещательная рассылка дескриптора WGMMA из lane 0 (26 строк бенчмарка быстрее на 0.7%~4.1%), KDA префилл, битовая сортировка NSA top-k, специализированное ядро GQA TMA для постраничного режима (на H200 перенятые четыре строки снижены до 0.44~0.88 от исходного времени).
  • Пакет производительности foundry переходит в ежедневный ритм: 10-13 восемь влитых коммитов плюс восемь новых, 10-14 одиннадцать закрытий, 10-15 три коммита, репрезентативные данные — удержание softmax в регистрах _held_row плюс свёртка warp shuffle ([#2570](https://github.com/tile-ai/TileOPs/p

ull/2570): 39/42 строк впереди на 1,1%~78,1%, лишь две строки lm-head отстают 0,909x/0,934x); когда TMA не может адресовать вывод с N, не кратным 8, построчное построчное по warp сохранение (#2566: 294,7→23,2 микросекунды, 12,7x, быстрее cublaslt-best в 7,5 раза); цепочка GELU erf сокращена на пять инструкций (#2557: 1,125x), быстрое деление с 16-битным гейтом в SiluAndMul (#2565: 1,074x, соотношение с torch-compile перешло из 0,945x в положительную область), чередование staging при завершении разбиения сгруппированного GEMM (#2582: все четыре строки нагрузки MoE впереди quack, fwd 1,015x / dgrad 1,012x / wgrad 1,033x), предварительная загрузка весов W4A16 (#2586: decode-long-k достигает 1,047 раза от marlin-fp16, каждая из 8 строк тайлов ускоряется на 2,5%~7,6%), sigmoid без деления по IEEE (#2588: 1,020x~1,042x, тестовых узлов +2). Параллельно развёрнуты пулинг, нормализация, редукция, RoPE (MaxPool1d/3d, AvgPool3d, RMSNorm с разбиением по строкам по ширине, InstanceNorm с целыми векторными строками до 2048 элементов, посимвольные тесты any/all, warp-сканирование подсчёта групповых тайлов: 4096 групп при 32 потоках — 62 регистра вместо 152).

  • Исправления линейного внимания: стабилизация обращения в предзаполнении KDA (#2584, на соответствующих ключах main падал в 6 chunk- и 2 fused-случаях, включая NaN; заменено на решение диагональных блоков 16x16 в FP32 с переиспользованием общего буфера), переиспользование памяти в обратном проходе GLA (#2569, 131072→98304 байт укладывается в лимит SM89, в PR явно не заявляется ускорение), пропуск состояния предзаполнения GLA (#2540, исключены выделение и чтение целого тензора начального состояния FP32), загрузка состояния декодирования одним тайлом в обход зависания TMA (#2538), пропуск поиска экспертов MoE (#2575), ограничение permute-align (#2559).
  • Очередь: открытых PR 9 (10-12) → 19 (10-13) → 26 (10-14) → 17 (10-15) → 16 (10-16), за неделю сначала рост, затем спад; скорость слияния и толщина очереди на рассмотрении попеременно доминируют.

Ночной конвейер TileOPs: шесть снимков, корректность 1032 → 1134

  • 10-12 03:40 — снимок fc2a2a91 (базовый 70cfdf84): корректность 1032 пункта, бенчмарки 1947 пунктов (52 набора), ноль сбоев и ошибок, 1 пропуск
  • 10-13 03:53 — снимок 4cd9f968 (базовый 6ec0d086): корректность 1042 пункта, бенчмарки 1947 пунктов (52 набора), ноль сбоев и ошибок, 1 пропуск
  • 10-14 04:18 — снимок 76e8cac2 (базовый a79a21e4): корректность 1064 пункта, бенчмарки 1966 пунктов (53 набора), ноль сбоев и ошибок, 1 пропуск
  • 10-15 05:15 — снимок 56c2ab6b (базовый 35a25677): корректность 1105 пунктов, бенчмарки 1970 пунктов (53 набора), ноль сбоев и ошибок, 1 пропуск
  • 10-16 11:35 — снимок d6ab1d14 (базовый cb15bce7): корректность 1129 пунктов, бенчмарки 1982 пункта (54 набора), ноль сбоев и ошибок, 1 пропуск
  • 10-17 04:13 — снимок d44ab6d3 (базовый 67250e81): корректность 1134 пункта, бенчмарки 1989 пунктов (55 наборов), ноль сбоев и ошибок, 1 пропуск

  • Чистый прирост за неделю: корректность +102, бенчмарки +42, наборы +3; в каждом из шести снимков по одному пропущенному случаю (неприменимый к SM89 тест-кейс тюнинга на H200, неподдерживаемая конфигурация KDA и т. п.), без сбоев и ошибок. Среда оценки: H200, CUDA 13.2, torch 2.13.0+cu132, tilelang 0.1.12, версия tileops в последнем снимке 0.0.1.dev1338+g67250e817.
  • Связь с объединёнными коммитами: +10 от 10-13 соответствует серии SM89, +22 от 10-14 — MoE и обратному/предзаполнению SM89, +41 от 10-15 — 16 коммитам TileOPs (пакеты производительности, как правило, с добавлением test-node) — «один объединённый коммит — ступенька вверх по базе»: скользящий учёт продолжался всю неделю.
  • Пояснение о расхождении окон: при формировании ежедневного отчёта 10-16 ночной снимок 10-15 не был виден; фактически он появился в 11:35 10-16 (пекинское время, позже отсечки ежедневного отчёта в 07:00) и был дозаписан на этой неделе; последняя запись в таблице 10-17 04:13 — результат ночного запуска 10-16, то есть второй снимок за 10-16.

TileFoundry: десять коммитов — от разреженного декодирования к поставляемой инженерной форме

  • Разреженное декодирование сквозь TIR (#223, влито 12.10, 84 файла, +4424/-1543): продолжение решения оставшихся проблем DSA-декодирования из #218 — исправлены потерянный объём циклической работы, завышенное начисление при поиске и ошибки поэтапного обновления; реализованы индексный асинхронный сбор, понижение Bitcast и Where; ограничения распределения переведены на единый аксессор (возвращающий Storage), захваченные обновления пишутся напрямую в tile (16B разделяемой памяти), параметры инициализации с переносимыми значениями получают отдельное хранилище и предварительное копирование; 16 наборов FixtureCase защищают каждый вызов CLI и проверку вывода.
  • Префилл Qwen3.8-27B (#229, влито 13.10, 89 файлов, +38069): текстовый префилл 64-слойной гибридной gated-delta-net / attention модели на всех трёх длинах 1024 / 4096 / 8192 работает быстрее SGLang; на 8192 оценка занимает лишь 3,1% FLOP, остальное — GEMM, то есть ограничение по FLOP, экономить нечего; в примере analyze --roofline используется как вход для принятия решения. Границы: базовый уровень SGLang задан вручную, его два столбца метрик на 8192 расходятся на 9,1%, пример должен обосновать выбор столбца; ранее примеры в этом репозитории были только декодированием и достигали лишь ничтожной доли SGLang.
  • Рефакторинг и контракты: рефакторинг слотов экземпляров (#232, влито 15.10) заменяет подузлы модуля на явные разделяемые слоты экземпляров (повторяющиеся слои разделяют определение, сохраняя независимые ресурсы и идентичность экземпляра); адреса размещения разделяются по SSA-листьям, интервалы активности кешируются по определению и транслируются в точках вызова; удалены старый механизм встраивания и Program; весь набор исходников проходит 1674 теста / 11 пропущено; контракт lowering и printer (#233, 15.10) сохраняет авторские области, определения хранилищ, окна обновления и поэтапное владение; допуск инструкций разделяется между выводом, генерацией кандидатов, lowering и проверкой TIR. 16.10 добавлены контекст доступа analysis (#238) и исправления распределения/lowering по issue 237 (#241).
  • Инженерные точки входа: отдельный проект scaffold (#227, влито 13.10, 47 файлов, +1356/-368) генерирует по Target codegen редактируемый отдельный проект CMake (представления параметров, специализированная диспетчеризация, лаунчер, регистрация хоста и заглушки тел CUDA); артефакты codegen и линковка разделены на шесть файлов модулей; усиление schedule CLI (#231, влито 14.10) унифицирует сопоставитель инструкций, добавляет tf.empty и schedule finalize --dim; зафиксирован полный набор исходников: 1617 проходит / 11 пропущено.
  • Релизы и на рассмотрении: страница релизов по-прежнему v0.0.2 (10.09), за всю неделю новых версий нет; открытые PR 1→2→1→3→2. На стороне внешнего аудита сторонний tilelang-cuda-skills 15.10 добавил TileFoundry как вендорный подмодуль (зафиксированы коммиты main и cutlass), публично пометил путь compile() как экспериментальный и перечислил 4 ошибки emitter (эмиссия Cast, суффикс тензора fill, координаты tensor_view и др.) и 2 ошибки времени выполнения (завершение reduce-workspace, диспетчеризация warps_per_group), а также указал на отсутствие host TMA tensor-map emitter и очертил поддерживаемые пути (генерация HIR, check / analyze, schedule finalize, ядра TileLang).

TileSight, TileRT и стороны внедрения

  • TileSight: 13.10 создана ветка dev и появились коммиты уровня ветки, публичные ветки включают main и tilelang (последняя содержит коммиты фронтенда TileLang), релизов нет, открытых PR — 0. Как открытая 23.09 модель производительности с центром на тайлах, на этой неделе проект находится в периоде упорядочивания веток.
  • TileRT: всю неделю коммитов нет (последний — 24.09), на странице релизов по-прежнему v0.1.5.post2 (06.08); на этой неделе нет ни релизных PR, ни обновлений документации по benchmark.
  • TileKernels: v2.1.0 влит 14.10 (подробности в главных новостях), после 14.10 до момента составления отчёта новых коммитов нет, счётчик открытых PR снизился. Требования к версиям (TileLang 0.1.15 / PyTorch 2.13 / Ascend 950 / CANN 9.2.0) делают его первым жёстким downstream-ограничением «базовой линии 0.1.15».
  • FlashQLA: исправление sm120 (#48, 14.10) восстанавливает block_DV=64 и дополняет aggregate_card_state, все тесты на RTX 5090 + tilelang 0.1.15 + CUDA 13.0 проходят; в PR предлагается в дальнейшем исследовать контекстный параллелизм внутри узла / между узлами.

5. Сообщество, руководства и мероприятия

PTO-ISA: новый репозиторий tilelangGym и ритм релизов SuperNPUBench

  • tilelangGym создан 14.10, позиционируется как «тестирование PTO lowering и чувствительности к производительности различных benchmark / microbenchmark»; 15.10 семь коммитов (с 06:47 до 07:59) сформировали независимый стандартный тестовый набор SimtVF: SV / CF / SP плюс затравочные коммиты и пины версий PTO-DSL, регрессия (#1), упорядочивание скриптов и структуры, SV1 SIMD keynote и единая таблица PASS (#3), полная таблица PASS вершин remat и построчное сопоставление Simt с SIMD-DSL (#4), а также привязка SIMD около 85% и цепочки анализа Simt IPC / bubble / ILP к ANALYSIS — создана площадка данных для анализа чувствительности к производительности PTO lowering.
  • SuperNPUBench всю неделю высокоактивен: 12.10 четыре коммита (разложение тайлов rms_norm 16 KiB с редукцией R=8192, потокобезопасность блокировки файлового IO RES_CHECK в gfsim, упрощение matmul_test до 4-PE, слияние #225) и два релиза (ops-20261012, ops-20261013, последний разбит по suite на 2 малых пакета и включает все скомпилированные ELF); 13.10 выпущен ops-20261013.2 и продвинуты прямое подключение matmul_test к CUBE TCVT, переносимый gfsim fixture для topk; 14.10 три коммита в архив (rms_norm_dynamic_simt_32k, статическое ядро group_norm_grad в V0, ядро matmul reuseB); 15.10 односходовая редукция обратного прохода групповой нормализации и балансировка gamma/beta (#245).
  • Ветка simt_compare в tilelang-puzzles-ascend продвигается всю неделю: T.reduce_max на практике в 8,94 раза быстрее последовательного сканирования, 12 ядер переведены на свёртку T.reduce_absmax и повторно измерены.

Сторонние инструменты и материалы: от репозиториев-списков к внешнему аудиту

  • tilelang-debugger: 10.10 два коммита (унифицированный захват доступа к исходникам + офлайн-HTML-отчёт об отладке со ссылочными доказательствами), на TileLang 0.1.12 и 0.1.15 прогнано по 117 тестов CPU / TIR, на H200 — 42 сбора и 66 пар запусков baseline / инструментированных; на этой неделе (с 12.10) новых коммитов нет.
  • Учебный репозиторий easy-tilelang: 13.10 коммит «adapt tilelang new ascend», включающий наблюдения компиляции lower-trace для Ascend A5 и другие пункты; после 14.10 тишина.
  • TileMC (сторонняя цель для manycore-архитектур): 14.10 один коммит, расширение поддержки FP32, отображение panel и масштабирование рабочих нагрузок.
  • Репозиторий конвейера BM1690 (TPU от Sophgo): 14.10 восемнадцать коммитов, 15.10 шесть платформенных журналов — платформенные smoke-тесты Matmul / RMSNorm, результаты Split-K на плате, совместная отладка RoPE и диагностика таймаута запуска, переинициализация драйвера и семантика выхода, сборка хоста ядра 7.0.0-34 и т. п.; это записи совместной отладки личного экспериментального репозитория.
  • Линия материалов SwHwCodesign не сложилась: созданный 11.10 TileLang-Awesome уже 12.10 недоступен (404, поиск не находит одноимённого нового репозитория), тот же аккаунт создал ещё шесть заглушечных репозиториев AI-*, к 14.10 из публичных репозиториев осталось только 2 (AI-Compiler, AI-Infra), и коммитов в них нет.
  • tilelang-cuda-skills: 15.10 первый внешний аудит TileFoundry (содержание в главе 4) — первый публичный образец «реального использования инструментальной цепочки».

СМИ и академическое сообщество: устойчивое молчание после волны публикаций

  • С 10-10 по 10-11 китайские углублённые обзоры (две версии — Chzhivei, Fentsin и Chzhikhu) ставили TileLang в центр повествования, описывая абстракцию Tile, три уровня программных интерфейсов и механизм кэширования автоматической настройки, а также приводили сравнение с адаптацией под Ascend C «производительность почти не отличается (A2 / A3)»; обзор от 10-11 зарубежного агрегатора (tech-insider) носит характер перепечатки и не является независимым источником.
  • С 10-12 в течение четырёх подряд окон мониторинга Google News по多个 запросам на китайском и английском — ноль новых записей, на Hacker News нет релевантных материалов, на arXiv нет新ых препринтов (последняя статья — всё ещё работа о модели производительности TileSight от 07-24). Медийная сторона после волны публикаций с 09-29 по 10-11 вошла в спокойную фазу; всё основное содержание на этой неделе исходит из динамики организации на GitHub.

6. Наблюдения за тенденциями

  • «Статическая подготовка» в период выпускного молчания одновременно завершилась по четырём направлениям: рефакторинг базового класса Op в TileOPs, по собственным заявлениям, завершён перед релизом; шесть снимков ночной базовой ветки — ноль рост числа неудач; примеры TileFoundry пересекли рубеж от декодирования к полному превосходству по длине предзаполнения; выравнивание мультибэкенда v0.1.15 — основной репозиторий с 09-30 уже 16 дней без тегов, но статическая подготовка следующей версии на этой неделе в основном завершена. Состоится ли релиз, зависит от прохождения ворот ревью, а не от содержания.
  • Мультибэкенд переходит от «выравнивания версий» к «сведению к одной семантике»: Hygon завершил полное обновление до v0.1.15 и отдельно открыл линию поддержки v0.1.12; зеркало MetaX, догнав, перешло к слиянию в dev; Ascend сосредоточился на проверке достоверности документации, семантике кэша и проверке на реальном устройстве (#1900); Moore Threads — единственная оставшаяся брешь. Разрыв между четырьмя компаниями сместился с «есть ли бэкенд» на «одинакова ли семантика».
  • ROCm становится второй линией, синхронной с выпуском новых моделей: четыре дня подряд — высадка ядер, связанных с DeepSeek NSA, mHC, KDA и GLM-5.3, технический долг погашается по одному пункту в соответствии с бюджетом устройства (wavefront 64 lane, типы входов MFMA, лимиты LDS/VGPR); после слияния с многопоколенным параллельным исправлением SM121 / SM89 топология бэкенда сместилась от «приоритет NVIDIA» к «одновременное сопровождение нескольких устройств».
  • Инженерия производительности TileOPs перешла от «штурма ключевых операторов» к «ежедневной зачистке всех операторов»: от 8 до 11 коммитов в день, каждый с внешним сравнением (torch-compile / cuBLASLt / quack / FlashInfer / FLA), остаточное отставание публично фиксируется в PR (lm-head две строки 0.909x, у GLA обратного прохода явно не заявляется ускорение) — количественная оценка и архивирование «отставания» лучше, чем точечное ускорение, демонстрирует инженерную дисциплину.
  • Управленческий подход Ascend смещается от «всё проходит» к «утверждения точны»: три проверки документации из-за несовпадения регулярного выражения исключения в низкоприоритетных тестовых случаях были целым пакетом откачены и затем сокращены и переделаны, что выявило двухуровневую структуру CI: на этапе PR не запускается low_priority, ежедневно — полный прогон как подстраховка; такие откаты — не шаг назад, а сигнал о том, что «ожидаемые сбои» рассматриваются как расчёт по техническому долгу.
  • TileFoundry превращается из компиляторного инструмента в поставляемую продуктовую форму: независимый проект scaffold, контракты слота экземпляров и lowering, аргументация примеров предзаполнения через спинной хребет — в том же окне, когда произошёл рефакторинг, сторонний vendor параллельно вёл реестр дефектов; типичная траектория продуктоориентации — «после рефакторинга базовой ветки — сведение интерфейсных контрактов и публичное раскрытие дефектов». В следующем выпуске нужно отследить, будут ли поглощены эти дефекты emitter / runtime.
  • Точки внимания следующего выпуска: состоится ли релиз основного репозитория v0.1.16 (молчание уже 16 дней); смогут ли быть влиты две линии блочного масштабирования MMA для SM120 (#3495 / #3099); продвижение специализированного исправления cumsum warp (#3536) и семи коммитов семейства PTO; два коммита Ascend #1900 и график проверки на реальном устройстве A5; появятся ли у Hygon первые влитые мультикарточные PR в распределённом IPC; в TileOPs уже появились коммиты по организации релизного пайплайна (выходные), приведут ли они к первому официальному релизу; будут ли поглощены внешние списки дефектов TileFoundry.

Приложение: материалы и пояснения по проверке

  • Материалы: 5 ежедневных отчётов о динамике TileLang (10-12 – 10-16), соответствующих окну сбора с 10-10 07:00 по 10-16 07:00 (пекинское время); динамика за день 10-16 и за ночь 10-16 (раннее утро 10-17 по пекинскому времени) после дополнительной проверки в 168-часовом окне включена в настоящий отчёт; организационная динамика за 10-17 (суббота) войдёт в ежедневный отчёт следующего понедельника.
  • Дополнительная проверка (168-часовое окно, по состоянию на момент подготовки отчёта): из 29 репозиториев организации tile-ai в окне было 12 с пушами (tilelang, TileOPs, TileFoundry, tilelang-ascend, tilelang-hygon, tilelang-metax, tilelang-mlir-ascend, TileSight, TileOPs-nightly, tilelang.github.io, TileOPs.github.io, tilelang-sunrise); количество смёрженных и созданных PR определялось по фактическому поиску в окне 10-12 – 10-16 по пекинскому времени; шесть ночных снимков конвейера (test_results.xml и bench_results.xml) пересчитаны по каждому файлу (тест-кейсы, сбои, ошибки, пропуски, количество наборов).
  • Методика и границы: все данные о производительности — это заявления из описаний PR или примечаний к релизам (H100, H200, B300, RTX 5090, RTX 6000 Ada и др.), у настоящего издания нет соответствующего оборудования, независимое воспроизведение не проводилось; ночные снимки — это записи однократного прогона конвейера, а не сравнительный бенчмарк; время публикации проверено по тегам и страницам релизов репозиториев, у репозиториев адаптации возможны задержки между страницей релиза и продвижением ветки; производительность TileKernels на Ascend заявлена в его собственном README, это не сторонняя оценка.
  • Рекомендуемый период следующего выпуска: 2026-10-19 ~ 2026-10-23.

Таблица проверки источников

Источник Результат проверки
Организация tile-ai (29 репозиториев) В 168-часовом окне пуши были в 12 репозиториях; за неделю смёржено 109 PR, открыто 158 новых; в настоящее время открыто 532 PR
Основной репозиторий tilelang За неделю смёржено 30 PR; открытые PR 170→168→161→160→165; на странице релизов и в тегах за всю неделю без пополнений (последний v0.1.15, 09-30)
TileOPs За неделю смёржено 52 PR; открытые PR 9→19→26→17→16; рефакторинг базового класса Op, два оператора MoE, тройка по вниманию и партия производительности foundry вышли на одной неделе
TileOPs-nightly Шесть снимков, корректность 1032→1134, бенчмарки 1947→1989 (52→55 наборов), всё без сбоев и ошибок
TileFoundry За неделю смёржено 10 PR (#223, #221, #227, #229, #231, #232, #233, #236, #238, #241); открытые PR 1→2→1→3→2; релиз по-прежнему v0.0.2 (09-10)
Ascend (ascend / mlir-ascend) ascend: смёржено 8 PR (#1701, #1730, #1612, #1676, #1681, #1888–#1890); открытые PR 230→237. mlir-ascend: смёржено 2 PR (#190, #202); открыто 32 PR
Hygon / MetaX / Moore Threads Hygon: смёржено 3 PR (#20, #21, #22), #19 и ветка distributed на рассмотрении/в работе; MetaX: смёржено 2 PR (слияние зеркала main и dev); Moore Threads: после 09-30 активности нет, открыто 6 PR
Sunrise На рассмотрении только два обновления CI-зависимостей от Dependabot (#7, #8); открыто 3 PR
Потребители (TileKernels / FlashQLA) TileKernels v2.1.0 (#38) и исправление FlashQLA sm120 (#48) смёржены 10-14; после 10-14 новых пушей нет
TileSight / TileRT TileSight 10-13 создал ветку dev и запушил, без релиза; TileRT за всю неделю без пушей (последний 09-24)
PTO-ISA и сторонние проекты сообщества Новый репозиторий tilelangGym (10-14) и семь наборов SimtVF; SuperNPUBench два релиза и несколько архиваций; BM1690 24 журнала уровня платы; tilelang-cuda-skills 1 внешний аудит; TileMC 1; easy-tilelang 1; tilelang-debugger и SwHwCodesign без пушей в окне
СМИ и академическая сфера Google News с 10-12 четыре окна подряд без пополнений; на Hacker News релевантных записей нет; на arXiv новых препринтов нет

Основные ссылки

https://github.com/tile-ai/TileOPs/pull/2582

Источники данных: ежедневный отчёт о динамике TileLang (пять выпусков с 2026-10-12 по 2026-10-16) и фактическая проверка в текущем периоде; отчётный период — с 12 по 16 октября 2026 года.