본문으로 건너뛰기

FDP PoC steady-state / overprovisioning 평가 계획

작성일: 2026-06-25

관련 문서:

한 줄 결론

기존 32GiB window-local R0 결과는 PoC harness 동작 검증으로는 충분하지만, FDP가 WAF를 낮춘다는 결론에는 부족하다. 다음 평가는 FDP mode 비교 전에 overprovisioning/free-block headroom이 너무 큰 조건인지 확인하고, WAF가 관측 가능한 steady-state 조건을 만든 뒤 3-mode 비교를 수행한다.

왜 다시 잡는가

기존 정식 batch는 다음 조건을 만족했다.

  • no_fdp, mixed, separated 모두 실행 성공
  • OCP media counter로 WAF 산출 가능
  • process/replay failure 0
  • README 기준 stress, warmup=2, measurement=8 충족

하지만 반복실험 재해석에서 세 mode의 replay operation 수가 동일했고, WAF ratio는 세 mode가 거의 같았다. 따라서 host/media write volume 차이는 FDP가 application write를 줄인 증거가 아니라, controller counter window, precondition 잔여 상태, free-block headroom 영향일 가능성이 크다.

핵심 가설은 다음과 같다.

SSD usable capacity 대비 free block / OP 여유가 너무 크면,
synthetic trace가 raw-block window 안에서 slot reuse를 많이 만들어도
device-level valid-copy GC가 충분히 발생하지 않아 WAF가 1 근처에 붙는다.
이 상태에서는 FDP placement 효과를 관측하기 어렵다.

따라서 다음 실험은 "FDP가 이기는가"보다 먼저 "싸움이 열릴 만큼 SSD가 찼는가"를 검증해야 한다.

현재 코드가 실제로 평가하는 것

PoC harness가 검증하는 정책은 원문 PoC의 per-prompt나 per-vLLM-worker placement가 아니다. 현재 구현은 synthetic workload class를 lifetime proxy로 보는 class-aware placement다.

ModeFDP의미
no_fdpoffplacement hint 없는 baseline
mixedonFDP는 켜지만 hot/cold/metadata workload가 같은 RUH pool을 공유
separatedonhot/small/random, cold/RAG/large, metadata-heavy를 다른 RUH group으로 분리

mode 간 write path는 거의 같다. 차이는 FDP directive dtype/dspec와 RUH mapping이다. 그러므로 mode별 logical operation 수는 같아야 하며, 효과 판단은 host write volume 단독이 아니라 WAF ratio와 tail latency를 중심으로 해야 한다.

평가 목표

  1. Overprovisioning gate: 현재 usable capacity / OP / free-block headroom이 너무 커서 WAF가 1 근처에 붙는지 확인한다.
  2. Steady-state gate: no_fdp만 먼저 실행해서 WAF가 1보다 충분히 커지는 최소 조건을 찾는다.
  3. 3-mode 비교: steady-state gate를 통과한 조건에서 no_fdp, mixed, separated를 반복 비교한다.
  4. tensormesh 진입 판단: storage-level WAF 신호가 재현될 때만 TTFT/serving 평가로 넘어간다.

Overprovisioning gate

확인 항목

항목확인 이유
SSD physical/namespace usable capacityusable capacity가 너무 크면 clean/free block이 많아 WAF가 낮게 보임
FDP reclaim unit nominal size실험 span이 RU geometry 대비 너무 작으면 RUH 효과가 흐려질 수 있음
RUH count와 실제 사용 RUHmixed/separated mapping이 device capability와 맞는지 확인
harness total raw window size현재 stress 기준 약 9.5GiB window
measurement logical store volumestress measurement 8회 기준 약 688GiB logical store
precondition spanR0가 harness window와 device free space를 얼마나 덮는지 확인
no_fdp WAFWAF가 1 근처면 FDP 비교 전에 pressure 부족으로 판단

판정

관측해석다음 행동
no_fdp WAF가 계속 1.00~1.02OP/free-block headroom이 너무 커서 GC pressure 부족 가능성 큼usable span 축소 또는 precondition span 확대
no_fdp WAF가 반복적으로 > 1.05WAF 관측 가능 조건으로 진입3-mode 비교 진행
WAF가 run마다 크게 흔들림counter capture/settle/precondition 조건 불안정settle 고정, 실행 순서 rotate, invalid run 분리
host write만 줄고 WAF ratio는 동일FDP 효과 아님. counter/window artifact 가능성WAF 중심으로 재해석

