일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 하체운동
- 코테준비
- 티스토리챌린지
- github
- 건강
- 데드리프트
- 개인 운동
- 코드
- 바디프로필
- 바프준비
- 덤벨운동
- 개인 피티
- 오블완
- PT 운동
- 영화 비평
- Knowledge Tracing
- 코테 공부
- 논문 리뷰
- 개인 PT
- 운동
- 체스트프레스
- 암풀다운
- 다이어트
- pytorch
- 라섹 수술 후기
- 개발자
- 디버깅
- 코딩테스트
- 연구 시작
- 프로그래머스
- Today
- Total
치즈의 AI 녹이기
nn.DataParallel 사용하기 본문
오늘은 nn.DataParallel를 사용하여 데이터 병렬처리하는 코드를 가져왔습니다.
데이터 병렬처리란, 다수의 GPU에서 모델을 병렬로 실행하여 작업할 수 있도록 처리하는 것입니다.
먼저 torch.cuda.device_count()를 이용하여 갖고 있는 GPU 개수를 num_gpus에 저장합니다.
그 다음 원하는 모델을 불러 온 후, 갖고 있는 GPU 개수가 2개 이상이면 nn.DataParallel을 사용하여 모델을 wrapping할 수 있습니다. 이렇게만 해주면 알아서 모델 내에 들어오는 데이터를 각 GPU에 할당하여 처리하도록 해줍니다.
특정 모델의 학습 매개변수를 불러와 inference를 하고 싶은 경우,
다음과 같이 isinstance(model, nn.DataParallel)을 활용하여 불러올 수 있습니다.
참고 링크 : https://tutorials.pytorch.kr/beginner/blitz/data_parallel_tutorial.html
선택 사항: 데이터 병렬 처리 (Data Parallelism) — PyTorch Tutorials 1.9.0+cu102 documentation
Note Click here to download the full example code 선택 사항: 데이터 병렬 처리 (Data Parallelism) 글쓴이: Sung Kim and Jenny Kang 번역: ‘정아진 ’ 이 튜토리얼에서는 DataParallel (데이터 병렬)
tutorials.pytorch.kr
코드 출처는 앞선 글에서 언급하였습니다.
'인공지능 대학원생의 생활 > 동료 코드 따라잡기' 카테고리의 다른 글
kwargs 이용해서 효율적으로 인자 관리하기 (0) | 2022.09.19 |
---|---|
state_dict()로 best 모델 저장 및 불러오기 (0) | 2021.07.19 |
Huggingface Bert 모델 커스터마이징 하기 (0) | 2021.07.16 |
nn.Embedding sparse 파라미터 (0) | 2021.06.25 |
동료 코드 따라잡기_시작하며 (0) | 2021.06.25 |