mixed precision training
2018.11.06 06:56
train (math) 는 FP16 으로 하고 storage 는 FP32 로 해서 BVLC Caffe 에서도 잘 동작하는듯.
정확도는 아직 더 test 해봐야한다. scale factor 는 100~1000 이 적당한듯.
NVCaffe 에서 trainval.prototxt 에 아래와 같이 추가
default_forward_type: FLOAT16
default_backward_type: FLOAT16
default_forward_math: FLOAT
default_backward_math: FLOAT
global_grad_scale:100
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
1671 | 개업 | WHRIA | 2009.11.03 | 9403 |
1670 | 내가 거래하는 은행에서 firefox 를 지원하다. | WHRIA | 2011.03.07 | 9396 |
1669 | 내년 피부과 개원 예정 | WHRIA | 2009.06.15 | 9317 |
1668 | MBC 최강연승 퀴즈쇼 [2] | WHRIA | 2012.08.13 | 9300 |
1667 | 파일의 magic number | WHRIA | 2012.12.26 | 9272 |
1666 | 으 | NEWTYPE | 2003.11.18 | 9263 |
1665 | 홈페이지 이전 | WHRIA | 2010.12.12 | 9251 |
1664 | 승석아.. 안녕... | 최평균 | 2000.05.31 | 9228 |
1663 | GomPhoto 만들었음 [2] | WHRIA | 2012.12.31 | 9207 |
1662 | clonezilla | WHRIA | 2011.05.10 | 9205 |
1661 | 우연히..... | 이임숙 | 2000.05.30 | 9195 |
1660 | 계획 | WHRIA | 2009.10.05 | 9146 |
1659 | bjam | WHRIA | 2008.02.29 | 9107 |
1658 | Release MedicalPhoto 1.0.4 | WHRIA | 2008.05.14 | 9103 |
1657 | 기장, 간편장부 | WHRIA | 2008.08.30 | 9029 |
MIXED 셋팅
default_forward_type: FLOAT16
default_backward_type: FLOAT16
default_forward_math: FLOAT
default_backward_math: FLOAT
FP32
default_forward_type: FLOAT
default_backward_type: FLOAT
default_forward_math: FLOAT
default_backward_math: FLOAT
FP16
default_forward_type: FLOAT16
default_backward_type: FLOAT16
default_forward_math: FLOAT16
default_backward_math: FLOAT16
CUDA 8.0 으로 하면 속도 향상이 없다.
CUDA10.0 기준, cudnn 7.4.1, ResNeXt-50 , 100 iter
FP32 - 82 sec, 4779
FP16 - 69 sec+ test 오래걸림 , 2623
Mixed - store 16bit - 69 sec, 2623
Mixed - store 32bit - 69 sec, 2769
solver_data_type: FLOAT16 가 16bit 인 경우 memory 를 약간 더 잡아먹는다.
Mixed train 하는 경우
pascal 에서 속도가 30% 향상있고 메모리는 50% 감소한다.