정확한 threshold는 장치/firmware에 의존한다. 다만 기존 결과처럼 세 mode가 모두 약 1.0159에 붙으면 "FDP 효과 없음"이 아니라 "관측 pressure 부족"을 먼저 의심한다.

Steady-state 실험 축

우선순위는 namespace 축소 또는 equivalent limited-capacity setup이다. namespace 재구성이 불가능하면 더 큰 full-span precondition으로 fallback한다.

단계usable span / precondition 조건목적
S0기존 32GiB window-local R0이미 완료. harness 동작 검증 baseline
S164GiB limited span가장 빠른 OP/headroom 민감도 확인
S2128GiB limited spanstress measurement 688GiB 대비 높은 overwrite pressure
S3256GiB limited span더 완만한 steady-state 후보
S4512GiB 또는 full-span R0namespace 축소가 어렵거나 최종 주장 강화 필요 시

각 단계는 no_fdp gate를 먼저 통과해야 한다. no_fdp WAF가 1 근처면 해당 조건에서 mixed/separated를 돌리지 않는다.

정식 실행 조건

공통 조건:

TRACE_SCALE=stress
WARMUP_ITERATIONS=2
MEASUREMENT_ITERATIONS=8
REPLAY_SETTLE_SECONDS=30
POST_MEASURE_SETTLE_SECONDS=360
DISABLE_MODE_WINDOW_SHIFT=1
FDP_RUH_COUNT=8
VENDOR_MEDIA_WRITE_COMMAND="nvme ocp smart-add-log /dev/nvme0n1 -o json"

steady-state gate:

R0/precondition for selected usable span
→ no_fdp
→ parse/report
→ WAF gate 판정

3-mode comparison:

for trial in repeated trials:
rotate mode order
for mode in no_fdp,mixed,separated:
R0/precondition for selected usable span
run mode
parse/report
aggregate repeated_summary.csv

권장 반복 설정:

REPEATS=3
ORDER_STRATEGY=rotate
RUN_R0_EACH_MODE=1

성공 기준

Gate pass

  • no_fdp WAF가 1보다 충분히 높고 반복 run에서 안정적이다.
  • host_write_bytes_delta > 0
  • media_write_bytes_delta > 0
  • waf_status=available
  • process failure 0
  • replay record failure 0
  • measurement op count가 기대값과 일치한다.

FDP 효과 주장 가능

  • separated WAF ratio가 no_fdpmixed보다 반복적으로 낮다.
  • 세 mode의 operation count와 failure count가 같다.
  • p99 write/read latency가 악화되지 않거나, 악화가 있으면 WAF gain과 trade-off로 명시 가능하다.
  • 결과가 실행 순서에 의존하지 않는다.

FDP 효과 미입증

  • 세 mode WAF ratio가 거의 같다.
  • trial별 우열 방향이 흔들린다.
  • host/media write volume만 다르고 WAF ratio가 분리되지 않는다.
  • no_fdp WAF 자체가 1 근처라면 "FDP 효과 없음"이 아니라 "OP/headroom이 너무 커서 관측 실패"로 먼저 해석한다.

산출물

산출물내용
overprovisioning_gate_report.mdcapacity/span/OP 가정, no_fdp WAF gate 결과
steady_state_3mode_report.mdgate 통과 조건에서 3-mode 반복 비교
repeated_summary.csvmode별 per-run + aggregate 결과
run_config.resolved.yaml각 run의 device/window/RUH 설정 원본
summary.json / measurement_*.jsonWAF/counter 원본

tensormesh 진입 조건

storage-level PoC에서 아래를 만족할 때만 tensormesh로 넘어간다.

  • steady-state gate 통과
  • separated WAF ratio 개선이 반복 재현
  • p99 latency 악화가 없거나 수용 가능한 trade-off
  • failure 0

tensormesh 단계에서는 storage WAF 외에 TTFT, request latency, throughput, LMCache hit ratio를 추가한다. 단, storage-level에서 WAF 신호가 없으면 tensormesh는 원인 분석보다 변수가 많아지므로 후순위로 둔다.

기본 입장

다음 결과 보고에서 문장을 분리한다.

  • 말할 수 있음: "PoC harness는 FDP SSD에서 실행 가능하고, OCP counter로 WAF를 산출할 수 있다."
  • 아직 말하면 안 됨: "FDP separated가 WAF를 낮춘다."
  • 다음에 검증할 것: "OP/free-block headroom을 줄인 steady-state 조건에서 WAF ratio가 mode별로 분리되는가."