Ежедневный отчёт TileLang (2026-09-29)
Окно мониторинга: последние 24 часа (2026-09-28 07:00 ~ 2026-09-29 07:00, пекинское время; предыдущий отчёт вышел 09-28, окно стыкуется без разрывов и без перекрытий). Источники: GitHub (проверка коммитов в 29 репозиториях организации tile-ai; в окне коммиты были в 7 репозиториях: tilelang, TileOPs, TileOPs-nightly, tvm, tilelang-hygon, TileOPs.github.io, tilelang-ascend; в TileOPs 14 слияний, в основном репозитории 2 слияния и обновление субмодуля TVM, ночной снимок 1 с нулевыми сбоями; у adopt-проекта FlashQLA и в репозиториях сообщества есть обновления), Google News RSS с несколькими группами запросов на китайском и английском (через прокси, ноль попаданий), Hacker News, arXiv, проверка репозиториев сообщества
Индекс выпуска
- Главное за сегодня: семейство квантизации TileOPs первым дошло до уровня реализации — девять операторов уровня операторов слиты за одну ночь, шесть операторов семейства сэмплирования стоят в очереди в тот же день (09-28/09-29)
-
- Основные результаты проекта
- 1.1 Основной репозиторий: исправление хвостового защитного барьера TVM — инверсия границы остатка по модулю может привести к чтению за границей, воспроизведено на реальной цели и слито (09-28)
- 1.2 Основной репозиторий: сборка с одной конфигурацией по умолчанию получает -O2 — ускорение lowering в 1.19 раза по среднему геометрическому, объём библиотеки вдвое меньше (09-28)
- 1.3 Очередь основного репозитория: пять новых и три обновлённых заявки, всего 112 открытых PR (09-28)
- 1.4 TileOPs: централизованное исправление ядер с тихими ошибками, более десяти случаев «возвращает результат, но не сообщает об ошибке» устранены разом (09-29 ночью)
- 1.5 TileOPs: продолжение перекомпоновки внимания — MHA и GQA с постраничным декодированием объединены, обратное WS-ядро слито (09-28)
- 1.6 TileOPs: шесть коммитов по пакетному ускорению reduction и norm (09-28)
- 1.7 TileOPs: два коммита по инженерии — перенос исходников в csrc, очистка исключений guard (09-28)
- 1.8 Ночной снимок: 1027 проверок корректности, 1335 бенчмарков, ноль сбоев и ноль ошибок (09-29 ночью)
- Основные результаты проекта
-
- Мультибэкендная адаптация (Ascend / MLIR Ascend / MetaX / Hygon / Moore Threads)
- 2.1 Hygon: улучшения асинхронного копирования и lowering swizzle кэша выходят на ревью (09-28)
- 2.2 Ascend: слитая на прошлой неделе функциональность откачена целиком, в основном репозитории создана ветка ascend-0930 (09-28/09-29)
- 2.3 MetaX / Moore Threads: официальные репозитории молчат, на стороне сообщества обновлён инструмент производительности S5000 (09-28)
- 2.4 Сторона сообщества: под адаптацию конвейера TPU Sophon BM1690 создан новый репозиторий (09-28)
- Мультибэкендная адаптация (Ascend / MLIR Ascend / MetaX / Hygon / Moore Threads)
-
- Экосистема и adopt-проекты
- 3.1 Adopt-проект: FlashQLA мигрирует на SM100 tcgen05, prepare_h показывает 1.43 раза на практике (09-28)
- 3.2 Проверка adopt-проектов: в TileKernels нет коммитов, в TileFoundry нет коммитов в окне (проверка 09-29)
- 3.3 Ритм версий: v0.1.14 держится 27 дней, страница релизов TileRT отстаёт на 5 дней (09-29)
- Экосистема и adopt-проекты
-
- Сообщество, руководства и мероприятия
- 4.1 Руководство сообщества: tilelang-tutorials обновляет пример CPU (09-29)
- 4.2 Сайт документации: два коммита сайта документации TileOPs и синхронизация удалений и слияний (09-28)
- 4.3 Медиа и академическая сторона: Google News даёт ноль попаданий, в arXiv нет новых препринтов (проверка 09-29)
- Сообщество, руководства и мероприятия
-
- Наблюдения за трендами
- 5.1 Период исполнения контракта-первым: от spec-only до уровня операторов за 24 часа
- 5.2 Тихие ошибки и «зона ядра»: разовый централизованный разбор накопленного долга
- 5.3 Надёжность компилятора начинает взаимодействовать с upstream
- 5.4 Пробелы и точки риска
- Наблюдения за трендами
- Приложение: материалы и пояснения к проверке
Главное за сегодня: семейство квантизации TileOPs первым дошло до уровня реализации — девять операторов уровня операторов слиты за одну ночь, шесть операторов семейства сэмплирования стоят в очереди в тот же день (09-28/09-29)
Дата: 2026-09-28, 2026-09-29 Источник: шесть операторов слоя квантизации (#2298)/ оператор слоя деквантизации INT8 (#2297)/ оператор слоя сэмплирования (#2299)/ трекер 200 операторов (#2271)
Менее чем через 24 часа после того, как поздно вечером 09-27 были открыты 24 записи spec-only и план на 200 операторов, TileOPs начал одну за другой превращать «контракты» в «уровень операторов»; ритм таков:
- Сначала слиты шесть представителей квантования (#2298, слито 09-29 06:54, +798/-78, 16 файлов): INT8 поэлементное, покональное, поблочное квантование, FP8 поблочное квантование, INT4 погрупповое квантование и SmoothQuant — всего шесть операторов уровня (имена от
INT8QuantPerTensorFwdOpдоSmoothQuantFwdOp) размещены вtileops.quantization; у каждогоkernel_types = {}— при вызове сначала выполняется генеративная проверка, затем выбрасываетсяOpNotAvailableError(объявлено, ожидает реализации). ДобавленQuantizeCall(rows, cols, dtype, group_size); эталонная реализация перенесена из тестового файла вworkloads/quantization.py, тесты переписаны на вызов той же математики. В спецификации также зафиксированы инженерные ограничения: группировка INT4 и GEMM W4A16 требуютK % 128 == 0(порядок упаковки определён шагом в 128 элементов), семантика групп INT4 приведена по пунктам (интервал нулевой точки [0, 15], нижняя граница масштаба — минимальное нормальное число, квантование в стиле torch.ao и AWQ); каждое расхождение с vLLMscaled_int8_quant,per_token_group_quant_int8, DeepGEMMper_block_cast_to_fp8явно задокументировано. - Следом добавлены три оператора деквантования INT8 (#2297, слито 09-29 06:20, +431/-29, 11 файлов): три оператора уровня деквантования INT8 — поэлементного, поконального, поблочного (
INT8DequantPerTensorFwdOpи ещё дваFwdOp) — появились в тот же день, записи помечены как spec-only; эталонная реализация(q.float() * scale).to(out_dtype)побитово совпадает с тремя вариантами dequantize из torch; для per-block последний блок обрабатывается с формой масштаба поceil_div(K, 128), зафиксированы различия с реализацией SGLang. - Семейство сэмплирования — шесть операторов в очереди в тот же день (#2299, открыто, +1065/-151, 28 файлов): для
TopKMask,MinPMask,TopPMask,TopKTopPMask,SamplingFromProbs,ChainSpeculativeSamplingодновременно подготовлены операторы уровня, рабочие нагрузки и тесты; эталонная реализация выровнена по FlashInfer 0.6.16 (три разрядности bf16/fp16/fp32), генератор случайных чисел Philox4x32-10 обеспечивает детерминированную целочисленную реализацию тензоров (выровнено по известным векторам ответов Random123); также исправлена обработка граничных совпадений в старом эталоне top-p (в пределах 8 строк результаты для 76 токенов bf16 различаются). - Контекст: из 24 записей spec-only, открытых в #2279 (9 квантование, 6 сэмплирование, 7 MLA/KV, по 1 norm и linear attention), все 9 по квантованию уже перешли на уровень операторов, 6 по сэмплированию вошли в PR и ожидают проверки — «сначала контракт, затем реализация» вошло в стабильный ритм исполнения.
Оценка: преимущество опережающего уровня операторов в том, что «интерфейс, рабочая нагрузка, эталонные значения, поведение при отказе» замораживаются заранее, а реализация ядер может подтягиваться по одному без изменения внешнего контракта; для пользователей OpNotAvailableError даёт чёткую границу возможностей. Отметим, что в этом наборе уровень операторов не содержит реализации ядер — до слияния первого ядра никакой применимой производительности не возникает; дальнейшее внимание — к ритму выхода ядер и влиянию ограничений формы, таких как K % 128, на интеграцию моделей.
1. Основные достижения проекта
1.1 Основной репозиторий: исправление хвостового ограждения TVM — инверсия границ остатка по модулю может привести к чтению за границей, слито после воспроизведения на реальной цели (09-28)
Дата: 2026-09-28 Источники: #3294 / исправление на стороне TVM (#77)
- Проблема: при динамическом сокращении
B * 192элементов и 128 потоках анализ границ давал для(192 * B + 127) % 128инвертированный интервал[127, 63](правильно должно быть[63, 127]), иtl.Simplifyна этом основании мог ошибочно доказать, чтоi * 128 + threadIdx.x < B * 192всегда истинно, и удалить хвостовое ограждение; при B = 1 последние 64 потока должны были пропустить второй раунд, а при удалённом ограждении читали бы за пределами следующего и даже последнего уровня — фактически это наблюдалось на ядре отображения aux-loss. - Исправление: #3294 продвигает подмодуль
3rdparty/tvmс907a88c879до4211874e9e(содержит только это исправление границ и его регрессию в TVM) и добавляет переносимый регрессионный тест (напрямую конструирует TIR, не предполагая B > 0). Проверка: 48 тестов, связанных с transform, пройдены; 76 тестов reducer v2 пройдены; 110 тестов на стороне TVM пройдены (8 xfail); на B300 все 48 комбинаций параметров, воспроизводящих aux-loss, пройдены. - Значение: полный замкнутый цикл «дефект корректности компилятора → воспроизведение на реальной цели → исправление в upstream → продвижение подмодуля + регрессионная страховка»; исправляющий коммит #77 в том же репозитории подмодуля (tile-ai/tvm) заносит «упорядоченность и надёжность границ остатка по модулю» в ядро TVM.
1.2 Основной репозиторий: сборка с одной конфигурацией по умолчанию с -O2 — геометрическое среднее ускорения lowering в 1,19 раза, размер библиотеки вдвое меньше (09-28)
Дата: 2026-09-28 Источник: #3191
- Изменение: при отсутствии явного типа сборки CMake собирает одну конфигурацию с добавлением
-O2для компиляции объектов TileLang; явные Debug/Release и многоконфигурационные генераторы остаются без изменений (1 файл, +10/-0). - Измерения (178 примеров): общее время lowering 1548,8 → 1376,0 секунды, геометрическое среднее 1,186 раза, медиана 1,161 раза; у 168/178 примеров ускорение lowering превысило 5%, ни один пример не замедлился более чем на 5%; геометрическое среднее полной компиляции ядра 1,053 раза. Побочный эффект:
libtilelang.soуменьшился с 43,5 МБ до 18,9 МБ. - Предыстория: этот коммит также ускорил примерно в 5 раз (геометрическое среднее) тестовый набор регрессии производительности компилятора из #3180; проблема «параметры по умолчанию хуже ручных» в цепочке компиляции устранена.
1.3 Очередь основного репозитория: пять новых и три обновления, открытых PR — 112 (09-28)
Дата: 2026-09-28 Источник: список PR основного репозитория/ #3296/ #3297/ #3299/ #3300/ #3293
- В окне открыто 5 новых PR (все — небольшие исправления): #3293 добавляет в
tl.Simplifyэлиминатор неиспользуемых привязок (с регрессиями по чтению-после-записи, побочным эффектам, volatile, ссылкам на метаданные); #3296 исправляет выравнивание и подсказки кэша для bulk TMA копирования (соответствует багу #3295); #3297 поддерживает операнды разреженного GEMM uint8; #3299 исправляет округление ties-to-even дляT.roundна ROCm; #3300 добавляет поддержку CUDA int32 popcount. - Сторона дефектов и запросов: в окне обновлено 3 заявки — #3295 (ошибка компиляции подсказок кэша bulk TMA, чрезмерное выравнивание разделяемой памяти снижает занятость), #3292 (проблема шага по умолчанию coalesced_width в
T.copyна METAL), #3298 (запрос поддержки apache-tvm-ffi 0.1.13). - Температура очереди: открытых PR — 112; продолжительная очередь прошлого периода (четыре PR по RNG #3241~#3244, асинхронный staging #3279, бэкенд TileIR #3247, магическое деление #3267, SIMT im2col #3275) в окне не обновлялась; ещё один старый PR (#3187, исправление падения vec целочисленного bitwise_not) в окне закрыт без слияния.
1.4 TileOPs: массовое исправление ядер с тихими ошибками, более десяти случаев «возвращает результат, но не сообщает об ошибке» устранены разом (раннее утро 09-29)
Дата: 2026-09-28, 2026-09-29 Источник: #2291
- Масштаб: один PR +2456/-1161, 116 файлов, за один раз исправлено более десяти ядер, которые вычисляли неверный результат, но не сообщали об ошибке: хвостовые головы и пустой кэш декодирования MLA, CountNonzero свыше 2^24, FloorDivide/Remainder/Div (семантика floor и trunc), MoePermuteAlign свыше 1024 экспертов, переполнение TopkSelector, шардирование SSD d_state, нечётное заполнение Conv «same», причинность плотного префилла FP8, шардирование GLA, целочисленный аккумулятор среднего; декодирование MLA при пустом кэше теперь возвращает нули в соответствии с поведением torch.
- Триада управления: ① специализированные тесты SM90 переведены на
@pytest.mark.sm90(26 функций, 5 файлов), ручные проверки возможностей уходят — SKIP больше не может скрыть сбои на SM90; ② плагины ядер, бенчмарк-тайминга и прогрева больше не берут конфигурацию из переменных окружения (добавлено правило lint, запрещающее чтение окружения в исходниках/рабочих нагрузках/бенчмарках), вместо этого используются явные входные параметры, попадающие в идентификатор сборки; ③ верхние границы ядер сведены из разрозненных мест в единое объявление «области ядер», вызовы за пределами границ отклоняются с сообщением «нет реализации, обслуживающей этот вызов» — конфигурация, отказ и поведение кэша теперь согласованы и воспроизводимы. - Сопутствующее: в
bench_kernelдобавлен переключатель отката на события; вызовы с пустым выводом возвращают пустой результат; тесты, требующие CUDA, дополнены маркерами.
1.5 TileOPs: продолжение интеграции внимания — унификация MHA и страничного декодирования GQA, слияние обратного ядра WS (09-28)
Дата: 2026-09-28 Источники: #2296/ #2295/ #2281/ задача #2293
- Объединение декодирования (#2296, +588/-1156):
GQADecodePagedKernelтеперь обслуживает оба постраничных оператора декодирования — MHA и GQA, аMHADecodePagedKernelполностью удалён; интерфейс на стороне MHA, записи в манифесте и счётчик операторов не изменились; попутно исправлены две проблемы: NaN, когда GQA читает нефинитные значения за пределами кэша, и получение веса маскирующими ключами приsm_scale=0. Тестовых узлов 5047 → 5048; внешний бенчмарк (H200, device_busy): четыре строки serving в 1.34~1.76 раза быстрее flashinfer. - Исправление и расширение ядра WS (#2295, +454/-425): построчный guard, введённый в #2273, замедлял четыре строки с одним токеном вплоть до 20%, теперь восстановлено за счёт guard только на граничном блоке в гранулярности целого блока; ядро со специализацией по warp начинает обслуживать строки с несколькими запросами (ограничено объёмом работы
B*H*S_q*N_kv*D <= 2^27), сценарий спекулятивного декодирования ускорился с 25.46 микросекунд до 6.27 микросекунд (2.37 раза по сравнению с 14.88 микросекундами у FA3), четыре строки serving в 1.40~1.90 раза быстрее контроля. - Обратное ядро (#2281, +806/-486): обратный проход MHA на SM90 переведён на новое персистентное ядро со специализацией по warp, для вызовов с размерностью головы 128 и разбиением на ключевые блоки по 128 строк ускорение 2.08~4.21 раза; число запусков на вызов 8 → 3; исправлены две проблемы: сериализация WGMMA в конвейере и слишком раннее освобождение временного хранилища Q/dO;
MultiHeadAttentionBwdOpудалён (слит в обратный проход GQA, напрямую обслуживающий MHA); бенчмарк-скрипт теперь учитывает только обратный проход (ранее смешивал прямой и обратный).
1.6 TileOPs: шесть коммитов для массового ускорения reduction и norm (09-28)
Дата: 2026-09-28 Источники: #2290/ #2292/ #2289/ #2287/ #2284/ #2286
- Перестройка движка редукции (#2290, +1436/-1294): prod по ведущей оси переведён на редукцию на месте, вход больше не транспонируется —
[4, 128, 4096](dim=0) ускорился с 469 микросекунд до 3.3 микросекунд (для сравнения с torch-compile — 3.2 микросекунды); добавлен заголовок потоковой загрузки 16 байт (стратегия кэширования L1/L2 evict-first); ядро свёртки строки в одном регистре обслуживает sum/mean/amax/amin/prod и нормы L1/L2/Inf, строки mlp-intermediate ускорились с 28.6~30.1 микросекунд до 24.8~25.1 микросекунд (для сравнения с torch-compile — 24.4~25.4). - Остальные пять коммитов: #2292 — logsumexp сворачивает раздельную статистику между lane и сохраняет семантику inf как в torch; #2289 — логические редукции сворачиваются в регистре за один проход по собственной разрядности входных данных; #2287 — InstanceNorm в режиме обучения сведён с 20 запусков к 1 (image-track-stats 27.28 → 2.62 микросекунды), округление выровнено с torch (ранее расхождение в 1 ulp); #2284 — обратный проход BatchNorm напрямую индексирует layout вызывающей стороны (resnet-stage3 15.5 → 4.9 микросекунды, 1.86 раза) и исправлен NaN, вызванный накоплением статистики split за пределами блока (формы вида (3, 5, 300, 301)); #2286 — RMSNorm для коротких строк использует общий блок и дополняет нулями только в регистрах.
1.7 TileOPs: два коммита по инженерии — перенос исходников в csrc, очистка исключений guard (09-28)
Дата: 2026-09-28 Источники: #2285/ #2288
- #2285 полная миграция исходников C++/CUDA в
src/tileops/csrc(нормализация структуры сборки); #2288 удаление списка исключений для guard-ов и попутное исправление проблем, которые он маскировал — поверхность сбоев больше не размывается белым списком.
1.8 Ночной снимок: корректность 1027 пунктов, бенчмарки 1335 пунктов, ноль сбоев и ноль ошибок (раннее утро 09-29)
Дата: 2026-09-29 Источник: коммит снимка b7f5a1b4bd47/ метаданные окружения снимка
- В окне 1 снимок (09-29 04:11, run 36462093045; соответствует TileOPs
fa8acf71b9, то есть точке слияния #2291): корректность 1027 пунктов (пропущено 2) ноль сбоев и ноль ошибок; бенчмарки 1335 пунктов (38 наборов) ноль сбоев и ноль ошибок. Окружение: H200, CUDA 13.2, torch 2.13, tilelang 0.1.11+cu132. - По сравнению с предыдущим (раннее утро 09-28, 1093/1318): количество проверок корректности -66, бенчмарков +17 — изменение счётчиков сопровождается несколькими рефакторингами тестов и очисткой исключений на этой неделе, в обоих случаях ноль сбоев; критерием отслеживания служит «ноль сбоев», счётчики не отражают напрямую рост или сокращение покрытия.
2. Мультибэкендная адаптация (Ascend / MLIR Ascend / MetaX / Hygon / Moore Threads)
2.1 Hygon: улучшения асинхронного копирования и lowering кэш-swizzle выходят на ревью (09-28)
Дата: 2026-09-28 Источник: hygon PR #13/ коммит ветки 4bf3ac58c4
- Линия Hygon после слияния #12 09-24 перешла к разработке в ветке: в ветке
feat/hcu-async-copy-cache-swizzleдобавлен новый коммит (автор Teng Huang, 16:29), улучшающий lowering асинхронного копирования и кэш-swizzle; соответствующий PR #13 обновлён в тот же день и остаётся открытым. Hygon — единственный из отечественных бэкендов в этом выпуске, где есть продвижение по коду.
2.2 Ascend: слитая на прошлой неделе функциональность откачена целиком, в основном репозитории создана ветка ascend-0930 (09-28/09-29)
Дата: 2026-09-28, 2026-09-29 Источник: откатывающий PR #1841/ откатываемая функциональность #1829/ основной репозиторий tilelang
- В 09:44 слит полный откат (+3621/-10333, 84 файла), отзывающий #1829 (слитую 09-24 «компиляторно управляемую оптимизацию AscendC Vector mask и строчной редукции FP32», изначально +10333/-3621) — эта функциональность отозвана целиком через 4 дня после слияния, публичная запись не содержит пояснения к откату.
- Кроме того: в основном репозитории в раннее утро 09-29 создана ветка
ascend-0930(автор LeiWang1999) — направление разработки, связанное с Ascend, зарегистрировано как объект наблюдения.
2.3 MetaX / Moore Threads: официальные репозитории молчат, на стороне сообщества обновлён инструмент производительности S5000 (09-28)
Дата: 2026-09-28 Источник: tilelang-metax/ tilelang-musa/ репозиторий сообщества Tilelang_musa
- Официальные репозитории MetaX (последний push 09-24) и Moore Threads (09-17) в окне не имели пушей. На стороне сообщества по направлению Moore Threads есть активность:
Rankf/Tilelang_musaупорядочил исходники TileSight и TileLang-MUSA и удалил сгенерированные артефакты (09-28 15:33); его описание — «фреймворк операторного анализа производительности для MTT S5000 на базе движка DeepStack», обслуживающий два сценария: ручную оптимизацию операторов и оценку операторов Agent, включает 30 документов калибровки P0~P7, 64 скрипта, 24 бенчмарка.
2.4 На стороне сообщества: для адаптации конвейера TPU Sophon BM1690 создан новый репозиторий (09-28)
Дата: 2026-09-28 Источник: tilelang-tpu-bm1690-pipelines / описание миграции и верификации
- Новый репозиторий (создан 09-28, 8 коммитов в окне): на основе существующей разработки tilelang-tpu созданы конвейерные версии шести классов операторов (Elementwise, RMSNorm, RoPE, SwiGLU, Matmul, FlashAttention) для SOPHGO BM1690 / SG2260E; поддерживаются две модели программирования — восьмиядерный TPU-Kernel для BM1690 и RV Tensor для SG2260E; компиляция, CModel и исполнение через PCIe идут по единому инструментальному стеку PPL 1.7.
- Методология заслуживает внимания: CModel проверяет только числовое поведение, и явно указано, что «время настенных часов CModel не является производительностью BM1690»; на каждом шаге доказательства собираются контролируемым раннером (число процессов, тайм-аут 120 секунд, ограничение памяти 4096 MiB); коммиты в окне покрывают FP16 matmul 1024³ с верификацией в CModel и конвейеризацию различных операторов (SSA-безопасные вложенные циклы, дескрипторы с двойной буферизацией) и т. д.; измерение на реальной плате будет выполнено после готовности удалённой аппаратной среды.
3. Экосистема и стороны внедрения
3.1 Сторона внедрения: FlashQLA мигрирует на SM100 tcgen05, prepare_h показывает 1,43 раза (09-28)
Дата: 2026-09-28 Источник: PR #42 / репозиторий FlashQLA
- FlashQLA от Qwen (библиотека ядер линейного внимания GDN на основе TileLang) приняла оптимизацию для класса дата-центровых Blackwell: рекурсия перехода состояния CP (M, Z) в
prepare_hперенесена из потребительской группыT.gemmв конвейер tcgen05 warp-а MMA, M постоянно размещён в TMEM; лимиты регистров переконфигурированы с 168/160/160/24 на 152/104/104/152; приstore_h=Falseсинхронизация и левая половина состояния публикуются на такт раньше. - Измерения (B200, 24 активные строки CP): задержка
prepare_h153,8 → 107,5 микросекунд (в 1,43 раза, -30,1%); порог корректности 48/48 специализаций побитово совпал, интеграция прямого прохода 15/15 и 42/42 строк побитово совпала. Сторона внедрения перешла от адаптации SM90/103/120 к глубокому использованию SM100 tcgen05.
3.2 Проверка сторон внедрения: в TileKernels нет пушей, в TileFoundry нет коммитов в окне (проверка 09-29)
Дата: 2026-09-29 Источник: TileKernels / TileFoundry
- DeepSeek TileKernels по-прежнему остаётся на 2026-04; последний пуш TileFoundry был ранним утром 09-28 (предыдущее окно, уже освещалась серия AtomSched), в этом окне новых коммитов нет.
3.3 Ритм релизов: v0.1.14 держится 27 дней, страница релизов TileRT отстаёт на 5 дней (09-29)
Дата: 2026-09-29 Источник: страница релизов tilelang / страница релизов TileRT / страница релизов TileFoundry
- Главный репозиторий v0.1.14 (09-02) держится 27 дней без новой версии; у TileOPs нет отдельного релиза; PR релиза v0.1.6 для TileRT был влит 09-24, но страница релизов и тег по-прежнему остаются на v0.1.5.post2 (отставание 5 дней); последний релиз TileFoundry по-прежнему v0.0.2 (09-10).
4. Сообщество, руководства и мероприятия
4.1 Руководство сообщества: tilelang-tutorials обновляет пример CPU (09-29)
Дата: 2026-09-29 Источник: tilelang-tutorials
- Репозиторий обучающих материалов сообщества
easy-tilelang/tilelang-tutorialsобновил примеры для CPU (09-29 00:17); этот репозиторий содержит шесть групп ноутбуков: 00_basic / 01_tvm / 02_tilelang / 03_tilelang_cpu / 04_tilelang_ascend / 05_tilelang_work, среди которых примеры CPU JIT и Ascend lowering/compile/JIT представляют справочную ценность для освоения платформы.
4.2 Сайт документации: два PR сайта документации TileOPs и синхронизация удаления и объединения (09-28)
Дата: 2026-09-28 Источники: PR сайта документации #55/ PR #56
- Два PR: генерация документации по аннотированному
__all__и удаление уже удалённого оператора GQA (#55); на странице API внимания убран удалённыйMultiHeadAttentionBwdOp(#56) — синхронизация с действиями по удалению и объединению в #2296/#2281.
4.3 Медиа и академическая сторона: нулевые совпадения в Google News, новых препринтов на arXiv нет (проверка 09-29)
Дата: 2026-09-29 Источники: Google News/ Hacker News/ arXiv
- В RSS Google News по нескольким группам запросов на китайском и английском языках (через прокси) в 24-часовом окне ценных записей ноль (9 полученных кандидатов — все либо сами репозитории GitHub, либо нерелевантный контент); записи Hacker News в окне не относятся к данной теме; поиск «tilelang» на arXiv по-прежнему показывает последним TileSight от 07-24 (модель производительности GPU с тайловой централизацией), новых препринтов нет.
5. Наблюдения за трендами
5.1 Фаза исполнения с приоритетом контрактов: за 24 часа от spec-only до уровня операторов
Вчера было открыто 24 записи spec-only и план на 200 операторов, сегодня 9 квантифицированных (влитых) и 6 выборочных (в очереди) уже прошли полную инкапсуляцию «уровень операторов + рабочая нагрузка + эталонные значения + поведение отклонения», причём граничная семантика сверена построчно с vLLM / FlashInfer / DeepGEMM. Это показывает, что система Manifest уже довела контрольные точки контрактов до инженерного уровня, позволяющего конвейерный выпуск; следующий объект наблюдения — сможет ли реализация ядра выдерживать тот же темп (в данной партии уровня операторов ядер пока нет).
5.2 Тихие ошибки и «зона ядра»: разовый централизованный долг управления
#2291 одним исправлением устранил более десяти случаев silent-wrong (от хвостовых голов MLA до целочисленного аккумулятора среднего) — такие проблемы наиболее скрытны: результат неверен, но ошибка не выбрасывается, тесты проходят, бенчмарки в норме. В сочетании с «схождением верхней границы ядра к объявлению зоны», «выходом переменных окружения из пути ядра» и «уходом исключений для guard» видно, что TileOPs превращает «при каких условиях ядро корректно» из разрозненного кода в машинно-проверяемые объявления; это и есть техническая основа, позволяющая плану на 200 операторов давать внешние гарантии покрытия.
5.3 Надёжность компилятора начинает взаимодействовать с upstream
Цепочка исправления #3294 (воспроизведение на реальной цели → исправление #77 в репозитории подмодуля → продвижение подмодуля + портативная регрессия) показывает, что путь реагирования основного репозитория на дефекты класса «компилятор тихо меняет семантику» уже сформирован; для downstream-проектов, зависящих от TileLang (включая форки от различных бэкендов), темп сопровождения исправлений на уровне подмодулей будет напрямую определять достигаемый ими уровень надёжности.
5.4 Пробелы и точки риска
Во-первых, дивергенция линий множества бэкендов: Hygon продолжает эволюцию в ветке, Ascend откатил весь коммит без пояснений, MetaX и Moore Threads на официальной стороне продолжают молчать (у Moore Threads уже 12 дней), разрыв в прогрессе отечественных бэкендов растёт; во-вторых, линия обратного распространения внимания и линия декодирования в один день завершили «удаление и объединение», но в сценариях спекулятивного декодирования и других по сравнению с FA3 всё ещё сохраняется разрыв в 0,75 раза по одной строке (таблица бенчмарков #2296); в-третьих, в основном репозитории открыто 112 PR, четыре PR по RNG, крупные задачи вроде асинхронного буферизации и TileIR не двигаются уже много дней, пропускная способность обработки и ревизионная полоса остаются узким местом; в-четвёртых, в основном репозитории в данном окне влито 2, открыто 5, паттерн «открывается много, вливается мало» не переломлен.
Приложение: материалы и пояснения по проверке
| Источники | Результаты проверки |
|---|---|
| Организация tile-ai (29 репозиториев) | В окне мониторинга были пуши в 7 репозиториях: tilelang, TileOPs, TileOPs-nightly, tvm, tilelang-hygon, TileOPs.github.io, tilelang-ascend |
| Основной репозиторий tilelang | 2 влитых коммита (#3294, #3191); 5 новых (#3293, #3296, #3297, #3299, #3300); открытых PR — 112; баги #3292, #3295 и запрос функциональности #3298 обновлены в окне мониторинга |
| TileOPs | 14 влитых коммитов (диапазон #2281–#2298); ещё #2279, #2283 были учтены в течение 7–29 минут после начала текущего окна (содержание уже в прошлом отчёте, не повторяется); открытых PR — 5 (#2172, #2294, #2299, #2300, #2301); issue #2293 закрыт вместе с #2296 |
| tvm (субмодульный репозиторий той же организации) | 1 влитый коммит (#77 исправление границ остатка по модулю, связано с основным репозиторием #3294) |
| TileOPs-nightly | 1 снимок b7f5a1b4bd47: корректность 1027 пунктов (пропущено 2), ноль сбоев и ноль ошибок; бенчмарки 1335 пунктов, ноль сбоев и ноль ошибок |
| TileOPs.github.io | 2 коммита (#55, #56 документация и синхронизация удаления и слияния) |
| Пять репозиториев отечественных бэкендов | Ascend: откат #1841 (отзыв #1829); Hygon: коммит в ветку + обновление PR #13; MetaX (после 09-24), Moore Threads (после 09-17), MLIR Ascend (после 09-24) — без активности |
| Внедряющие стороны и сообщество | FlashQLA влит #42 (SM100 tcgen05); TileKernels без пушей; в репозиториях сообщества tilelang-tutorials, Tilelang_musa, bm1690-pipelines есть обновления |
| Google News / Hacker News / arXiv | Ноль попаданий по запросам на китайском и английском; HN не относится к теме; на arXiv нет новых препринтов (последний по-прежнему TileSight от 07-24) |
Полный список источников
- [1] Исправление хвостовой защиты в главном репозитории TVM (#3294) — https://github.com/tile-ai/tilelang/pull/3294
- [2] Исправление границ остатка по модулю в TVM (#77) — https://github.com/tile-ai/tvm/pull/77
- [3] Сборка главного репозитория с -O2 (#3191) — https://github.com/tile-ai/tilelang/pull/3191
- [4] Simplify неиспользуемых привязок в главном репозитории (#3293) — https://github.com/tile-ai/tilelang/pull/3293
- [5] Исправление выравнивания bulk TMA в главном репозитории (#3296) — https://github.com/tile-ai/tilelang/pull/3296
- [6] Дефект-репорт TMA в главном репозитории (#3295) — https://github.com/tile-ai/tilelang/issues/3295
- [7] Разрежённый uint8 GEMM в главном репозитории (#3297) — https://github.com/tile-ai/tilelang/pull/3297
- [8] Исправление округления для ROCm в главном репозитории (#3299) — https://github.com/tile-ai/tilelang/pull/3299
- [9] int32 popcount в главном репозитории (#3300) — https://github.com/tile-ai/tilelang/pull/3300
- [10] Дефект-репорт METAL в главном репозитории (#3292) — https://github.com/tile-ai/tilelang/issues/3292
- [11] Запрос на tvm-ffi в главном репозитории (#3298) — https://github.com/tile-ai/tilelang/issues/3298
- [12] Вывод потоков z3 в главном репозитории (#3291) — https://github.com/tile-ai/tilelang/pull/3291
- [13] Исправление bitwise_not в главном репозитории (#3187, закрыт без слияния) — https://github.com/tile-ai/tilelang/pull/3187
- [14] Список PR главного репозитория — https://github.com/tile-ai/tilelang/pulls
- [15] Страница релизов главного репозитория — https://github.com/tile-ai/tilelang/releases
- [16] Шесть слоёв квантованных операторов TileOPs (#2298) — https://github.com/tile-ai/TileOPs/pull/2298
- [17] Слой оператора INT8-деквиантизации TileOPs (#2297) — https://github.com/tile-ai/TileOPs/pull/2297
- [18] Слой оператора сэмплирования TileOPs (#2299) — https://github.com/tile-ai/TileOPs/pull/2299
- [19] Интерфейс слотов ядер TileOPs (#2300) — https://github.com/tile-ai/TileOPs/pull/2300
- [20] TileOPs varlen GQA hd512 (#2301) — https://github.com/tile-ai/TileOPs/pull/2301
- [21] Листовой оператор FP8 GQA в TileOPs (#2294) — https://github.com/tile-ai/TileOPs/pull/2294
- [22] TileOPs GEMM epilogue (#2172) — https://github.com/tile-ai/TileOPs/pull/2172
- [23] Пакетное исправление тихих ошибок в TileOPs (#2291) — https://github.com/tile-ai/TileOPs/pull/2291
- [24] Однōядерное страничное декодирование в TileOPs (#2296) — https://github.com/tile-ai/TileOPs/pull/2296
- [25] Исправление страничного декодирования в TileOPs (#2295) — https://github.com/tile-ai/TileOPs/pull/2295
- [26] Обратное WS-ядро MHA в TileOPs (#2281) — https://github.com/tile-ai/TileOPs/pull/2281
- [27] Вопрос по однōядерному декодированию в TileOPs (#2293) — <https://github.com/tile-ai/Tile
OPs/issues/2293>
- [28] TileOPs reduction in-place prod (#2290) — https://github.com/tile-ai/TileOPs/pull/2290
- [29] TileOPs logsumexp fold (#2292) — https://github.com/tile-ai/TileOPs/pull/2292
- [30] TileOPs logical reduction fold (#2289) — https://github.com/tile-ai/TileOPs/pull/2289
- [31] TileOPs InstanceNorm single launch (#2287) — https://github.com/tile-ai/TileOPs/pull/2287
- [32] TileOPs BatchNorm backward (#2284) — https://github.com/tile-ai/TileOPs/pull/2284
- [33] TileOPs RMSNorm short rows (#2286) — https://github.com/tile-ai/TileOPs/pull/2286
- [34] TileOPs migratsiya csrc (#2285) — https://github.com/tile-ai/TileOPs/pull/2285
- [35] TileOPs ochistka isklyucheniy proverok (#2288) — https://github.com/tile-ai/TileOPs/pull/2288
- [36] TileOPs kalibrovka sootvetstviya (#2283, material predydushchego vypuska, uchten v tekushchem) — https://github.com/tile-ai/TileOPs/pull/2283
- [37] TileOPs zapis tolko so spec (#2279, material predydushchego vypuska, uchten v tekushchem) — https://github.com/tile-ai/TileOPs/pull/2279
- [38] TileOPs trekingovaya zadacha po 200 operatoram (#2271) — https://github.com/tile-ai/TileOPs/issues/2271
- [39] Spisok PR TileOPs — https://github.com/tile-ai/TileOPs/pulls
- [40] Kommit nochnogo Snimka (b7f5a1b4bd47) — https://github.com/tile-ai/TileOPs-nightly/commit/b7f5a1b4bd47
- [41] Metadannye okruzheniya snimka — https://github.com/tile-ai/TileOPs-nightly/blob/snapshots/meta.json
- [42] PR asinkhronnogo kopirovaniya Hygon (#13) — https://github.com/tile-ai/tilelang-hygon/pull/13
- [43] Kommit vetki Hygon (4bf3ac58c4) — https://github.com/tile-ai/tilelang-hygon/commit/4bf3ac58c4
- [44] PR otkata Ascend (#1841) — https://github.com/tile-ai/tilelang-ascend/pull/1841
- [45] Otkachennaya funktsiya Ascend (#1829) — https://github.com/tile-ai/tilelang-ascend/pull/1829
- [46] Repozitoriy MetaX — https://github.com/tile-ai/tilelang-metax
- [47] Repozitoriy Moore Threads — https://github.com/tile-ai/tilelang-musa
- [48] Repozitoriy MLIR Ascend — https://github.com/tile-ai/tilelang-mlir-ascend
- [49] Instrument profilrovaniya S5000 ot soobshchestva — https://github.com/Rankf/Tilelang_musa
- [50] Repozitoriy konveyerov Sophon BM1690 — https://github.com/arcflute/tilelang-tpu-bm1690-pipelines
- [51] Instruktsiya po migratsii i validatsii BM1690 — https://github.com/arcflute/tilelang-tpu-bm1690-pipelines/blob/main/docs/bm1690-pipelines.md
- [52] Verkhnerepozitoriy tilelang-tpu — https://github.com/xwhzz/tilelang-tpu
-
[53] Repozitoriy obuchayushchikh materialov soobshchestva — <https://github.com/easy-tilelang/tilelang
- [54] Оптимизация FlashQLA SM100 (#42) — https://github.com/QwenLM/FlashQLA/pull/42
- [55] Репозиторий FlashQLA — https://github.com/QwenLM/FlashQLA
- [56] Репозиторий TileKernels — https://github.com/deepseek-ai/TileKernels
- [57] Страница релизов TileRT — https://github.com/tile-ai/TileRT/releases
- [58] Страница релизов TileFoundry — https://github.com/tile-ai/TileFoundry/releases
- [59] Правка сайта документации TileOPs, первая (#55) — https://github.com/tile-ai/TileOPs.github.io/pull/55
- [60] Правка сайта документации TileOPs, вторая (#56) — https://github.com/tile-ai/TileOPs.github.io/pull/56
- [61] Сайт документации TileOPs — https://github.com/tile-ai/TileOPs.github.io
- [62] Google News RSS (запросы на китайском и английском, через прокси) — https://news.google.com/
- [63] Поиск по Hacker News — https://hn.algolia.com/
- [64] Поиск по arXiv — https://arxiv.org/