본문으로 건너뛰기

Stage 3 build + FDP sanity status

생성 시점: 2026-06-12

결과 요약

항목상태비고
PoC checkoutPASS/home/ny/work/LMCache-fdp-poc-src, branch fdp-waf-agentic-replay-poc
Python editable installPARTIAL PASSNO_CUDA_EXT=1 필요. full deps install은 disk full로 실패
CUDA extension buildSKIPPEDsystem CUDA 11.5 vs PyTorch wheel CUDA 12.8 mismatch 회피
Rust raw_block extensionPASSlmcache_rust_raw_block_io built via maturin develop --release
Rust 1.75 compatibilityPATCHEDusize::is_multiple_of()% align == 0로 변경
FDP direct sanityPASSsudo shell에서 /dev/ng0n1 write/read 성공
sudo NVMe stats capturePASSbefore/after stats captured

Raw Logs

  • raw/build_log.txt
  • /home/ny/fdp_build_test/sanity_write_chunk.log

실패/블로커

  1. pip install -e . without NO_CUDA_EXT=1 fails: detected CUDA version 11.5 mismatches PyTorch 12.8.
  2. pip install -e . with full deps later fails because root filesystem has only about 9.6G free.
  3. /dev/ng0n1 is crw------- root:root; direct raw-command sanity requires root or adjusted permissions.

Sanity Evidence

/home/ny/fdp_build_test/sanity_write_chunk.log:

write_uring offset=67108864 len=4096 dtype=2 dspec=0
readback_prefix=b'LMCache FDP sanity block\nLMCache'
readback_match=True
SANITY_STATUS=direct_write_attempted

sanity_stats_delta.diff is empty; the 4 KiB smoke is below the visible FDP statistics granularity. The direct write/read path itself succeeded through RawBlockDevice.write_uring(..., dtype=2, dspec=0).

재실행 명령

sudo 가능한 smrc shell에서:

cd /home/ny/work/LMCache-fdp-poc-src
source .venv/bin/activate

sudo nvme fdp stats /dev/nvme0 --endgrp-id=1 > /home/ny/fdp_build_test/sanity_before_fdp_stats.txt
sudo nvme smart-log /dev/nvme0n1 > /home/ny/fdp_build_test/sanity_before_smart.txt

sudo env \
NVME_IO_DEV=/dev/ng0n1 \
FDP_RUHS=0,1,2,3 \
OUT=/home/ny/fdp_build_test \
/home/ny/work/LMCache-fdp-poc-src/.venv/bin/python \
/home/ny/work/fdp/03_build_test/sanity_write_chunk.py \
> /home/ny/fdp_build_test/sanity_write_chunk.log 2>&1

sudo nvme fdp stats /dev/nvme0 --endgrp-id=1 > /home/ny/fdp_build_test/sanity_after_fdp_stats.txt
sudo nvme smart-log /dev/nvme0n1 > /home/ny/fdp_build_test/sanity_after_smart.txt
diff -u /home/ny/fdp_build_test/sanity_before_fdp_stats.txt \
/home/ny/fdp_build_test/sanity_after_fdp_stats.txt \
> /home/ny/fdp_build_test/sanity_stats_delta.diff || true

이 명령이 통과하면 sanity_write_chunk.logsanity_stats_delta.diff를 기준으로 stage 3 완료 판정한다.