Index
2026-10-09 — Experiment

Long-WAM RoboTwin 2.0 재현 가능성 스모크

LongLive / Long-WAM | B200 cluster | 로그: claude/261008/exp-robotwin_repro_smoke.md

TL;DR

15/15
Eval SR (smoke)
3.05→0.93
Loss (40 step)
5.7 s/step
1 GPU, bs16
6.3~15.8d
Full train (8 GPU 추정)

1 배경 / 목적

Long-WAM(NVlabs/LongLive/Long-WAM, arXiv 2610.10528)을 연구 베이스로 쓰기 전에, 공개 가중치/코드로 RoboTwin 2.0에서 (1) 공개 체크포인트 평가 (2) Robot-S 비디오 가중치 기반 학습 (3) 본 학습 비용을 확인.

기존 한계: 저자 감사(docs/VERIFICATION.md, 2026-10-01)에서 RoboTwin 평가는 Open3D 누락으로 모델 로딩 전에 막혔고 end-to-end 재실행 기록이 없음.

2 작업 내용

공개 범위

HF Efficient-Large-Model 13개 repo public/ungated. policy 번들 12GB, Robot-S/M 20GB. 미공개: 초기화 2종(longlive_ar_video_expert.pt, ActionDiT_from_longlive_ar_1024hdim.pt), Stage1 데이터, Robot-L, GR1 P768, Domino ckpt.

환경 / 시뮬레이터

env: .venv-robotwin = conda flexpi-eval(torch 2.8.0+cu129, sapien 3.0.0b1) 위 --system-site-packages venv + lerobot==0.4.1, diffusers==0.35.2 등 (--no-deps) + pip install -e . --no-deps (선언된 핀 torch 2.7.x의 clean install 아님) sim: ~/repos/Robotics/RoboTwin-longwam = RoboTwin 핀 커밋 bf44be5 + prepare_simulator.py robotwin2 패치 envs/_base_task.py에 ROBOTWIN_RT_DENOISER 스위치 1줄 추가 (B200에서 OIDN 불가 → optix) worker: --container=nvcr.io/nvidia/isaac-lab:2.2.0, VK_ICD_FILENAMES, 시스템 lib 우선 LD_LIBRARY_PATH data: data/robotwin2.0 → 공용 flexpi/robotwin2.0_3d 링크 (dataset_stats.json이 번들 stats와 max abs diff 0.0) scripts: scripts/robotwin2/{eval_worker_b200,train_smoke_b200,precompute_text_b200}.sh (#SBATCH 없음, sbm 제출)
릴리스 버그: 번들 config.yaml의 processor에 train_transforms 키가 없어 LongWAMProcessor.__init__() TypeError. 번들은 그대로 두고 eval 워커가 train_transforms: null 사본을 사용(eval은 val_transforms만 사용).

3 결과

Job내용결과시간
181500eval, robotwin2_idm, demo_clean, lift_pot/click_bell/adjust_bottle × 5 ep15/1520분 31초 (task당 5~8분)
181499train smoke, 1 GPU, bs16, 40 steploss 3.05→0.9311분 06초
181487eval 실패draccus 누락-
181491eval 실패train_transforms TypeError-
action loss
2.71→0.74
video loss
0.34→0.19
throughput
5.7 s/step, 2.8 samples/s
params
video 5.00B / ActionDiT 1.02B

step 1→39 구간 218초 = 평균 5.7 s/step. 인접 step 간격 2~3초 구간이 있어 dataloader 정체가 섞임(-c 12, num_workers 8). VRAM은 측정 못 함(job 종료 후 sjob 조회 불가). Robot-S model.pt(825 keys)는 변환 없이 strict 로드, ActionDiT는 랜덤 초기화.

본 학습 비용

가정속도총 소요 (29.9K update, 8 GPU)
스모크 실측 선형 확장2.8 samples/s/GPU약 15.8일
순간 간격 기준2.3 s/step (7 samples/s/GPU)약 6.3일

train 샘플 6,119,051/epoch × 5 epoch, global batch 1024. text cache: 필요 1,039,891 프롬프트 중 902,384개 누락(기존 137,507개, 약 0.9TB 추가). job 181534(2 GPU, overwrite=false)로 생성 중, rank당 약 135 prompt/s.

4 Takeaway

의미

RoboTwin 평가 경로가 클러스터에서 end-to-end로 동작(저자 감사에서 미완이던 부분). 학습 코드와 Robot-S 초기화 경로도 동작. 병목은 코드가 아니라 비용: 풀 레시피는 8 GPU로 1~2주 규모. 단, 15/15는 쉬운 3 task라 변별력이 없고, 8 GPU throughput은 외삽치.

5 Next Steps

미해결 한계

8 GPU 실제 throughput/VRAM 미측정. dataloader 병목 의심(평균 5.7 s/step vs 순간 2~3 s/step). 비교 기준선이 3 task뿐. Robot-S가 논문의 video 초기화와 동일한지 불명.

다음 실험

(1) text cache job 181534 완료 및 verify 확인 (2) -c, num_workers 상향 후 재측정 (3) 평가 부분집합 확대(demo_randomized, ep 수 증가) (4) 본 학습 규모 결정(풀 5 epoch vs 축소).