← 목록
기타 2026-07-03 2KB 읽기 3분

양자 시뮬레이터 v4 — 32비트 팩킹: GHZ-2000 1.09초·메모리 21MB (v2 대비 147×/27.5×)

개요

팩킹 지렛대 실행: crownyc opcode 895~899(32비트 워드 팩킹 + 청크 플랫 배치 + 비트병렬 popcount g위상) + 한선씨 동반 v4. n=2000 메모리 570MB→20.8MB(27.5×), GHZ-2000 전체 1.72s→1.09s (v2 인터프리터 대비 147×). 검증 10종·프레임 EPR·비양자 사니티 회귀 전부 통과.

VM 변경 (crownyc.c — v3 백업 crownyc.c.bak-양자opcode에 이어 증분)

  • opcode 895~899: 양자팩게이트(모드 0H/1S/2CX/3X/4Z/5Y, 워드 RMW) · 양자팩행합G(워드 비트병렬 g위상: m1/m2/m3 마스크→P/N popcount, XOR 제자리) · 양자팩열스캔 · 양자팩비트(읽기/쓰기 겸용) · 양자팩행복사영(dst==src면 0채움)
  • 헬퍼 qpk_addr: 청크 플랫 주소(4095워드/청크) — 워드 인덱스→큐브 주소
  • 표현: 행 = ⌈n/32⌉워드(양수 32비트, 24트릿 정수 안전범위 내), 평면 = 청크 배열 ~62개 → 배열 수 8,003→~130개 (힙 압박 소멸)

실측 (n=2000)

항목v2v3 네이티브v4 팩킹v4/v2
메모리(RSS)572MB570MB20.8MB27.5×
초기화8,309ms140ms29ms286×
CX 게이트42.9ms0.48ms0.40ms107×
측정33ms0.31ms0.13ms254×
GHZ-2000 전체~160s1.72s1.09s147×
무작위 1000게이트~43s935ms451ms95×
- 게이트는 이제 행루프(4000행 청크 간접참조) 바운드 — 다음 지렛대는 행합처럼 게이트도 워드열 연산화(테이블로 전치) 또는 배치 게이트.
  • Stim 격차: ~2.5×10³× → ~10²×대 (측정·행합은 비트병렬 동급 원리, 게이트 행루프와 호출 오버헤드가 잔여).

회귀

v3 데모(같은 바이너리)·프레임 EPR·JSON 사니티 통과. opcode 890~894(v3)와 공존 — v1~v4 네 판 모두 정상.

파일·학습

  • libs/양자스테빌라이저4.한선 (opcode 895~899 동반 정본) — intent 양자_스테빌라이저_32비트팩킹_v4 DB 3곳 · 지식셀 #20530
  • 벤치: scratchpad 양자v4플래그십.한선

잔여 로드맵

① 게이트 워드열화/배치 opcode(잔여 10²× 중 상당분) ② Stim 역테이블로(결정론 측정 O(n)) ③ T2~T4 범용 티어(Clifford+T·MPS·상태벡터) ④ 큐트리트 Z₃ ⑤ game/quantum 서비스화(2000큐비트 초단위 — 실서비스 준비됨)