뭔가.... python과 pytorch로 코딩을 하면 코딩을 했다는 느낌보다 레고를 조립하는 느낌이 듭니다.
역시 C/C++로 메모리 포인터 세어가며 코드를 짜야 오늘 코드 좀 짰구나 한다는...... 꼰대가 되어버린 것 같습니다 (...)
제가 모델을 직접적으로 짜는 작업을 잘 하지는 않는데, 처음으로 바닥부터 모델을 작성해보는군요. epoch도 learning rate도 미지수 입니다. 일단 잘 알려진 값으로 때려맞추는 중. 그래서 학습이 언제 끝날지는 신만이 알고 있습니다.
꼴에 transformer 모델이라고, attention의 head수를 조금만 늘리거나 모델 크기를 키우면 out of memory 에러가 뜹니다. 저도 VRAM 80GB 짜리 GPU 쓰고 싶네요. 참고하는 논문들 보면 다들 DGX쓰던데.....
P.S 아무래도 작성한 pytorch DDP코드에 문제가 있는 것 같습니다. DP구현보다 메모리를 엄청 많이 드시더라는.... 백그라운드에서 돌아가는 MPI지식이 있어도 해매는군요.