RuyiAI 위클리 리포트 (2026-11-02 ~ 2026-11-06)
보고 기간: 2026년 11월 2일(월)부터 11월 6일(금)까지, 총 5영업일.
자료 출처: 본 간행물의 RuyiAI 동향 데일리 리포트 5회(2026-11-02~2026-11-06, 각 회차 모니터링 기간은 전일 04:30부터 당일 04:30까지이며, 월요일은 지난 3일간·주말 포함); 또한 RuyiAI-Stack, ruyisdk, buddy-compiler 세 조직의 168시간 저장소 점검, openRuyi-Project 메인 저장소의 커밋별 전수 페이지 분할 재검토, RuyiSDK 개발자 커뮤니티와 openRuyi 배포판 뉴스 페이지의 이중 출처 재검토, 그리고 RuyiAI 공식 홈페이지 3페이지 스냅숏(점검 범위는 11-07 오후까지)을 포함한다.
편집 설명: 이번 주는 이번 분기에서 구조 변화가 가장 집중된 한 주로, 세 가지 주된 흐름이 동시에 마무리되었다. 첫째, 배포 경로의 마지막 구간이 열렸다. 43일간 지연되었던 openRuyi #1350이 11-03에 병합되어, buddy-mlir, triton, tilelang 세 가지가 처음으로 RPM spec 형태로 배포판에 진입했다. 둘째, triton-riscv는 하루 만에 스스로를 「패치가 적용된 Triton 브랜치를 유지하는 것」에서 「업스트림 Triton의 플러그인」으로 전환하여, 순수 삭제 2천여 행, 패치 디렉터리가 완전히 사라졌다. 셋째, AME/BOSCAME 매트릭스 백엔드는 일주일 안에 두 건을 완료했다. LLVM 측에서는 레지스터 분류와 tile 스케줄링을 보완했고, buddy-mlir 측에서는 한 번의 커밋으로 209개 파일, 4만여 행을 투입하여 Kernel Contract, SPM/DMA 플래너, 런타임과 FPGA 도구를 함께 펼쳤다. 릴리스 측면은 또 다른 사실이다. ruyi는 39일 공백 후 beta를 출시했으나, 정식 버전과 openRuyi 2026.10 월간 버전은 이번 주말까지도 아직 나오지 않았다. 위클리 리포트는 데일리 리포트 자료 외에 다섯 가지 점검 신규 발견(대부분 데일리 리포트 모니터링 기간 이후 또는 주기 경계)을 보충하여 부록에 수록한다.
1. 이번 주 주요 뉴스
-
openRuyi #1350 병합, RuyiAI 세 가지가 7주 만에 배포판 패키징 진입: 11-03 15:59, 09-21 17:55에 열린 이 PR이 병합되었으며, 재검토에 43일이 걸렸고 최종적으로 세 건의 커밋, 열 개 파일, 838행 추가로 buddy-mlir(0.1.2, 소스 앵커
60f354a7, 자체 pin된 LLVM 스냅숏3845a205포함), python-triton-ruyiai(3.8.0+git20261103.da5291b), python-tilelang-ruyiai(0+git20261028.0b7d66e) 세 가지 spec을 SPECS 디렉터리에 포함시켰다. 세 가지는 하나의 LLVM/MLIR 체인을 공유한다. buddy-mlir는 자체 LLVM 빌드를 포함하여/usr/lib64/buddy-mlir/llvm에 설치되고, triton과 tilelang은buddy-mlir-llvm패키지에 의존한다. 같은 날 20:16의 #1575는Source0/Source1의 소스 주소 표기법을 수정하여, 이 체인이 여전히 취약하지만 이미 병합 프로세스를 통과할 수 있음을 보여주었다. 출처: PR #1350, PR #1575, buddy-mlir.spec -
triton-riscv, Triton 3.9.0 플러그인화 개편 병합: 패치 집합 제로화, 독립 배포 패키지 퇴장: 11-05 11:13, PR #98이 병합되었으며, 5건의 커밋, 66개 파일, 1806행 추가, 3868행 삭제로 삭제량이 추가량의 약 두 배였다. 백엔드는
TRITON_PLUGIN_DIRS메커니즘에 따라 triton_shared 플러그인으로 설치되도록 변경되었고, 진입점을 등록하고 C++ 플러그인을libtriton.so에 링크했다.patches/디렉터리와 패치 적용 스크립트는 전부 삭제되었으며,release.sh는 더 이상 두 번째 wheel을 조립하지 않고,Makefile이 setup/build/test/lit/clean의 통합 진입점이 되었다. 같은 날, 지난 회차에 아직 병렬로 진행 중이던 #92(공식 Triton v3.8.0으로 리베이스)는 미병합 상태로 종료되어, 두 노선 간의 논쟁이 메인라인 추종으로 수렴되었다. 출처: PR #98, PR #92 -
AME/BOSCAME 백엔드, 일주일 만에 두 건 반영: LLVM은 레지스터와 스케줄링 보강, buddy-mlir는 209개 파일 추가: 11-04 15:40, RuyiAI-Stack/llvm-project의 riscv 브랜치에
f346011추가(8개 파일, +412/−1).nxv32i32를 동시에 AccReg에 등록하여 루프 경계마다 발생하는 tile과 accumulator 두 레지스터 스택 간 복사를 제거하고, 각 tile 설정과 그 소비자를 emit 전까지 하나의 정렬된 의사 명령에 유지하다가 emit 직전에 전개하도록 했다. 11-06 15:39, buddy-mlir에 #1033 병합(209개 파일, +46131/−2305). 대상 독립적인 Kernel Contract(주석과 검증), bufferized Linalg를bosc_ameSPM/DMA/tile IR로 내리는 플래너와 emitter,runtime/boscame베어메탈 런타임과examples/BOSCAMEFPGA온보드 도구를 한 번에 추가했다. 이는 ‘RVV에서 Matrix로’라는 서사가 컴파일러 측에서 처음으로 실행 가능한 엔드투엔드 경로로 구현된 것이다. 출처: 커밋 f346011, PR #1033, PR #35 -
ruyi 0.54.0-beta.20261102 출시, 39일 공백 후 첫 도약; ABI 호환성이 ‘패키지 스캔’에서 ‘호스트 판정’으로 진화: 11-02 18:37 릴리스, 태그 커밋은 15:16에 위치, PyPI 동기화
0.54.0b20261102. 릴리스 노트에는 13건의 PR이 나열되어 있으나 비교 기준이 0.52.0-alpha.20260714로 표기되어 있어, 실제로 0.53.0 대비 순수 신규 추가는 4건(#503, #508, #507, #509)에 불과하다. 핵심은 #507:ruyi admin check-abi를 추가하여 주어진 패키지에 대해 호스트 ABI 탐지와 호환성 판정을 수행하고, 호환/비호환/미판정 3가지 상태를 제시하며, 관대한 조건과 엄격한 조건 두 가지 술어를 구분한다.ruyi list는 비고를 표시하고,ruyi install은 비호환 시 경고한다. RISC-V 측에서는 ld.so.cache 부동소수점 ABI 필터링, 버전 번호가 붙은 단일 문자 확장 파싱, 스택 정렬과 약한 심볼 경계도 추가로 처리했다. 패치 +5760/−834, 64개 파일. 출처: 0.54.0-beta.20261102, PR #507 -
tilelang-riscv 18일간의 침묵 깨짐, PR #5 TileOps streaming load와 양자화 경로 병합: 11-03 13:44 생성, 14:13 병합, 간격 29분, 21개 파일, +669/−112. 핵심 변경은
src/target/codegen_riscv.cc(+157/−1)로, 원시 TileOps 연산자에 streaming load의 저하 보조 기능과 FP32의__fdividef처리를 보강했다. 테스트 면도 동시에 확장되어 streaming load 바이트 보존, IEEE 산술 회귀, INT8 양자화 3가지 테스트를 추가했으며,operator_inventory.py도 추가/삭제가 이루어졌다. 문서는BuildOnSG2044.md작성에 중점을 두었고,tladapter/toolchain.py의 머신 관련 경로를 제거하고 배포판 레이아웃에서 찾도록 변경했다 — 같은 날 openRuyi 패키징 패치의 방향과 일치한다. 출처: PR #5, 병합 커밋 57c548c -
업스트림 컴파일러 및 런타임 네 가지 라인이 같은 날 기록을 남겼다: OpenJDK JEP 544 AOT 이식 메인라인 진입, GCC Zb* 최적화 3건 개발 메인라인 진입: 080호 기록에 따르면 JEP 544(Ahead-of-Time Code Compilation)의 RISC-V 플랫폼 이식 기능 테스트가 통과되었고 성능 이득이 예상에 부합하여 JDK 메인라인에 머지되었다(PR #32311, 8390102 Support AOT Code Cache). 같은 기간에 9건을 리뷰하여 메인라인에 머지했으며, C1의 상위 범용 레지스터 활성화, Zbc를 이용한 CRC32C intrinsic 구현, C2 포인터 상수의
movptr2전환을 포함한다. GCC 측에서는 세 가지 RISC-V 백엔드 최적화가 10-27에 개발 메인라인에 진입했다(r17-5638 ~ r17-5640): Zba는 시프트 덧셈과 정수 나눗셈의 조합 인식을 개선하고, Zbs는bclr의 시프트 인덱스 의미론을 활용하여 불필요한 마스크를 제거하며, Zbkb는packh의 비용 모델과 매칭 우선순위를 수정한다. LLVM 측에서는 6건의 P-ext 및 XTHeadBb 업스트림 PR이 머지되었고, RuyiSDK의 LLVM 브랜치는 Ztt 규격 v0.6에 따라 RV32/RV64 행렬 확장을 초기 지원한다. 출처: 080호 원고, JEP 544, JDK PR #32311 -
Buddy Compiler의 VIR 의미론 강화:
set_vl이 ‘정확한 VLEN’과 ‘임의 VLEN’ 두 경로로 분리: 11-04 23:54에 #1028이 머지되어rvv-vlen이 대상의 정확한 VLEN(vscale = rvv-vlen / 64)을 나타내게 하고 분할은 전체 벡터 단위로 수행한다. 이전에는rvv-vlen이 최소 VLEN으로 취급되어 마스크가 모두 참임에도 코드에 남아 있었으며, K3에서 1024비트 벡터 폭으로 빌드된 커널이 바로 이 경로의 전형적인 사례다. 11-05 01:32에 #1029가 머지되어rvv-vlen을 제공하지 않는 일반 빌드를 처리한다: strip-mined 영역은 N 곱하기 vscale로 런타임 스텝을 진행하고, 벡터는 최소 128비트로 크기를 정하며, 결과가 있는set_vl은 직접 거부하고 ‘정확한 VLEN 필요’를 보고한다. 의미론은 더 이상 ‘마스크가 우연히 모두 참’이라는 것에 의존하지 않는다. 출처: PR #1028, PR #1029 -
릴리스 측의 또 다른 사실: openRuyi 2026.10 한 달 전체 누락, ruyi 0.54는 11월 11일 전후로 확정: openRuyi 뉴스 페이지의 최신 릴리스 공지는 여전히 09-30의 2026.09이며, 10월과 11월의 릴리스 경로는 11-07 확인 시 모두 404를 반환했다. 이전 네 달의 릴리스 날짜는 6-30, 7-23, 8-27, 9-30으로, 한 달 전체가 누락된 선례는 없다. 080호는 패키지 관리자의 명확한 시점을 제시한다: RuyiSDK 0.54는 11월 11일 전후에 릴리스되며 패키지 관리자 버전도 0.54.0이고, 최우선 관전 포인트는 소프트웨어 패키지와 현재 시스템의 ABI 호환성 검사이며 glibc 또는 musl의 모든 Linux 배포판을 최초 지원한다. 개발 측은 정체되지 않았다—openRuyi 메인 저장소는 이번 주 156건의 커밋이 있었고, 병목은 릴리스 프로세스 자체에 있다. 출처: openRuyi 뉴스 페이지, 080호 원고, ruyi Releases
2. RuyiAI 스택 진행 상황(PyTorch / Triton / TileLang RISC-V 적응)
모니터링 기간 개요: RuyiAI-Stack 조직(18개 저장소)의 이번 주 작업은 거의 전부 triton-riscv와 llvm-project 두 저장소에 집중되었다: triton-riscv 9건 커밋, 4건 PR 머지(#98, #99, #100, #101), 4건 야간 빌드; llvm-project의 riscv 브랜치는 두 차례 전체 브랜치 재적용 후 BOSCAME 백엔드 커밋 1건을 남겼다; tilelang-riscv는 18일간의 침묵 후 PR #5를 머지했다; pytorch의 riscv 브랜치는 세 차례 재적용, 기능 증가 제로; VecIntrinBench, IntrinTrans, FBGEMM, cpuinfo, harness, torq-tile, pytorch-ci, dsh-osc는 전 주 커밋 제로.
llvm-project riscv 브랜치: 두 차례 재적용 후 BOSCAME 커밋 1건 남김(11-01 ~ 11-04)
날짜: 2026-11-01 ~ 2026-11-04 출처: riscv 브랜치 커밋 목록, 커밋 f346011, PR #35
모니터링 기간 시작 전날 밤(11-01 23:00)과 기간 첫날 밤(11-02 23:00)에 브랜치 전체 리플레이가 각각 한 번씩 수행되었다. 전자는 브랜치 자체 커밋 26개의 커밋 시간을 23:00:22부터 23:00:26까지로 일괄 변경했으며, 헤드 커밋은 afdd0982(내용은 10-29의 “사전 리허설 취소, 기여 가이드 추가”)이다. 후자는 다시 한 번 리플레이를 수행하여 헤드 커밋이 375bf3e4로 교체되었으나 내용은 동일하다. 11-03 11:57에 bef335e2 “[workflows] Use workflow-scoped token for PR rebases”가 반영되어, 리베이스 워크플로의 토큰을 저장소 수준에서 워크플로 수준으로 변경했으며 이는 자동화 유지보수에 해당한다.
11-04 15:40의 f346011은 이번 주 유일한 실제 컴파일러 변경이다(파일 8개, +412/−1, 작성자 caihanyi111). 이는 두 부분으로 나뉜다. 첫째는 레지스터 분류로, 루프 전달 누산기 PHI가 타입 테이블에서 기본 레지스터 클래스를 가져오는데 nxv32i32는 원래 TileReg로만 등록되어 있었다. 누산 명령 mlce32.m, mqma.*, msce32.m의 누산기 피연산자와 결과가 모두 AccReg로 제한되어 있어, 각 루프 엣지마다 tile과 accumulator 두 레지스터 파일 간에 복사가 한 번씩 생성되었고 copyPhysReg는 이러한 교차 파일 복사를 단일 AME 명령으로 전개할 수 없었다. 수정 방법은 nxv32i32에 AccReg도 함께 등록하고, 동일 파일 내 전체 레지스터 복사는 mmve64.t.t와 mmve64.a.a로 전개하며, 교차 파일 복사는 하드 에러로 유지하는 것이다. 둘째는 스케줄링으로, 각 tile 설정과 그 소비자가 emit 전까지 순서가 있고 부수 효과가 있는 의사 명령 안에 유지되다가 전개되며, 행렬 레지스터는 할당 가능하도록, MMA의 누산기는 tie되도록, 영 누산기 정의는 이전 값을 읽지 않도록 변경되었다. 커밋은 동시에 세 가지 테스트를 추가했으며, 설정화된 load/MMA/store 순서, 동일 파일 및 교차 파일 복사, 그리고 RVV와 비RVV 두 가지 선택을 커버한다.
아직 명확히 해소되지 않은 불일치가 하나 있다. 브랜치의 최근 [SyncBots] Integrate LLVM at b3b5e33 작성자 시간이 09-29에 멈춰 있지만, 현재 헤드 커밋과 이전 기간 헤드 커밋을 커밋 비교하면 차집합에 10-30의 업스트림 커밋이 포함된다. 즉 리플레이가 이력을 재작성할 때 업스트림 베이스라인을 앞으로 이동시켰으나 동기화 봇의 기록은 이에 따라 추가되지 않았다.
triton-riscv: 하루 만에 “패치된 브랜치”에서 “업스트림 플러그인”으로 (11-05)
날짜: 2026-11-05 출처: PR #98, 커밋 목록, PR #92
개조는 세 곳으로 나뉜다. 첫째는 백엔드 형태다. Triton의 TRITON_PLUGIN_DIRS 메커니즘이 backend/를 triton_shared 백엔드 플러그인으로 설치하고, 진입점을 등록하며, C++ 플러그인을 libtriton.so에 링크하고, triton-shared-opt를 패키지에 함께 복사한다. 독립 배포 패키지는 사라지고 코드 내 임포트는 일괄적으로 triton.backends.triton_shared를 통해 이루어진다. 백엔드 자체는 paths.py를 통해 buddy-opt, buddy-llc, mir-translate, triton-shared-opt를 찾도록 변경되었으며, CPU 드라이버는 GPU 백엔드가 전혀 없을 때만 활성 상태임을 선언한다.
둘째는 패치 세트 제로화다. patches/ 디렉터리와 패치 적용 스크립트가 모두 삭제되었다. 패치 세트가 이전에 존재했던 이유는 두 가지였다. NVIDIA/AMD 툴체인이 없는 환경에서 Triton을 빌드할 수 있게 하는 것, 그리고 LLVM API의 빈번한 변경을 흡수하는 것이다. 이제 buddy-mlir의 LLVM 배포판이 NVPTX/AMDGPU 타깃과 lld를 포함하고(#1027), Triton의 GPU 의존 경로를 stub 디렉터리로 지정하면 두 가지 이유 모두 성립하지 않는다.
세 번째는 패키징 경로 병합입니다. release.sh는 더 이상 두 번째 wheel을 조립하지 않고, 도구만 제거한 뒤 바로 bdist_wheel을 수행합니다. Makefile은 setup, build, test, lit, clean의 통합 진입점이 됩니다. 겸사겸사 Python 3.14의 함정 하나도 수정했습니다. setup.py의 shutil.which("lit")는 pip로 설치된 lit 콘솔 스크립트를 우선 가져오는데, LLVM 배포판에 내장된 것은 main() 호출 시 if __name__ == "__main__" 보호가 없어서, forkserver 멀티프로세스가 메인 모듈을 임포트할 때 이를 다시 실행하게 되어 lit 타깃이 80 동시성에서 실패했습니다.
대가는 같은 PR의 설명에 적혀 있습니다. Triton 3.9의 프런트엔드는 백엔드에서 backend_name 등의 필드를 읽는데, 이것이 없으면 모든 tl.atomic_* 호출이 AttributeError를 던지고, riscv64에서 383개의 FlagGems 케이스가 이 때문에 실패합니다. backend_name, default_dot_input_precision, deprecated_fp8_dot_operand_dtypes 세 필드를 보충한 뒤에야 실패 범위가 줄어들었습니다. 예제 쪽에도 양보가 있습니다. 업스트림이 asin/acos/atan/atan2의 프런트엔드 패치를 거부하여, 예제는 libdevice를 사용하도록 변경했고, 이를 통해 동일한 __nv_* extern_elementwise로 낮춘 다음 triton-shared가 MLIR math 연산자로 변환합니다.
triton-riscv 동반 3건: 야간 및 주말 릴리스, 16 프로세스 pytest, cp312-abi3 wheel (11-05 ~ 11-06)
날짜: 2026-11-05 ~ 2026-11-06 출처: PR #99, PR #100, PR #101, Release 목록
#99는 릴리스 리듬을 buddy-mlir에 맞춥니다. 야간 작업은 nightly/<date>-<sha> 프리릴리스를 발행하고, 주말 작업은 release/<date>-<sha>를 발행하여 최신 버전으로 표시합니다. 새 커밋이 없으면 건너뛰고, release는 모든 wheel 업로드가 완료되기 전까지 초안 상태를 유지하며, workflow_dispatch는 일회성 dev/patch 선택을 제공합니다. 당일 두 건의 야간 버전이 이 리듬에 따라 산출되었습니다.
테스트 쪽은 pytest 스위트를 16 프로세스로 변경했으며, 수치에는 실측 근거가 있습니다. 207개 케이스 슬라이스에서 1 프로세스 360초, 8 프로세스 89초, 16 프로세스 67초, 24 프로세스 67초였고, 32와 64는 오히려 더 느렸습니다. 단일 케이스가 “컴파일, triton-shared-opt, llc, 실행, 비교”의 직렬 체인이어서 프로세스가 더 많아지면 공유 컴파일 캐시를 두고 경쟁하기 때문입니다. 이전에 직렬로 실행할 때 FlagGems 스위트는 1시간 14분이 걸렸습니다.
#100은 업스트림 방식대로 stable ABI wheel을 빌드합니다. TRITON_STABLE_ABI=ON을 설정하고 제한 API(Py_LIMITED_API=0x030C0000)로 nanobind를 컴파일하며, wheel은 cp312-abi3로 표시되어 하나의 wheel이 3.12부터 3.15까지 커버하므로 릴리스 매트릭스가 세 개의 Python에서 하나로 줄어듭니다. 같은 브랜치에서 release.sh의 manylinux 툴체인 탐지도 수정했습니다. 스크립트가 /opt/rh/gcc-toolset-14/enable을 하드코딩하고 dnf install clang 이전에 이를 검사하는데, 이미지는 롤링 업데이트되는 :latest라 당시 이미 gcc-toolset-15를 포함하고 있어서 활성화 스크립트가 전혀 실행되지 않았고, clang이 crtbeginS.o, -lstdc++, -lgcc(riscv64)와 libstdc++의 <version> 헤더(x64)를 찾지 못해 두 아키텍처 모두 빌드에 실패했습니다. 이제 clang을 먼저 설치한 뒤 존재 여부에 따라 모든 툴체인을 활성화하고, 최신 것을 마지막에 둡니다. #101은 11-06 12:52에 머지되었으며(2개 파일, +17/−2), 릴리스 워크플로가 체크아웃 정리 단계에서 실패하는 문제를 처리합니다.
tilelang-riscv: 18일의 침묵이 PR #5로 깨졌으나, RVV 마스크와 최대 리덕션은 여전히 미커버 (11-03)
날짜: 2026-11-03 출처: PR #5, PR #4, PR #2
메인 브랜치의 마지막 커밋은 이전에 10-16 10:52의 “Build Python extension in Buddy CI”에 멈춰 있었고, 연속 18일간 커밋이 없었다. PR #5는 laz174가 제출했으며, 21개 파일 중 테스트와 문서가 대부분을 차지한다: 바이트 충실도를 검증하는 test_riscv_streaming_loads.py(+81)를 신규 추가하고, 산술 회귀를 수행하는 test_riscv_ieee_arithmetic.py(+77), INT8 양자화를 커버하는 test_int8_quant.py(+83)를 추가했다. 또한 기존 테스트 네 건이 기존 연산자의 수치 경로를 재정렬했으며(test_int8_dequant.py, test_fp8_quant_per_block.py, test_paged_kv_cache_write.py, test_elementwise_activations.py), operator_inventory.py에도 증감이 있었다(+9/−14).
병합 후 메인 브랜치 헤드 커밋은 57c548c이며, 이후 11-04부터 11-06까지 커밋이 없다. 대기열에는 여전히 오래된 PR 두 건이 걸려 있다: #4 “RVV vector mask and max reduction lowering”은 09-28에, #2 “Add Codex-compatible RISC-V operator workflow”는 06월에 멈춰 있으며 모두 병합되지 않았다. 즉 이번 병합은 RVV 마스크와 최대 리덕션 경로를 건드리지 않았다. 배포판 측의 python-tilelang-ruyiai는 10-28의 0b7d66eb에 고정되어 있어, PR #5는 아직 어떤 패키지에도 들어가지 않았다.
pytorch: riscv 브랜치 세 차례 전체 리베이스, 베이스라인 불변, 패치셋 불변 (11-02 ~ 11-06)
날짜: 2026-11-02 ~ 2026-11-06 출처: pytorch riscv 브랜치, 오픈 PR 목록
riscv 브랜치는 11-02, 11-03, 11-04의 03:00에 각각 한 차례 전체 리베이스를 수행했으며, 브랜치 자체 커밋 20건의 커밋 시간이 모두 같은 초로 통일되어 재작성되었고 작성자 시간은 원래대로 유지되었다. 헤드 커밋은 차례로 b20942de, 81ecd427, 6c89022이며, 메시지는 항상 [SyncBots] Integrate PyTorch at 3afdbd3이고, 베이스라인은 전진하지 않았으며 패치셋도 변화가 없어 여전히 riscv64 로컬 이미지(#51), bytes_to_scalar 부동소수점 수정(#44), linear cross entropy의 ULP 허용 오차(#42), inductor opinfo blocklist(#50)이다. 11-05와 11-06에는 브랜치 커밋이 없다.
main 브랜치는 기간마다 20~55건의 업스트림 동기화가 있었으며, 항목별로 확인한 결과 RISC-V 또는 RVV 관련 변경은 없었고, 내용은 AOTI, inductor, cuDNN frontend, XPU/oneDNN, ROCm 폴백, Mooncake 전송에 집중되어 있다. 오픈 PR 8건(#23, #35, #36, #38, #43, #46, #48, #51)은 주간 내내 병합되지 않았으며, 그중 #46 “RISC-V Vector Extension support for ATen”과 #48 “Add RISC-V Vector CPU capability”는 여전히 RVV 기능 업스트림을 위한 두 가지 주요 제안이다.
배포 측과 함께 읽어야 할 것은 그 어긋남이다: openRuyi의 python-torch-ruyiai(#1352)는 브랜치 산출물을 기준으로 빌드되는데, 브랜치 헤드가 리베이스할 때마다 SHA가 바뀌므로 패키지에 고정된 소스 지점을 다시 정렬해야 한다. 해당 PR의 마지막 업데이트는 10-27 09:51에 멈춰 있고 검토 의견은 없으며, 이번 기간에도 정렬 작업은 없었다.
3. RuyiSDK 툴체인과 배포판 (패키지 관리자, 배포판, 이미지 및 지원 매트릭스)
모니터링 기간 개요: openRuyi 메인 저장소는 이번 주 156건의 커밋(베이징 시간 자연일 기준: 11-02 7건, 11-03 94건, 11-04 10건, 11-05 41건, 11-06 4건)이 있었고, 병합된 PR은 패치, Node.js, firecracker, RuyiAI 삼종 세트, simdjson, debuginfo, LibreOffice 의존성 체인 등을 커버한다. ruyi 메인 저장소는 이번 주 11-02 하루만 활동이 있었고, packages-index 세 건은 모두 11-02에 있었다. 격주 진행 상황 080호는 두 절 초안에서 전체 절 병합까지 진행되었다.
openRuyi #1350 병합: 세 가지 spec이 각각 어느 버전으로 반영되었나 (11-03)
날짜: 2026-11-03 출처: buddy-mlir.spec, python-triton-ruyiai.spec, python-tilelang-ruyiai.spec
세 spec의 실제 앵커는 메인 저장소에서 직접 확인할 수 있다:
buddy-mlir0.1.2:Source0은 buddy-compiler 커밋60f354a7(“[ci] Add the publish-models workflow #925”)을 가리키고,Source1은RuyiAI-Stack/llvm-project커밋3845a205를 가리킨다. clang/lld 22로 부트스트랩하며,BUDDY_ENABLE_TESTS=OFF,BUDDY_MLIR_ENABLE_PYTHON_PACKAGES=OFF,BUDDY_DOWNLOAD_CLI11=OFF, 정적 라이브러리 빌드, LLVM 프리픽스는/usr/lib64/buddy-mlir/llvm에 설치된다.python-triton-ruyiai3.8.0+git20261103.da5291b:Source0은 triton-lang/triton 커밋5889527이고,Source1은 triton-riscv 태그nightly/20260913-da5291b이다. 두 패치는 각각 시스템 빌드 도구(cmake/ninja/nanobind)와/usr/lib64/buddy-mlir/llvm/bin아래의 도구 탐색을 처리한다. 런타임 의존성은buddy-mlir,buddy-mlir-llvm,clang이다.python-tilelang-ruyiai0+git20261028.0b7d66e: 메인 소스 앵커는 tilelang-riscv 커밋0b7d66eb이며, TileLang/tvm882a7748, dmlc-core3031e4a6, rangcabe04d6, tvm-ffiae346ec9, DLPack93c8f2a3다섯 서브모듈을 별도로 패키징한다. 다섯 패치는 tvm-ffi 버전 상한, torch-c-dlpack-ext와 patchelf, buddy-mlir 툴체인 발견, z3 soname, libbacktrace 스위치를 처리한다. 빌드 시python3dist(torch)가 필요하다.
세 spec은 동일한 LLVM/MLIR 체인을 공유하며, 이는 후속 업그레이드 순서를 결정한다: 먼저 buddy-mlir를 건드리고, 그다음 두 Python 패키지를 건드리며, 어느 계층이든 앵커를 바꾸면 동기적으로 재빌드해야 한다. 43일 재검토의 주요 작업량도 기능이 아니라, 소스 트리에서 환경 변수로 이어 붙인 경로를 하나하나 재현 가능한 탐색 규칙으로 확정하는 데 있다.
버전 앵커 지연: triton은 09-13, tilelang은 10-28, buddy는 0.1.2(11-03)에 정체
날짜: 2026-11-03 출처: triton-riscv 나이틀리 09-13, tilelang-riscv 커밋 0b7d66e, BUDDY MLIR 0.1.3
세 패키지의 버전 문자열은 모두 최신처럼 보이지만 코드 앵커는 각기 다르다: triton의 3.8.0+git20261103에서 20261103은 패키징 날짜이며, 실제 코드는 09-13의 nightly/20260913-da5291b 태그(릴리스 기록 09-14 01:41 UTC)에서 왔고, 병합 후 약 50일이 지난 상태다. tilelang은 10-28의 0b7d66eb에 앵커되어 있어, 11-03에 막 병합된 PR #5가 이번 패키징의 소스 스냅샷에 포함되지 않음을 의미한다. buddy-mlir 패키지는 0.1.2로 표기되어 있으나 업스트림 정식 버전은 이미 0.1.3(10-31 23:01 UTC 릴리스)에 도달했고, 나이틀리는 0.1.4.dev20261105에 도달했다.
버전 번호에 포함된 날짜는 코드 날짜와 같지 않으며, 이 점은 배포판 사용자에게 실질적인 의미가 있다. 설치되는 것은 특정 스냅샷이지 최신 버전이 아니기 때문이다. 패키지가 한 번 빌드되어 릴리스되면 그 기능과 저장소 HEAD 사이에는 고정된 지연이 존재하며, 이 지연은 후속 bump 커밋을 통해 줄여야 한다. 이번 주에는 bump 커밋이 한 건도 없었다.
ruyi 0.54.0-beta.20261102: 열세 건의 목록 중 네 건만 새 항목, ABI는 패키지 스캔에서 호스트 판정으로 (11-02)
날짜: 2026-11-02 출처: Release 0.54.0-beta.20261102, PR #507, PR #496, PR #509
타임라인: 15:16 태그 생성, 18:37 단일 파일 바이너리와 미러 사이트 디렉터리 릴리스, PyPI에 0.54.0b20261102 동기화; 정식 버전 채널은 여전히 09-24의 0.53.0이다. 이는 0.53.0 이후 39일 만의 첫 새 태그이다. 직전 프리릴리스인 0.54.0-alpha.20260918은 0.53.0보다도 엿새 앞섰으며, 10월 내내 어떤 alpha나 beta도 나오지 않았다. alpha에서 beta까지 45일이 걸렸으나, 0.50과 0.51 두 라인의 alpha→beta 간격은 모두 28일, 0.53 라인은 20일이었다.
비교 인터페이스가 보여준 분기 상황은 기록해 둘 만하다: beta는 0.53.0 대비 diverged 상태로, 칠십 건 앞서고 세 건 뒤처진다. 뒤처진 세 건은 각각 0.53.0-beta와 0.53.0의 버전 번호 자동 증가, 그리고 「저장소 간 설치된 패키지 인식」 수정 한 건이다. 동일한 수정이 beta에서는 다른 SHA로 존재하므로 기능 누락은 아니며, 단지 0.53 릴리스 브랜치의 기록이 메인라인에 병합되지 않은 것뿐이다.
ABI 기능의 계층을 구분할 필요가 있다: #496의 ELF 스캐너는 이미 09-16에 병합되어 0.53.0과 함께 릴리스되었으며, 디렉터리와 tar/zip/deb 아카이브를 스캔하고 결정론적 .abi.toml 주석을 생성하며 rescan-package-abi를 제공한다. 이번에 새로 추가된 것은 소비 측 #507로, 주석을 사용해 현재 호스트와 비교하고 「이 패키지가 이 머신에서 실행될 수 있는가」에 답한다. 같은 버전의 #509는 패키지 가져오기 실패 보고를 수정한 것으로, 비 2xx 응답이 더 이상 「다운로드 성공」으로 처리되어 오류 페이지가 남지 않으며, 재개 가능한 부분 다운로드를 보존하고 HTTP 상태, 리다이렉트, 연결 실패, 전송 정체를 각각 안내한다. 이 항목은 실제 사용자에게 ABI 검사보다 더 직접적이다.
packages-index: 세 패키지에 열한 개의 ABI 주석, 커버리지는 여전히 세 자릿수 분모 속 한 자릿수 (11-02)
날짜: 2026-11-02 출처: packages-index 커밋, gnu-ruyisdk riscv64 주석
세 건의 커밋은 #507 병합 전 십팔 분 안에 집중되었다: 13:09에 toolchain/gnu-ruyisdk에 0.20260921.0 추가(주석 세 개 포함), 13:18에 board-util/wlink에 두 버전 총 여섯 개 주석 추가, 13:26에 emulator/qemu-system-riscv-upstream에 두 개의 amd64 주석 추가.
gnu-ruyisdk의 riscv64 주석을 예로 들면 스캔 세분성을 알 수 있다: 전체 아카이브 2178개 파일 중 43개의 ELF를 식별하고 5478개를 제외했다; e_machines=[243], 다섯 개의 soname에 의존; 버전 요구 상한은 GLIBC 2.38, GLIBCXX 3.4.21, CXXABI 1.3.9; ISA 속성은 버전 번호가 붙은 세분성까지 기록된다(rv64i2p1, m2p0, a2p1, f2p2, d2p2, c2p0, 추가로 zicsr, zifencei, zmmul), 스택 정렬 16. 이는 「호스트가 이 툴체인을 실행할 수 있는가」를 판정하기에 충분하다.
그러나 커버리지는 확고한 제약이다: 인덱스 내 총 327개의 패키지 버전 설명 파일 중 주석이 있는 것은 3개 패키지, 11개 파일뿐이며, 그중 qemu는 amd64 두 개만 있고 riscv64는 없다. RISC-V 사용자가 현재 대다수 패키지를 조회하면 얻게 되는 결과는 「미판정」일 것이다. 주석 커버리지가 따라잡으려면 빌드 파이프라인을 통한 패키지별 재스캔이 필요하다.
openRuyi 메인 저장소: 한 주 156건 커밋, 11-03에 75건의 Rust 사양을 한 번에 푸시 (11-02 ~ 11-06)
날짜: 2026-11-02 ~ 2026-11-06 출처: openRuyi 커밋 목록, PR #1595, PR #1596
베이징 시간 자연일 기준으로 집계하면 7, 94, 10, 41, 4건이다. 11-03의 94건 중 75건은 같은 초에 푸시되었다. firecracker 본체 1건에 더해 74건의 Rust crate 사양(rust-vhost, rust-vm-allocator, rust-vm-superio, rust-bitcode 등을 포함하며 firecracker의 의존성 클로저임)이 함께 들어왔다. 15:59의 3건은 RuyiAI 3종 세트이고, 나머지는 patch 2.8.1, Node.js 26.13.0, simdjson 5.0.8, debuginfo 게이팅 등이다. 작성자는 Jvlegod(75건), Leetfs(44건), Jingwiw(12건)가 주를 이룬다.
11-05의 41건 중 37건은 LibreOffice 의존성 체인에 속하며 두 배치로 나뉘어 병합되었다. PR #1595(1/n, 25개 파일, +1383)는 한 번에 21개 패키지를 추가했으며 WordPerfect(libwpd, libwps), Visio(libvisio), Publisher(libmspub), PageMaker(libpagemaker), QuarkXPress(libqxp), Zoner Draw(libzmf), StarOffice 및 구버전 Office 바이너리(libstaroffice, libmwaw, libe-book), 그리고 liborcus, libepubgen, libodfgen, libetonyek, liblangtag와 mdds를 포함한다. PR #1596(2/n, 17개 파일, +4633)은 폰트 툴체인을 보충하여 python-afdko 및 그 의존성(defcon, fontparts, fontpens, ufoprocessor, ufonormalizer, mutatormath)과 antlr4-cpp-runtime을 함께 패키징했다. 이 체인은 아직 완료되지 않았다. #1600(4/n, Base 컴포넌트의 Firebird), #1602(6/n, PDFium, ZXing, SANE, Box2D)는 여전히 검토 중이고, #1603(7/n)은 병합되지 않고 닫혔다.
정기 및 보안 업데이트는 4건이다. libvirt 12.9.0은 security-fixes로 표기되었고, util-linux 2.42.4, clang-wrap 20261105, gnupg는 scdaemon을 독립 하위 패키지로 분리했다. CI 측에는 한 차례 시행착오가 있었다. 11-04 21:43에 update-package 워크플로를 openruyi 컨테이너 안에서 실행하도록 변경했다가 두 시간 후 롤백했고, 이어서 apt-key를 범위가 제한된 OBS 서명 키로 교체했다.
openRuyi 2026.10 월간 버전 한 달 전체 누락, 뉴스 페이지 9월에 정체(11-02 ~ 11-06)
날짜: 2026-11-02 ~ 2026-11-07(상태) 출처: openRuyi 뉴스 페이지, Releases
2026년 10월 월간 릴리스 공지가 주중 내내 나타나지 않았고, 뉴스 페이지의 최신 릴리스 공지는 여전히 09-30의 2026.09이다. 11-07 확인 시점에 2026-10과 2026-11의 릴리스 경로는 모두 404를 반환했다. 앞선 네 달의 리듬(6-30, 7-23, 8-27, 9-30)에 비추어 볼 때 이번이 첫 한 달 전체 누락이다.
두 종류의 콘텐츠를 구분할 필요가 있다. 10월의 두 특집 기사(《openRuyi-Project: RISC-V 소프트웨어 생태계의 공공 인프라》와 《openRuyi, Ruyi Firmware 발표》)는 모두 10-19로 표기되어 있으나 실제로는 공식 웹사이트 저장소에서 10-30 15:36에 한 번의 커밋으로 게시되었다. Releases 페이지의 2026.05부터 2026.09까지의 experimental 태그도 10-19에 일괄 소급 등록된 것으로, 어느 것도 10월 릴리스로 간주할 수 없다.
여기서 Ruyi Firmware는 RuyiAI의 검증 환경과 직접적인 관련이 있다. 펌웨어는 coreboot, OpenSBI, EDK2를 기반으로 하며 공개 빌드 및 플래싱 절차를 제공한다. MultiArchUefiPkg의 x64emu를 통합해 RISC-V UEFI 환경에서 일부 x64 그래픽카드 UEFI 구성요소를 실행할 수 있게 했으며(이미 AMD Radeon RX 6400에서 조합 테스트 완료), K3가 DMA32를 지원하지 않아 발생한 RX 550 oprom 문제를 해결하기 위해 AArch64 oprom 구성요소로 전환했다. UEFI Setup에는 CPU mode 선택(X100 only, X100 + A100, A100 only)이 새로 추가되었으며, 이 중 A100 only는 벡터 확장을 지원해 1024비트 vlen 테스트 환경으로 활용할 수 있다. 릴리스 패키지는 20261013, 20261014, 20261015 세 가지 버전이며, SpacemiT K3 Pico ITX에서 Wayland 데스크톱과 glmark2-wayland를 구동하는 데 성공했다.
080호: ruyi 0.54, 11월 11일 전후로 확정, K1/K3 툴체인 소프트웨어 소스에 추가(11-05)
날짜: 2026-11-05 출처: 080호 원고, ruyi 공개 PR
080호는 명확한 시점을 제시한다. RuyiSDK 0.54는 11월 11일 전후로 릴리스되며, 패키지 관리자 버전도 0.54.0이다. 첫 번째 주요 포인트는 소프트웨어 패키지와 현재 시스템의 ABI 호환성 검사로, 최초 지원 대상은 C 런타임이 glibc 또는 musl인 모든 Linux 배포판이다. 두 번째로, 다운로드 요청이 2xx가 아닌 상태 코드를 반환할 경우 이제 올바르게 실패로 판정되며, 다운로드 실패 문제 해결 가이드에 서버 문제와 단말 네트워크 환경 두 가지 요인이 추가되었다. 엔지니어링 측면에서는 의존성 버전을 업데이트했으며, 10월 이후의 TLS 인증서 관련 보안 수정을 포함한다. pygit2가 아직 Python 3.15에 적응하지 못해 CI에서는 당분간 3.15를 사용하지 않는다.
소프트웨어 소스의 실질적인 변화는 toolchain/gnu-ruyisdk에 SpacemiT K1/K3 대상 툴체인 적응이 추가되고 일부 소프트웨어 패키지에 ABI 호환성 정보가 보완된 것이다. 배포판 측의 일상 유지보수도 멈추지 않았다. 이번 주 156건의 커밋 중 대다수가 패키징이었으나, AI 스택을 겨냥한 릴리스는 진행되지 않았으며 병목은 개발이 아닌 릴리스 절차에 있었다.
4. 벡터 확장과 연산자 최적화(VecIntrinBench / IntrinTrans / FBGEMM)
세 벡터 저장소, 일주일 내내 조용히, 최신 커밋은 각각 02-13, 06-25, 07-13에 멈춰
날짜: 2026-11-06(상태) 출처: VecIntrinBench, IntrinTrans, FBGEMM
‘벡터’를 주제로 한 세 저장소는 일주일 내내 커밋이 없었으며, 최신 커밋 시각은 각각 VecIntrinBench 02-13, IntrinTrans 06-25, FBGEMM 07-13으로, 각각 약 9개월, 4개월, 3개월간 멈춰 있다. 세 저장소는 원래 ‘무엇을 측정할지, 어떻게 변환할지, 연산자를 어떻게 구현할지’의 삼각 구도를 이루었으나, 현재는 각자 자연스럽게 냉각된 것이지 일괄적인 프로젝트 종료는 아니다.
VecIntrinBench가 가장 오래 멈춰 있어 커버리지 판단에 미치는 영향이 가장 직접적이다. 벤치마크가 업데이트되지 않으면 그것이 측정하는 내장 함수 집합과 컴파일러가 실제로 지원하는 집합의 격차는 점점 벌어지는데, LLVM 측의 A100/AME 강등 체인은 이번 주에도 여전히 확장되고 있었다.
벡터 수학은 라이브러리 측에 보강: glibc libmvec 4개 함수, newlib 14개 함수(11-04~11-05)
날짜: 2026-11-04~2026-11-05 출처: 080호 초안, 문서 저장소 커밋 목록
080호의 ‘기초 구성요소’ 두 절은 이번 주 가장 실질적인 저수준 작업 묶음을 제시한다. 기초 C 라이브러리 부분에서 glibc는 sinpif, sqrt, sqrtf, tanf를 기존 libmvec 프레임워크에 이식했으며, newlib는 atanhf, atan2f, atanpif, atan2pif, exp2f, cosf, coshf, cospif, exp10f, expf, log2f, log2p1f, rsqrtf, expm1f 총 14개 함수를 기존 벡터 수학 프레임워크에 이식했다.
이 함수들은 RVV에서 저정밀 추론과 활성화 계산을 수행하기 위한 기반입니다. 벡터 수학 라이브러리에 함수가 없으면 연산자는 스칼라 경로로 후퇴할 수밖에 없고, 컴파일러 측의 RVV 하향 최적화가 아무리 좋아도 성능을 발휘할 수 없습니다. 이와 호응하는 것은 11-02의 arXiv 연구 한 편입니다. 저자들은 fp32, int8, bf16, fp16 네 가지 정밀도의 곱셈-덧셈 루프로 LLVM의 RISC-V 자동 벡터화를 비교했는데, -march=rv64gcv라는 공통 기준선에서 int8과 fp32는 깔끔하게 벡터화되는 반면 bf16과 fp16은 대량의 스칼라 후퇴로 퇴화했고, fp16은 심지어 원소별 소프트웨어 변환 호출로 퇴화했으며 zvfbfmin/zvfbfwma와 zvfhmin을 추가로 켜지 않는 한 그렇습니다. QEMU 사용자 모드에서의 동적 명령 수는 기준선 bf16과 fp16 커널이 실행하는 명령 수가 확장 버전을 켠 경우의 각각 17.0배와 75.9배임을 보여줍니다. 한쪽은 라이브러리 함수가 부족하고 다른 한쪽은 기능 스위치의 가시성이 부족한 것은 같은 문제의 양면입니다.
컴파일러 측: LLVM 6건의 P-ext와 XTHeadBb, Ztt v0.6; GCC 3건의 Zb*; V8 6건
날짜: 2026-11-05 출처: LLVM PR 235306, LLVM PR 237815, GCC Zba 커밋, V8 CL 8714039
LLVM 업스트림은 이번 주 6건을 머지했으며, 패킹 SIMD와 비트 연산에 집중되었습니다. P 확장은 더 많은 pm*add*와 후속 덧셈 패턴을 pm*adda* 계열 명령으로 합성하고(#235306), RV32에서 64비트 funnel shift의 코드 생성을 개선하며(#235245), 확장 폭 수평 덧셈을 갖는 패킹 곱셈-누산 intrinsics를 새로 추가하고(#234450), Clang에 패킹 바이트 수평 곱셈-누산 intrinsics의 부호 있는, 부호 없는, 혼합 부호 세 가지 형태를 보충했습니다(#234484). GlobalISel 측은 XTHeadBb에서 좁은 타입의 G_CTLZ_ZERO_POISON을 먼저 확장하고(#237815), G_CTTZ를 XLEN으로 확장한 뒤 G_CTLZ를 거쳐 th.ff1을 선택하도록 했습니다(#238214). RuyiSDK의 LLVM 브랜치에는 또 두 건이 있습니다. Ztt 사양과 intrinsics 문서 v0.6에 따라 RV32/RV64 행렬 확장을 초기 지원하며, 어셈블리와 디스어셈블리, Clang 타입과 intrinsics, LLVM IR과 코드 생성, 그리고 M/ACC 레지스터 할당, 복사, 스필 처리를 포함합니다(#169). AME 브랜치에는 GitHub Actions CI를 추가했습니다(#170).
GCC의 세 건은 10-27에 개발 메인라인(r17-5638부터 r17-5640)에 들어갔습니다. Zba는 시프트 덧셈과 정수 나눗셈, 나머지의 조합 인식을 개선하고, Zbs는 bclr 자체의 시프트 인덱스 의미를 활용해 불필요한 마스크 계산을 제거하여 RV32/RV64 비트맵 연산을 개선하며, Zbkb는 packh의 비용 모델과 매칭 우선순위를 수정하여 Zbb와 Zbkb가 동시에 활성화될 때 더 나은 명령을 선택하지 못하는 문제를 해결했습니다. 툴체인 CI 측에서 RISE-CI는 컨테이너 서비스와 GitHub Actions를 연결하고 multilib 빌드 시나리오 검사를 추가했습니다. 성능 측에서는 SPEC CPU 2026 기반 실제 하드웨어 평가 준비를 시작했으며, 후보 K3 플랫폼에서 전체 SPECspeed 2026을 돌릴 때의 메모리 병목을 이미 식별했고 다른 하드웨어 방안을 평가 중입니다.
V8 측은 이번 기간에 6건을 제출 및 머지했고, 6건을 검토 및 머지했습니다. 전자에는 신뢰 포인터 태그 범위 검사 수정, 태그 언더플로 시 범위를 벗어난 신뢰 포인터를 0으로 설정, Maglev가 제로 레지스터를 통해 0값 상수를 저장, GN 빌드 설정에서 CPU 기능 도출, Float64를 Float32로 변환할 때 NaN 부호 비트 보존, Liftoff가 서브워드 원자적 RMW의 임시 레지스터 할당을 루프 밖으로 이동하는 것이 포함됩니다. 후자에는 스칼라 이동 시 벡터 테일 보존(CL 8714039), VLEN=1024 허용(CL 8585179), 누락된 RV64 Add643 연산 구현, 하드웨어에서 stop()이 ebreak만 생성하는 것이 포함됩니다.
5. Buddy Compiler 동향(buddy-mlir 커밋과 릴리스)
0.1.3의 설명과 코드 차집합: 16건 중 12건이 벡터 계층을 건드렸지만 릴리스 노트에는 ABI만 기재(주기 시작 전야)
날짜: 2026-10-31 (베이징 시간 11-01 07:01) 출처: BUDDY MLIR 0.1.3, v0.1.2와 v0.1.3의 커밋 차집합
이 버전은 모니터링 기간 시작 전날 밤에 릴리스되었으며, 이번 주 모든 다운스트림 기준점을 이해하는 전제가 된다. 릴리스 노트에서는 단 한 가지 내용만 다루었다: buddy-server의 새로운 ABI(#1015), 즉 모달리티별로 따로 작성되던 모델 플러그인 핸들을 통합 인터페이스로 수렴시키고, 통합된 로딩, 상태 조회, 호출, 스트리밍 및 취소 경로를 추가한 것이다. 그러나 v0.1.2와 v0.1.3의 커밋 차집합을 확인해 보면, 이 버전에는 실제로 16개의 커밋과 136개의 파일이 포함되어 있으며, 그중 10개는 [midend][VIR] 아래의 RISC-V 벡터화 작업 전체 구간이고, 또 다른 2개는 같은 VIR 계열이지만 [midend] 접두사 아래에 있지 않다(decode attention의 VIR 방언 구현과 VIR의 Python 바인딩). 즉, 16개 중 12개가 벡터 방언 계층을 건드린 것이지만, 릴리스 노트에는 RISC-V나 RVV에 대한 언급이 한 글자도 없다.
이러한 격차 자체가 정보이다: 릴리스 페이지를 보는 사람은 0.1.3이 단순한 서버 측 리팩토링일 뿐이라고 생각하겠지만, 실제로 받게 되는 것은 확장 가능한 벡터화 능력이 현저히 앞당겨진 버전이다. 다운스트림에 대한 직접적인 의미는, triton-riscv의 의존성 기준점이 여전히 nightly/v0.1.3.dev20261030(#91, 10-31 13:15 머지)에 고정되어 있고, 내용은 정식 버전과 동일한 소스(0.1.3은 10-29 메인 브랜치 헤드에서 분기)이지만, 현재의 renovate 주기에 따르면 release/v0.1.3으로 전환하려면 한 라운드를 더 기다려야 한다 — 이번 주말까지도 여전히 전환되지 않았다.
이번 주 VIR 세 건: set_vl 정확/임의 VLEN 분기, vir.shuffle 분할 하강, llc 옵션에 따른 커널 (11-04 ~ 11-05)
날짜: 2026-11-04 ~ 2026-11-05 출처: PR #1028, PR #1029, PR #1030, PR #1031
set_vl의 의미론 강화는 「이번 주 주요 뉴스」를 참조. 구현 세부 사항 한 가지를 보충한다: #1029는 rvv-vlen을 제공하지 않는 빌드에 대해 코드가 임의의 VLEN에서 성립할 것을 요구하며, strip-mined 영역은 N 곱하기 vscale로 런타임에 스텝을 진행하고, 벡터는 최소 128비트로 크기가 정해지며, 결과를 가진 set_vl은 직접 거부되고 「rvv-vlen, 즉 정확한 VLEN이 필요함」을 보고한다 — 이전에 이 pass는 단지 오류를 보고했을 뿐, 의미론은 「마스크가 우연히 모두 참」이라는 것에 의존해 보장되었다.
11-05의 두 가지 lowering 변경은 vir.shuffle과 커널 하강을 대상으로 한다. 브로드캐스트는 먼저 vector<[2]xT>를 거친 후 전반부를 취하여(vector.scalable.extract) vector<[1]xT>를 얻는데, 이는 vector<[1]xT>에 직접 vector.broadcast를 수행할 때 LLVM이 마스크 [0]의 shufflevector를 생성하고, 이것이 createOrFold에 의해 항등 연산으로 폴딩되어 나머지 vscale-1개의 lane이 모두 poison이 되기 때문이다; llc는 insertelement를 lane 0만 쓰는 vfmv.s.f로 바꾸게 되고, 이 값이 .vf 명령어에 병합되지 않고 레지스터에 저장되면 결과가 틀려진다. [2]xT 경로로 변경한 후 llc는 vfmv.v.f를 사용하여 [1]xT의 LMUL에서 브로드캐스트를 완료하며, 명령어 수는 늘지 않고 루프에서는 오히려 하나 줄어든다. 다른 한 건은 커널이 llc의 -mattr 등의 옵션에 따라 하강하도록 하며, 테스트 vir-broadcast-scalable-one.mlir는 스트리핑과 set_vl 결과 포함 두 경로를 모두 커버한다.
#1033 BOSCAME SPM: 209개 파일, +46131, Kernel Contract와 FPGA 도구 함께 전개 (11-06)
날짜: 2026-11-06 출처: PR #1033, 커밋 목록
11-06 15:39에 머지된 이 커밋은 이번 주 최대 규모의 단일 커밋이다: 209개 파일, +46131/−2305. PR 자체 설명에 따르면 네 부분으로 나뉜다. 첫째, 목표와 무관한 Kernel Contract(어노테이션과 검증)를 새로 추가하고, bufferized Linalg를 bosc_ame SPM/DMA/tile IR로 내리는 BOSCAME 플래너와 emitter를 추가했다. 둘째, bosc_ame dialect를 확장(SPM/DMA/tile 계약, LLVM export, SPM/DMA 검증)하고 관련 pass를 buddy-opt에 연결했다. 셋째, runtime/boscame 베어메탈 런타임과 examples/BOSCAMEFPGA의 보드 업로드·감사·시뮬레이션 도구를 새로 추가했으며, examples/BOSCAMEDialect에 호스트 측 dialect 예제를 두었다. 넷째, 문서(루트 README부터 FPGA 예제, 런타임, docs/BOSCAMEKernelContractPipeline.md와 docs/KernelContract.md의 읽기 경로)를 보완하고, tests/KernelContract와 tests/Conversion/BOSCAME의 lit 케이스로 이 경로를 커버했다.
이 커밋과 11-04의 LLVM 커밋은 같은 체인의 양 끝이다. LLVM 측은 ‘i32 누산기가 항상 AccReg에 남아야 한다’는 레지스터 분류와 스케줄링을 해결하고, buddy-mlir 측은 ‘상위 TTIR을 어떻게 BOSCAME으로 내릴 것인가’를 해결한다. 계약, 계획, 방출부터 런타임과 FPGA 도구까지 처음으로 실행 가능한 엔드투엔드 설명을 제시한다. 다만 경계해야 할 것은 커버리지다. PR은 엔드투엔드 모델 성능 데이터를 제시하지 않았으며, 얼마나 빠르게 돌릴 수 있는지는 이번 주에 답이 없다.
runtime 공유 serving 컨트롤러와 CI 세 건 (11-04 ~ 11-05)
날짜: 2026-11-04 ~ 2026-11-05 출처: PR #1018, PR #1026, PR #1027, PR #1025
#1018은 모델과 무관한 serving 생성 컨트롤러(18개 파일, +2045)를 새로 추가하여 런타임 어댑터가 동일한 생성 token 예산, 정지 조건, 사용량 집계, 스트리밍 정리를 공유하도록 한다. 호출자는 LLMSession의 호스트 샘플링을 사용하거나 디바이스 측에서 직접 token을 제공하는 token 소스를 사용할 수 있다. 몇 가지 세부 사항을 기록할 만하다. 문자열 정지 조건은 먼저 원시 바이트로 매칭한 뒤 UTF-8 디코딩을 수행하여 멀티바이트 경계 오판을 피한다. token 예산은 첫 예측과 EOS/정지 token을 모두 포함한다. 반복 패널티는 요청의 히스토리 윈도 내에서 token ID 기준 중복 제거 후 각각 한 번씩 적용된다. 첫 token은 prefill에서 오므로, 처리량 통계는 최초 선택을 prefill에, 이후 선택을 decode에 기록하며, decode 작업이 없는 경우 처리량 0을 보고한다. 후속 어댑터 연결은 DeepSeek R1(#1021), Llama 3.1 TTNN(#1022), Qwen3-VL 등의 항목에서 각각 추적된다.
CI 세 건 중 #1026은 pytorch 2.15를 테스트 매트릭스에 추가(2.11 ~ 2.15 커버)했는데, 그 계기는 실제 회귀였다. 2.15에서 최신 full check가 tests/Python/AtenOps/test_resize_enlarge.py에서 실패하며, 실패는 importer 이전에 발생한다. AOT autograd의 functionalization이 이제 함수화된 텐서에 대한 resize_ 확대를 거부하여 그래프가 ResizeOp에 도달하지 못하는 것이다. 수정 방법은 테스트를 out-of-place aten.resize로 교체하는 것이다. #1027은 CI가 배포하는 LLVM에 NVPTX/AMDGPU 타깃을 포함하고 lld를 활성화하며, #1025는 LLVM을 bef335e2143c로 올린다.
릴리스 리듬: 0.1.3 이후 두 개의 나이틀리 빌드, 다운스트림 앵커는 여전히 나이틀리 태그 (11-03, 11-05)
날짜: 2026-11-03, 2026-11-05 출처: 나이틀리 dev20261103, 나이틀리 dev20261105, Release 목록
11-03 18:23에 0.1.4.dev20261103가 나왔고, 이전 버전과는 사흘 간격이다. 11-05 10:58에는 0.1.4.dev20261105가 나왔다. 정식 버전은 여전히 10-31의 0.1.3이다. 11-06에 #1033이 병합된 이후로는 새로운 나이틀리 패키지가 없다. 이 4만여 줄 규모의 변경은 다음 버전 빌드가 되어야 다운스트림에 반영된다.
앵커의 형태는 여전히 바뀌지 않았다. triton-riscv가 의존하는 것은 나이틀리 태그 nightly/v0.1.3.dev20261030이며, 정식 버전 태그 release/v0.1.3이 아니다. 두 태그는 내용이 동일 소스에서 나왔고, 차이는 재현성에 있다. 나이틀리 태그는 후속 빌드가 참조를 덮어쓰지만, 정식 태그는 그렇지 않다. 이미 배포판에 들어간 스택 입장에서 장기간 나이틀리 버전을 앵커로 삼는다는 것은 패키지 내부에 고정된 출처가 장기적으로 재현 불가능하다는 뜻이다.
6. 커뮤니티와 활동 및 공식 홈페이지
격주 진행 080호: 두 개 섹션 초안에서 전체 섹션 병합까지, 권두사와 공식 홈페이지 문서 두 섹션은 여전히 공백 (11-04 ~ 11-05)
날짜: 2026-11-04 ~ 2026-11-05 출처: 080호 원고, 아티클 저장소 커밋 목록
아티클 저장소에는 11-04에 커밋 네 건이 있었다. 09:56 초안 작성, 16:01 LIBC 보충, 18:02와 19:35에 080호 파일 두 차례 업데이트가 있었으며, 당시에는 기본 C 라이브러리와 V8 두 섹션만 내용이 있었다. 11-05 09:59부터 15:25 사이에 커밋 여덟 건이 병합되어 패키지 관리자, IDE(두 건), 개발 보드 지원 매트릭스, OpenJDK, GCC, Go, ruyipkg 각 섹션이 보충되었다.
개발 보드 쪽에는 Milk-V Jupiter2의 Bianbu 4.0.1 Desktop과 SpacemiT K3 Pico-ITX의 Bianbu 4.0.8 LXQt 중영문 테스트 리포트가 새로 추가되었고, VisionFive 2 Lite의 Ubuntu 24.04.5 리포트도 업데이트되었다. 예제 저장소에는 HiFive Premier P550의 Dhrystone 및 SiFive Kernel Library 예제, Jupiter2의 llama-server 배포 예제, 그리고 K3 CoM260과 K3 Pico-ITX의 ROS 2 과정 진입점이 새로 추가되었다.
아직 작성되지 않은 세 섹션은 권두사, 버전 테스트 및 잔여 이슈, 공식 홈페이지&문서이며, QEMU 섹션 역시 비어 있다. 원고에서 「GCC」 소제목이 두 번 반복되는 것은 편집상 누락이다. 포럼 쪽에서는 이번 주말까지 080호 게시글이 올라오지 않았고, 격주 진행의 포럼 최신 호는 여전히 10-26의 079호이다.
포럼: 11-03의 스크립트 설치 가이드와 11-06의 자동차 MCU 전재, 080호는 미게시
날짜: 2026-11-03, 2026-11-06 출처: ruyi 스크립트 설치 가이드, Infineon 자동차 MCU 전재, 최신 토픽
11-03 17:50에 #2902 《스크립트로 ruyi 설치 및 업그레이드하는 방법과 사용 가이드》가 새로 올라왔으며, 두 가지 시나리오를 제시한다. 로컬에 ruyi가 이미 있으면 업그레이드, 없으면 신규 설치 경로를 타며, 스크립트는 ~/.local/bin에 설치되고 관리자 권한이 필요 없다. 게시글에는 스크립트가 현재 가져오는 바이너리 버전이 0.52.0이라고 명시되어 있는데, 이는 정식 버전 0.53.0보다 한 버전 뒤처지고 0.54.0-beta보다 두 단계 뒤처진 것이다. 같은 시간대에 유사 게시글 #2901도 있었으나 작성자가 삭제했다.
11-06 12:05에 #2903 《[전재] Infineon 최초의 RISC-V 자동차 MCU, 곧 나온다》가 새로 올라왔으며, 업계 전재 성격으로 본 스택과는 무관하다. 그 외 모니터링 기간 내 신규 게시글은 없었고, 10-29의 서밋 관련 게시글 세 편은 여전히 첫 페이지에 있다.
공식 홈페이지: 세 페이지 전 주간 무변화, 블로그 2편, 문서 23장
날짜: 2026-11-02 ~ 2026-11-07 (상태) 출처: RuyiAI 공식 홈페이지, 블로그 인덱스, 문서 인덱스
index.html(7246 바이트), blog.html(5632 바이트), docs.html(10843 바이트) 세 페이지의 sha256이 이전 호와 동일하며 전 주간 변화가 없었다. 홈페이지 인덱스 3건, 블로그 2편(《Triton의 RISC-V 적응》《PyTorch RISC-V CI 실천》), 문서 23장이다.
이번 주 기술 진척과 대조해 보면 이 침묵은 기록해 둘 만하다. AME/BOSCAME 백엔드가 연달아 두 건을 올렸고 triton이 플러그인화 개편을 완료한 것은 모두 대외적으로 설명 가능한 구조적 변화인데, 블로그와 문서 쪽에는 대응되는 업데이트가 없다. 공식 홈페이지의 두 블로그는 모두 「적응 실천」류인데, 정작 빠진 것은 「매트릭스 백엔드가 어디까지 왔는가」「플러그인화 이후 어떻게 설치하는가」 같은 단계별 설명이다.
외부 뉴스와 arXiv: 다섯 차례 정밀 조회 전 주간 무적중, 주기 내 논문은 단 한 편
날짜: 2026-11-02 ~ 2026-11-06 (상태) 출처: Google News RSS, arXiv 2611.03917
5회차 데일리 리포트의 중영문 타깃 쿼리(예: RISC-V, RuyiSDK 중영문, RuyiAI, Ruyi 커뮤니티 오픈소스, Ruyi RISC-V AI, openRuyi)는 전 주간 제로 히트를 기록했다. 중국어 측에서 유일하게 “Ruyi”가 포함된 결과는 여전히 10-25 정상회담 참가 보도로, 모니터링 기간을 벗어나 있으며 Ruyi 커뮤니티와 무관하다. RISC-V 일반 뉴스 측에는 항목이 있으나(OpenBSD 8.0의 RISC-V 지원 확대, Linux 7.4의 RISC-V 메모리 복사 선택 등) 본 주제와 직접적 관계가 없어 기존 기준에 따라 수록하지 않는다.
arXiv 측에는 모니터링 기간 내 RVV 벡터화와 직접 관련된 연구가 단 한 편(2611.03917, 11-02) 있으며, 이는 4장에 기록하였다. 외부 보도의 부재와 릴리스 관찰은 충돌하지 않는다 — 두 건의 월간 약속 불이행은 모두 “일어나지 않은 일”에 속하며, 애초에 뉴스가 나올 수 없기 때문이다.
7. 트렌드 관찰
배포 경로는 뚫렸으나, “패키징 완료”가 “역량 동기화”를 의미하지는 않는다
#1350의 의미는 버전 번호가 아니라 배포 경로가 처음으로 배포판 설정으로 작성되었다는 점에 있다. 이전에는 이 스택을 사용하려면 triton-riscv, tilelang-riscv, buddy-mlir를 직접 가져와 문서에 따라 BUDDY_MLIR_BINARY_DIR 같은 변수를 설정해야 했다. 이제 openRuyi의 패키징 저장소에 이 세 가지 컴포넌트가 있으므로, 사용자의 설치 문턱이 “컴파일러를 빌드할 줄 아는 것”에서 “패키지를 설치할 줄 아는 것”으로 낮아졌다.
그러나 세 spec이 고정한 코드는 모두 이번 주기 업스트림보다 이르다. triton은 09-13, tilelang은 10-28, buddy는 0.1.2에 멈춰 있는 반면, 세 저장소 모두 이번 주에도 새로운 움직임이 있었다. 가장 두드러지는 것은 tilelang으로 — 11-03에 방금 병합된 PR #5는 18일의 침묵 끝에 나온 첫 기능이지만, 당일 병합된 RPM에는 포함되지 않았다. 버전 문자열 3.8.0+git20261103은 오독을 강화하여 패키징 날짜를 코드 날짜로 착각하게 만든다. 이 격차를 해소하려면 정기적인 bump 절차를 수립하거나, 패키지 설명에 스냅샷 날짜를 명시해야 한다. 그렇지 않으면 기능이 병합될 때마다 패키지와 저장소의 격차는 더 벌어질 것이다.
플러그인화는 패치 비용을 버전 바인딩으로 바꾸고, 383개의 실패 케이스는 계약금이다
triton-riscv의 이점은 직접적이다. 이후 업스트림을 따라 버전을 올릴 때 패치를 재적용할 필요가 없고, 출시물은 wheel 하나만 남으며, 설치 면이 두 개의 배포 패키지에서 하나로 줄어든다. 대가는 마찬가지로 명확하며, 같은 날 드러났다. Triton 3.9의 프런트엔드는 백엔드에서 backend_name 필드를 읽으며, 이것이 없으면 383개의 FlagGems 케이스가 실패한다. 업스트림 확장점에 기생한다는 것은 업스트림 프런트엔드의 암묵적 계약이 반드시 충족해야 할 인터페이스가 된다는 뜻이며, 이러한 계약은 대개 문서화되어 있지 않아 테스트에서만 부딪혀 발견할 수 있다.
이번 개조의 성공 여부는 오늘 몇 줄을 삭제했는지가 아니라, 다음 업스트림 버전 업그레이드 시 재적용 비용, 그리고 FlagGems 같은 다운스트림 제품군에 여전히 버전을 전담 감시할 인력이 필요한지로 판단해야 한다. 이번 주말까지 업스트림을 따르는 경로는 명확해졌으나, 수반되는 검증 파이프라인은 아직 구축되지 않았다. #56 “Migrate additional FlagGems operators”는 여전히 열린 상태이며, “이 연산자들이 riscv64에서 실행 가능한가”라는 질문은 여전히 PR에서만 답할 수 있다.
백엔드가 이번 주의 주축이 되었고, 프런트엔드와 런타임은 정체
이번 주 검증 가능한 증분은 거의 전부 “컴파일과 하향”에 집중되었다. LLVM의 AME 백엔드는 레지스터 분류와 tile 스케줄링을 보완하고, buddy-mlir의 BOSCAME는 계약에서 FPGA까지 연결하며, VIR은 set_vl의 VLEN 시맨틱을 강화하고, tilelang은 streaming load의 하향 경로를 보완한다. 동시에 pytorch의 RISC-V 브랜치는 세 번 재적용되었으나 기능 증분은 제로이며, main 측 100여 건의 업스트림 동기화 중 RISC-V와 관련된 것은 한 건도 없다.
이 분포는 이 단계의 중점이 기존 연산자가 RISC-V에서 올바르게 하향되고 안정적으로 실행되도록 하는 것이지, 프런트엔드 커버리지를 확대하는 것이 아님을 보여준다. 다운스트림 사용자 입장에서 단기적으로 체감할 수 있는 변화는 새 프레임워크 지원 목록이 아니라 컴파일 산출물과 JDK 동작에서 나타날 것이다. 이와 함께하는 약점도 같은 지점에 있다. 성능 방향에서 유일하게 최적화를 명확한 목표로 삼은 triton PR #85는 여전히 10-18에 멈춰 있어 보름째 움직임이 없다.
릴리스 리듬: beta는 나왔으나 정식 버전과 월간 버전은 여전히 기간 밖
10월 말 두 건의 월간 약속이 동시에 불이행되었고, 11월 첫 주에 각각 절반의 후속 상황이 있었다. ruyi는 11-02에 0.54.0-beta를 출시하여 39일 공백 후 첫 도약이었으며, 0.54 정식 버전을 11월 11일 전후로 정했다. openRuyi의 2026.10 월간 공지는 11-07까지도 나타나지 않아 첫 한 달 전체 결판이 되었다.
두 노선의 코드 측은 모두 정체된 것이 아니다 — openRuyi 메인 저장소는 이번 주 156건의 커밋이 있었고, ruyi에는 ABI 탐지와 패키지 가져오기 수정이 반영되었다 — 따라서 병목은 버전 동결, 공지 작성, 이미지 빌드와 배포 단계에 있다. 이는 지난주 판단과 일치한다. 이 생태계의 “물건을 만들어내는 것”과 “물건을 내보내는 것”은 두 가지 역량이며, 전자는 여러 저장소에서 동시에 추진되지만 후자는 최근 두 달간 한 번도 제때 완료되지 않았다.
벤치마크 측의 장기 공백으로 “최적화가 효과적인가”를 답할 수 없다
VecIntrinBench은 거의 9개월째 업데이트가 멈췄고, IntrinTrans는 4개월, FBGEMM은 3개월째이며, 세 저장소 모두 이번 주 커밋이 0건이었습니다. 같은 주에 glibc와 newlib는 벡터 수학 함수 18개를 보강했고, LLVM은 P-ext와 Ztt v0.6 관련 6건을 병합했으며, buddy-mlir는 209개 파일에 걸친 행렬 백엔드를 전개했습니다. 역량은 확장되고 있지만 측정은 따라가지 못하고 있습니다.
그 결과는 추상적이지 않습니다. 최신 내장 함수 벤치마크가 없으면 “컴파일러가 실제로 지원하는 집합이 얼마나 늘었는가”에 답할 수 없고, 상시 성능 기준선이 없으면 “BOSCAME 경로가 기존 경로보다 얼마나 빠른가”에 답할 수 없습니다. 이번 주 성능 관련 모든 서술은 “뚜렷한 회귀는 관찰되지 않음” 수준에 머물렀으며, 이런 서술은 선정을 뒷받침할 수 없습니다.
데스크톱 패키지와 AI 스택이 병행하지만, 두 축은 같은 리듬이 아니다
openRuyi는 한 주에 156건의 커밋이 있었는데, 그중 74건은 firecracker의 Rust 의존성 폐쇄 집합이고 37건은 LibreOffice 의존성 체인입니다. 이는 컴포넌트별로 단계적으로 진행되는 데스크톱 오피스 스위트 패키징입니다. 같은 날(11-05) RuyiAI 스택은 triton-riscv를 제외하고 모두 조용했습니다. pytorch의 RISC-V 브랜치는 커밋 0건, tilelang-riscv는 커밋 0건, llvm-project의 riscv 브랜치는 커밋 0건이었습니다.
두 축은 서로 다른 사람, 서로 다른 저장소, 서로 다른 리듬으로 진행됩니다. 독자에게 패키징 측의 활발함을 AI 스택의 진전으로 보는 것은 오독입니다. 프로젝트 입장에서 이런 분업 자체는 문제가 없지만, 위클리 리포트 차원에서는 반드시 분리해 기록해야 합니다. 그렇지 않으면 “커밋 수”라는 지표가 계속 잘못된 번영감을 줄 것입니다.
부록: 자료와 검증 설명
자료 목록
- 2026-11-02호: 모니터링 기간 10-30 04:30 ~ 11-02 04:30(지난 3일, 토요일과 일요일 포함).
- 2026-11-03호: 모니터링 기간 11-02 04:30 ~ 11-03 04:30.
- 2026-11-04호: 모니터링 기간 11-03 04:30 ~ 11-04 04:30.
- 2026-11-05호: 모니터링 기간 11-04 04:30 ~ 11-05 04:30.
- 2026-11-06호: 모니터링 기간 11-05 04:30 ~ 11-06 04:30.
- 주기 경계 밖(11-06 낮부터 11-07 오후)의 동향은 조직 저장소, 릴리스 페이지, 커뮤니티 출처를 검증한 뒤 보충했으며, “이번 주 데일리 리포트 외 보충 항목”을 참조하십시오.
검증 방식과 기준
- 조직 검증(168시간 모니터링 기간, 11-07 오전까지 포함): RuyiAI-Stack, ruyisdk, buddy-compiler 세 조직의 커밋, PR, 릴리스는 Atom과 웹페이지 이중 채널로 확인했으며 API 한도에 의존하지 않았습니다. 업스트림 fork(PyTorch riscv, LLVM riscv, LLVM main)의 커밋은 RISC-V, RVV, 벡터 확장, XuanTie 관련 키워드로 필터링한 뒤 수집했습니다. 모니터링 기간 내 세 조직 합계 93건의 저장소 동향이 있었습니다.
- openRuyi 메인 저장소 통계: API 전체 페이지네이션 재검증을 거쳐 모니터링 기간 시작점을 베이징 시간 11-02 00:00(UTC 11-01 16:00), 종료점을 11-06 24:00으로 하여 156건의 커밋을 얻었습니다. 커미터 시간을 베이징 시간으로 환산한 자연일별 집계는 7, 94, 10, 41, 4입니다. 이 기준은 데일리 리포트 각각의 24시간 모니터링 기간과 다르므로 단일 호 데일리 리포트 수치와 완전히 대응하지는 않습니다.
- 주요 저장소 추가 검증: openRuyi의 SPECS 세트, ruyisdk의 ruyi, packages-index, wechat-articles, buddy-compiler의 buddy-mlir, RuyiAI-Stack의 pytorch(riscv 브랜치), triton-riscv, tilelang-riscv, llvm-project(riscv 브랜치).
- 커뮤니티 이중 출처: RuyiSDK 개발자 커뮤니티 포럼(최신 주제 목록, 이번 주 2개 글)과 openRuyi 배포판 뉴스 페이지(2026-10, 2026-11 릴리스 경로의 404 재검증 포함).
- 공식 홈페이지: www.ruyiai.org 홈페이지, 블로그 페이지, 문서 페이지 세 페이지의 스냅샷과 sha256 비교, 블로그 및 문서 인덱스 항목 첨부(블로그 2편, 문서 23장).
- 시간 기준: 저장소 커밋은 커미터 시간을 베이징 시간으로 환산하며, “매일”류 서술은 연속 자연일을 기준으로 하고, 주 주기는 2026-11-02부터 2026-11-06까지 5영업일입니다.
이번 주 데일리 리포트 외 보충 항목
- 11-06 15:39, buddy-mlir에 #1033「Add SPM optimization for BOSCAME backend」가 병합되었습니다(209개 파일, +46131/−2305). 이는 11-06자 데일리 리포트 모니터링 기간(11-05 04:30 ~ 11-06 04:30) 이후에 해당하며, 이번 주 단일 최대 규모로 제5장에 추가 반영했습니다.
- 11-06 12:05, 포럼에 #2903《【转载】Infineon 최초의 RISC-V 자동차 MCU, 곧 출시》가 신규 게시되었습니다. 데일리 리포트 기간 이후이며 업계 재게시물에 해당하여 제6장에 추가 반영했습니다.
- 11-06 12:08, triton-riscv가 야간 빌드
nightly/20261106-aa51ac2를 릴리스했습니다. 이는 #98 플러그인화 개편 이후 두 번째 야간 빌드(첫 번째는 11-05의 두 라운드)로, 제2장에 추가 반영했습니다. - 11-06 12:52, triton-riscv의 #101「Fix the release wheel and the failing checkout cleanup」이 병합되었습니다(2개 파일, +17/−2). 11-06자 데일리 리포트 작성 시점에는 아직 열린 상태였으나, 이번 호에서는 병합 기준으로 기록을 수정했습니다. 같은 날의 #102「Add AMD support」는 병합 시각이 11-07 01:30(주기 외)이므로 이번 주에 포함하지 않습니다.
- 11-03 커밋 수 기준 정정: 11-04자 데일리 리포트에서는 「모니터링 기간 내 20건의 커밋」으로 기록했으나, API 전체 페이지 분할 재검증 결과 해당 자연일 실제 커밋 수는 94건이며, 그중 15:22:02에 같은 초에 75건(firecracker 1건과 74건의 Rust crate 사양)이 푸시되었습니다. 데일리 리포트 당시에는 그중 12건만 대표로 나열했으나, 이번 호에서는 전체 기준으로 기록을 수정했습니다.
- 11-07 검증 시점 보충: ruyi 최신 Release는 여전히 11-02의 0.54.0-beta.20261102이며 정식 버전은 릴리스되지 않았습니다. openRuyi의
2026-10및2026-11릴리스 경로는 모두 404를 반환했습니다. 공식 홈페이지 세 페이지의 sha256은 11-02와 동일합니다.
출처 검증표
| 출처 | 확인 결과 |
|---|---|
| RuyiAI-Stack 조직 (전체 저장소) | triton-riscv: 커밋 9건, PR 4건 머지(#98, #99, #100, #101), 나이트리 4건(11-02 06:14의 20261101-ed0ccd1 포함); llvm-project: riscv 브랜치 2회 전체 리브랜치 재적용(11-01, 11-02) + CI 토큰 변경 1건 + 11-04 BOSCAME 커밋, main 최신은 11-02에 정지; tilelang-riscv: 11-03 PR #5 머지 후 커밋 0건; pytorch: riscv 브랜치 3회 재적용, 기능 증가 0건, main은 매 기간 20~55건 업스트림 동기화; ruyiai-daily 5기; FBGEMM, cpuinfo, VecIntrinBench, IntrinTrans, harness, torq-tile, pytorch-ci, dsh-osc 커밋 없음 |
| ruyisdk 조직 (전체 저장소) | ruyi: 11-02 0.54.0-beta.20261102 릴리스(#503, #507, #508, #509 추가 머지), 이후 커밋 0건, 신규 태그 0건, 정식 버전은 여전히 0.53.0; packages-index: 11-02 ABI 주석 3건, 이후 커밋 0건; wechat-articles: 080호 초안에서 전체 섹션 머지까지(11-04 4건, 11-05 8건); ruyi-imager, docs, support-matrix, ruyisdk-website, AME-operator, linux-xuantie-kernel은 모니터링 기간 내 커밋 없음 |
| openRuyi-Project 조직 | 메인 저장소 156건 커밋(11-02 7건, 11-03 94건, 11-04 10건, 11-05 41건, 11-06 4건); 머지 PR에는 #1350(RuyiAI 트리오), #1575(소스 주소 수정), #1559(firecracker), #1563(Node.js 26.13.0), #1534(simdjson 5.0.8), #1564(debuginfo), #1595와 #1596(LibreOffice 1/n, 2/n), #1591(CI 컨테이너화), #1584(expat 2.10.0), #1544(firefox 159) 포함; 2026.10 및 2026.11 월간 릴리스 경로 모두 404 |
| buddy-compiler 조직 | buddy-mlir: 정식 버전 0.1.3(10-31) + 나이트리 dev20261103, dev20261105; 모니터링 기간 내 커밋에는 #1017(확장형 VIR 슬라이스 카운트 축소), #1020(torch 버전 제약), #1028과 #1029(set_vl 의미론), #1018(serving 컨트롤러), #1030과 #1031(vir.shuffle 및 커널 하향), #1033(BOSCAME SPM, 11-06) 포함; #1011, #1013, #994는 여전히 정식 버전에 미포함 |
| RuyiSDK 개발자 커뮤니티 포럼 | 이번 주 게시글 2건: #2902 스크립트 설치 업그레이드 가이드(11-03), #2903 Infineon 자동차 MCU 전재(11-06); 080호 미게시, 포럼 격주 진행 상황은 여전히 079호(10-26)에 정지 |
| openRuyi 배포판 뉴스 페이지 | 릴리스 공지는 여전히 2026.09(09-30); 10월에는 특집 2편만(모두 10-19, 10-30 게시 표기); 2026-10 및 2026-11 릴리스 경로는 404 반환 |
| ruyi 패키지 관리자 / Releases | 0.54.0-beta.20261102가 최신 프리릴리스(11-02 10:37 UTC), 정식 버전은 0.53.0 유지(09-24); 메인 저장소는 이번 주 11-02에만 커밋 존재 |
| 공식 홈페이지(ruyiai.org) | 세 페이지 모두 주간 변화 없음: 홈 인덱스 3건, 블로그 2편, 문서 23장, sha256은 이전 기와 동일(11-07까지 확인) |
| Google News RSS(중영문 다수 그룹) | 5기 총 20여 개 그룹의 타깃 검색 전 기간 0건 적중; 동기간 RISC-V 일반 뉴스는 Ruyi 커뮤니티와 무관하여 미수록 |
| arXiv(RISC-V) | 주기 내 1편(2611.03917, 11-02, bf16/fp16 자동 벡터화); 11-03 이후 신규 논문 없음 |
전체 출처 목록
- [1] openRuyi PR #1350 Ruyiai 삼종 세트 — https://github.com/openRuyi-Project/openRuyi/pull/1350
- [2] openRuyi PR #1575 buddy-mlir 소스 주소 수정 — https://github.com/openRuyi-Project/openRuyi/pull/1575
- [3] buddy-mlir.spec — https://github.com/openRuyi-Project/openRuyi/blob/main/SPECS/buddy-mlir/buddy-mlir.spec
- [4] python-triton-ruyiai.spec — https://github.com/openRuyi-Project/openRuyi/blob/main/SPECS/python-triton-ruyiai/python-triton-ruyiai.spec
- [5] python-tilelang-ruyiai.spec — https://github.com/openRuyi-Project/openRuyi/blob/main/SPECS/python-tilelang-ruyiai/python-tilelang-ruyiai.spec
- [6] openRuyi 커밋 목록 — https://github.com/openRuyi-Project/openRuyi/commits/main
- [7] openRuyi PR #1595 LibreOffice 1/n — https://github.com/openRuyi-Project/openRuyi/pull/1595
- [8] openRuyi PR #1596 LibreOffice 2/n — https://github.com/openRuyi-Project/openRuyi/pull/1596
- [9] openRuyi PR #1600 LibreOffice 4/n — https://github.com/openRuyi-Project/openRuyi/pull/1600
- [10] openRuyi PR #1602 LibreOffice 6/n — https://github.com/openRuyi-Project/openRuyi/pull/1602
- [11] openRuyi 뉴스 페이지 — https://openruyi.cn/zh-Hans/news/
- [12] triton-riscv PR #98 플러그인화 및 3.9.0 — https://github.com/RuyiAI-Stack/triton-riscv/pull/98
- [13] triton-riscv PR #99 야간 및 주말 릴리스 — https://github.com/RuyiAI-Stack/triton-riscv/pull/99
- [14] triton-riscv PR #100 stable ABI wheel — https://github.com/RuyiAI-Stack/triton-riscv/pull/100
- [15] triton-riscv PR #101 릴리스 워크플로 수정 — https://github.com/RuyiAI-Stack/triton-riscv/pull/101
- [16] triton-riscv PR #92 3.8.0으로 리베이스 — https://github.com/RuyiAI-Stack/triton-riscv/pull/92
- [17] triton-riscv PR #85 softmax 및 matmul 최적화 — https://github.com/RuyiAI-Stack/triton-riscv/pull/85
- [18] triton-riscv PR #56 FlagGems 연산자 이전 — https://github.com/RuyiAI-Stack/triton-riscv/pull/56
- [19] triton-riscv Release 목록 — https://github.com/RuyiAI-Stack/triton-riscv/releases
- [20] triton-riscv 커밋 목록 — https://github.com/RuyiAI-Stack/triton-riscv/commits/main
- [21] tilelang-riscv PR #5 TileOps streaming load 및 양자화 — https://github.com/RuyiAI-Stack/tilelang-riscv/pull/5
- [22]
** tilelang-riscv 커밋 57c548c 병합 — https://github.com/RuyiAI-Stack/tilelang-riscv/commit/57c548cc8d6b3f581d6687427c44183faaded981
- [23] tilelang-riscv PR #4 RVV 마스크 및 최대 리덕션 — https://github.com/RuyiAI-Stack/tilelang-riscv/pull/4
- [24] llvm-project 커밋 f346011 BOSCAME 레지스터 및 스케줄링 — https://github.com/RuyiAI-Stack/llvm-project/commit/f346011a7ac59144fe085e0bc029cb24835f7a69
- [25] llvm-project PR #35 — https://github.com/RuyiAI-Stack/llvm-project/pull/35
- [26] llvm-project riscv 브랜치 커밋 목록 — https://github.com/RuyiAI-Stack/llvm-project/commits/riscv
- [27] pytorch riscv 브랜치 커밋 목록 — https://github.com/RuyiAI-Stack/pytorch/commits/riscv
- [28] pytorch 오픈 PR 목록 — https://github.com/RuyiAI-Stack/pytorch/pulls
- [29] VecIntrinBench — https://github.com/RuyiAI-Stack/VecIntrinBench
- [30] IntrinTrans — https://github.com/RuyiAI-Stack/IntrinTrans
- [31] FBGEMM — https://github.com/RuyiAI-Stack/FBGEMM
- [32] buddy-mlir PR #1033 BOSCAME SPM — https://github.com/buddy-compiler/buddy-mlir/pull/1033
- [33] buddy-mlir PR #1028 정확한 VLEN — https://github.com/buddy-compiler/buddy-mlir/pull/1028
- [34] buddy-mlir PR #1029 임의 VLEN — https://github.com/buddy-compiler/buddy-mlir/pull/1029
- [35] buddy-mlir PR #1030 llc 옵션에 따른 커널 다운그레이드 — https://github.com/buddy-compiler/buddy-mlir/pull/1030
- [36] buddy-mlir PR #1031 vir.shuffle 세그먼트 다운그레이드 — https://github.com/buddy-compiler/buddy-mlir/pull/1031
- [37] buddy-mlir PR #1018 serving 컨트롤러 — https://github.com/buddy-compiler/buddy-mlir/pull/1018
- [38] buddy-mlir PR #1026 pytorch 2.15 테스트 매트릭스 — https://github.com/buddy-compiler/buddy-mlir/pull/1026
- [39] buddy-mlir PR #1027 LLVM NVPTX/AMDGPU — https://github.com/buddy-compiler/buddy-mlir/pull/1027
- [40] BUDDY MLIR 0.1.3 — https://github.com/buddy-compiler/buddy-mlir/releases/tag/release%2Fv0.1.3
- [41] buddy-mlir 커밋 차집합 v0.1.2…v0.1.3 — https://github.com/buddy-compiler/buddy-mlir/compare/release%2Fv0.1.2...release%2Fv0.1.3
- [42] buddy-mlir 나이틀리 dev20261103 — https://github.com/buddy-compiler/buddy-mlir/releases/tag/nightly%2Fv0.1.4.dev20261103
-
[43] buddy-mlir 나이틀리 dev20261105 — <https://github.co
- [44] ruyi 릴리스 0.54.0-beta.20261102 — https://github.com/ruyisdk/ruyi/releases/tag/0.54.0-beta.20261102
- [45] ruyi PR #507 호스트 ABI 호환성 탐지 — https://github.com/ruyisdk/ruyi/pull/507
- [46] ruyi PR #496 ELF ABI 스캐너 — https://github.com/ruyisdk/ruyi/pull/496
- [47] ruyi PR #509 패키지 가져오기 오류 보고 — https://github.com/ruyisdk/ruyi/pull/509
- [48] ruyi 태그 목록 — https://github.com/ruyisdk/ruyi/tags
- [49] packages-index 커밋 목록 — https://github.com/ruyisdk/packages-index/commits/main
- [50] gnu-ruyisdk riscv64 ABI 주석 — https://github.com/ruyisdk/packages-index/blob/main/packages/toolchain/gnu-ruyisdk/_abi/gnu-ruyisdk-20260921.linux-riscv64.tar.xz.abi.toml
- [51] RuyiSDK 격주 진행 상황 080호 — https://github.com/ruyisdk/wechat-articles/blob/main/20261105-ruyisdk-biweekly-80.md
- [52] ruyisdk 위챗 아티클 저장소 커밋 목록 — https://github.com/ruyisdk/wechat-articles/commits/main
- [53] 포럼 ruyi 스크립트 설치 가이드 #2902 — https://ruyisdk.cn/t/topic/2902
- [54] 포럼 Infineon 자동차 MCU 전재 #2903 — https://ruyisdk.cn/t/topic/2903
- [55] RuyiSDK 커뮤니티 최신 토픽 — https://ruyisdk.cn/latest
- [56] RuyiAI 공식 홈페이지 — https://www.ruyiai.org/
- [57] RuyiAI 블로그 인덱스 — https://www.ruyiai.org/blog.html
- [58] RuyiAI 문서 인덱스 — https://www.ruyiai.org/docs.html
- [59] OpenJDK JEP 544 — https://openjdk.org/jeps/544
- [60] OpenJDK PR #32311 AOT Code Cache — https://github.com/openjdk/jdk/pull/32311
- [61] LLVM PR 235306 P 확장 패턴 합성 — https://github.com/llvm/llvm-project/pull/235306
- [62] LLVM PR 237815 XTHeadBb CTLZ — https://github.com/llvm/llvm-project/pull/237815
- [63] GCC Zba 커밋 cfbc8c48 — https://github.com/gcc-mirror/gcc/commit/cfbc8c48ae78c69401e8bc70d80eacbea8b47ec5
- [64] V8 CL 8714039 스칼라 이동 시 벡터 테일 유지 — https://chromium-review.googlesource.com/c/8714039
- [65] arXiv 2611.03917 bf16/fp16 자동 벡터화 — https://arxiv.org/abs/2611.03917
- [66] ruyiai-daily 데일리 인텔리전스 — https://github.com/RuyiAI-Stack/ruyiai-daily