TL;DR
- 평가 경로 동작: 공개
robotwin2_idm으로 demo_clean 3 태스크 15/15 (job 181500)
- 학습 경로 동작: Robot-S video expert + 랜덤 ActionDiT, 40 step에서 loss 3.05 → 0.93 (job 181499)
- 비용: 풀 레시피(약 29.9K update)는 8 GPU 기준 약 6~16일 추정(1 GPU 외삽)
- text cache: 1,039,891개 중 902,384개 누락 → job 181534로 생성 중(약 0.9TB)
1 배경 / 목적
Long-WAM을 연구 베이스로 쓰기 전에 공개 가중치와 코드로 RoboTwin 2.0 평가와 학습이 실제로 도는지, 본 학습 비용이 얼마인지 확인.
기존 한계: 저자 감사(2026-10-01)에서 RoboTwin 평가는 Open3D 누락으로 모델 로딩 전에 막혔고 end-to-end 재실행 기록이 없음. 학습 초기화 가중치 2종과 Stage 1 데이터는 미공개.
2 작업 내용
env: .venv-robotwin = conda flexpi-eval(torch 2.8.0+cu129, sapien 3.0.0b1) 위 venv + lerobot 0.4.1 등 --no-deps
sim: ~/repos/Robotics/RoboTwin-longwam @ bf44be5 + robotwin_eval_policy.patch + ROBOTWIN_RT_DENOISER 스위치(optix)
assets: flex-pi/third_party/RoboTwin/assets_own 링크
worker: --container=nvcr.io/nvidia/isaac-lab:2.2.0, VK_ICD_FILENAMES
data: /home/nas_main/datasets/robot/flexpi/robotwin2.0_3d (번들 dataset_stats와 max abs diff 0.0)
scripts: scripts/robotwin2/eval_worker_b200.sh, train_smoke_b200.sh, precompute_text_b200.sh
릴리스 버그: 번들 config.yaml에 processor.train_transforms가 없어 LongWAMProcessor 생성이 TypeError. eval 워커에서 null을 넣은 사본으로 우회.
3 결과
| 항목 | 설정 | 결과 | 비고 |
| 평가 (181500) | robotwin2_idm, demo_clean, 5 ep | lift_pot 5/5, click_bell 5/5, adjust_bottle 5/5 | 1 GPU, 20분 31초 |
| 학습 (181499) | 1 GPU, batch 16, 40 step, instruction 고정 | loss 3.05 → 0.93 (action 2.71 → 0.74) | 평균 5.7 s/step, 순간 2~3 s/step |
| 풀 학습 추정 | 6,119,051 샘플 × 5 epoch, batch 1024 | 약 29.9K update, 6.3~15.8일 | 8 GPU 선형 확장 가정, 실측 아님 |
| text cache | 1,039,891 프롬프트 | 902,384개 누락 | job 181534, rank당 약 135 prompt/s |
미측정: VRAM(job 종료 후 조회 불가), 8 GPU 실제 throughput.
4 Takeaway
평가와 학습 경로 모두 이 클러스터에서 동작. 병목은 코드가 아니라 본 학습 비용(8 GPU 1~2주 규모).
5 Next
- 본 학습 규모 결정(풀 5 epoch vs 축소)
- dataloader 병목 확인 후 8 GPU throughput, VRAM 실측
- text cache job 완료 및 verify 확인
- 비교 기준선 평가 확대(demo_randomized, 더 어려운 태스크)