94.15%(clean 93.88% / random 94.42%), 논문 94.6% 대비 -0.45pp — 재현 성공max_tasks_per_gpu=2→1로 바꾸자 5h05m 동안 hang 0건(COMPLETED). 1차(job 96576)에서 GPU 0/2/5/7에 2 worker씩 물려 4h50m 무진전이던 것과 대조 — GPU당 2 worker가 wedge 트리거라는 가설과 일치(단일 시행, 확정 아님)open_microwave 53.5% — 나머지 49개 task는 79~100% 범위로 고름이전 카드(260827-robotwin_sweep_results.html)에서 job 96576 첫 full sweep이 100 units 중 88개만 완료(평균 95.20%)한 채 12 h wall-time에 걸려 TIMEOUT됐다. 원인은 성능 저하가 아니라 GPU 단위 hang — max_tasks_per_gpu=2로 co-tenant worker가 함께 물려 4h50m 동안 완료 0건이 발생했고, GPU 0/2/5/7에 정확히 2개씩 wedge된 패턴이 관찰됐다.
이번 작업의 목적은 두 가지: ① 남은 12 units를 재개해 100/100 최종 논문 재현 수치를 확정하는 것, ② max_tasks_per_gpu=1로 축소했을 때 hang이 재발하는지 확인해 hang 원인 가설을 검증하는 것.
job 97455 (flexpi_rt_resume)로 96576과 같은 출력 디렉토리에 RESUME_DIR 지정, 완료된 88개는 resume scan이 자동 스킵하고 남은 12 units만 재실행. hang 재발 여부를 보기 위해 worker 배치를 GPU당 1개로 축소했다.
집계 함정: manager가 쓰는 summary.csv는 재개 시 TASKS로 범위를 좁히면 그 부분집합(8 task)만 담고 __overall__ 행도 부분집합 평균이 된다. 최종 100/100 전체 수치는 <out>/<task>/_result_{clean,random}.txt 100개 파일을 직접 파싱해 집계해야 했다 (tmp/final_results_fulljoint.{md,json}).
| Split | n | 평균 SR |
|---|---|---|
| clean | 50 | 93.88% |
| random | 50 | 94.42% |
| 전체 | 100 | 94.15% |
| 논문 (참조) | — | 94.60% |
재개분 12 units 평균은 87.6%로 1차 88 units(95.20%)보다 낮다 — 남아 있던 task들이 원래 더 어려운 축(open_microwave, put_object_cabinet, place_bread_skillet)이었기 때문에 전체 평균이 95.20% → 94.15%로 내려갔다.
| task | mean | clean | random |
|---|---|---|---|
| open_microwave | 53.5% | 50% | 57% |
| stack_bowls_three | 79.0% | 77% | 81% |
| turn_switch | 81.5% | 80% | 83% |
| blocks_ranking_size | 82.5% | 81% | 84% |
| hanging_mug | 83.0% | 85% | 81% |
| place_can_basket | 83.5% | 78% | 89% |
| place_object_basket | 87.5% | 86% | 89% |
| click_alarmclock | 88.0% | 84% | 92% |
| put_object_cabinet | 90.0% | 90% | 90% |
| rotate_qrcode | 90.0% | 91% | 89% |
_eval_step_limit.yml의 step limit이 800(upstream 1500의 절반)이라 시간 초과로 실패했을 가능성 있으나 미확인.max_tasks_per_gpu=2 wedge 패턴(GPU 0/2/5/7, 4h50m 무진전)과 대조되며 가설과 일치. 단, 대조군 없는 단일 시행이라 완전히 확정된 것은 아니다.Flex-π 공개 ckpt(step_048060)의 RoboTwin 2.0 50-task 논문 수치(94.6%)를 100/100 units 전체에서 94.15%(−0.45pp)로 확정 재현했다. 이 클러스터 환경(OIDN 미지원 → optix 우회, 축소된 step limit)에서도 논문과 거의 동일한 성능이 나온다는 것을 확인했으므로, 앞으로의 실험(action-only 대조, 후속 학습 재현)에 대한 baseline으로 이 수치를 신뢰하고 사용할 수 있다.
동시에 파이프라인 운영 관점에서도 결론이 났다 — 실질 병목은 모델 성능이 아니라 인프라(worker hang)였고, max_tasks_per_gpu=1 고정이 실용적 해결책임을 재현 데이터로 뒷받침했다.
① open_microwave 53.5% 원인 미확인 — step limit 800 소진 의심이나 rollout 로그로 직접 확인 필요. ② hang 원인은 max_tasks_per_gpu=2 가설과 일치하는 정황(대조: 96576 hang vs 97455 무hang)뿐, 통제된 A/B 실험은 아직 없음. ③ optix ↔ OIDN 디노이저 출력 분포 차이는 여전히 정량 미측정.
job 99203 (flexpi_rt_action): REGIME=action, 같은 ckpt·같은 50 task × {clean,random} × 100 ep, NUM_GPUS=8 MAX_TASKS_PER_GPU=1, own 8 GPU, 12h cap. full-joint(94.15%, 398.6 ms/call) 대비 성공률·추론 지연(100~150 ms 예상) 대조가 목표 — Flex-π 핵심 주장(한 체크포인트, regime 선택만으로 성능/지연 트레이드오프)을 우리 환경에서 검증.