현재 minitest_train_replay_v3_adam 을 통해 StepInc + BiasCorr + AdamStep 포함해서 캡처 / 리플레이가 닫히고, 정상 로그 확인
핵심 정리 ( 프레임워크용 Adam 최종 형태)
Adam.step_() 내부 순서
- step_inc_(step_i32)
- bias_corr_out(step, bc1_inv, bc2_inv, beta1, beta2)
- 각 param 에 대해
- adam_step_out
해당 파이프라인을 돌리고 있는 상황
다음 Steplnc = Steplnc dtype 정책 문제 해결
다른 자료형을 통한 에러 발생, 해당 사항을 우회하고 있는 상황
op 별로 dtype 을 다르게 가는 방식 고려
다음 확장
Adam 멀티 파라미터 성능 / 확장
param 마다 AdamStep 커널 호출 - 실제 모델 시 런치 오버헤드 증가
- Adam step 을 param 리스트로 묶는 방향
- 또는 param grouping
accumulate=True 캡처 가능하게 만들기
현재 autograd_backward 강제, accumulate=True 를 capture 중 금지로 막아둔 상태
- leafe grad 를 in-place accumulate 하지 말고
- pool 에서 grad_accum 버퍼를 하나 더 들고
- leaf_write 를 add 형태로 바꾼다.
이렇게 될 시
- gradient accumulateion
- multi-loss
- microbatch 로 확장 가능