일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 백준 18428
- 자소서 빨리
- mac hive 3
- 카카오 2020 코딩테스트
- 이더리움 #ethereum
- Failed to connect to localhost:10000
- mac hadoop
- 자소서 시간 줄이기
- Resources are low on NN
- is not allowed to impersonate hive (state=08S01
- 카카오 2020 코테
- hive beeline 설정
- code=0)
- mac hive
- hive beeline 실행
- mac hadoop 설치
- mac hadoop 설정
- Could not open client transport with JDBC Uri: jdbc:hive2://localhost:10000
- mac hadoop 3
- 기업 조사 빨리 하는 법
- 카카오 자물쇠와 열쇠
- mac hive 설정
- 자소서 빨리 쓰는 법
- hive beeline 에러
- Safe mode is ON
- hadoop safe mode leave
- 자소서 너무 오래 걸림
- hadoop safe mode
- hive beeline
- 이더리움
- Today
- Total
A seeker after truth
pytorch "Expected all tensors to be on the same device, but found at least two devices, cuda:0 and cpu!" 에러 해결 본문
pytorch "Expected all tensors to be on the same device, but found at least two devices, cuda:0 and cpu!" 에러 해결
dr.meteor 2020. 12. 10. 23:40별 에러도 아닌데 해결한다고 많은 시간이 들어갔다.
때문에 pytorch 를 돌릴 때 gpu, cpu 각각에 작업을 분할해서(?) 한다는 사실이라던지
cpu, gpu 위에 올라가는 텐서 정의가 따로 있다던지
코어 라이브러리 코드, 공식 문서, 여러 에러 디버깅 질답사이트 등을 탐독했지만
정말 간단하게 해결됐다. 이것도 그냥 해본건데, 우연히 잘 되더라.
원래
model = Model()
...
model = model.cuda()
criterion = criterion.cuda()
와 같이 코드가 되어있었는데, 이를
model = Model().cuda()
이거 한줄로 바꿨더니, 걍 바로 해결됐다. ㅠㅠㅠㅠ 착안한 코드가 있는데, 위쪽에 다른 코드는 이렇게 되어있길래 혹시나 해서 이렇게 해봤더니 잘 되더라...
다만, 도움이 됐던 자료 몇 개를 소개하자면
1. 아까 말했던 것처럼 cpu, gpu 둘다 사용한다는 것과 텐서 정의도 따로 있다는 것
subinium.github.io/pytorch-Tensor-Variable/
2.
subinium.github.io/pytorch-dataloader/
여기서 num_workers, pin_memory 밑에 달려있는 링크도 좋고, 이 파라미터가 무슨 역할 하는지 알수있는 부분도 유용했다.
3. pytorch.org/docs/master/optim.html
이 에러 관련한 다른 문답글에서 이 문서의 "Constructing it" 파트를 보라고 했는데, 이 부분과 step, zero_Grad 가 정확히 어떤 것을 반환하고 어떤 역할을 하는지를 보고서야 마침내 코드에서 어떤 부분이 cpu 텐서로 넘어가서 문제가 생길만한 부분이었을지 예상을 했다.
optimizer.Adagrad 에서 에러가 난건 확실한데, 변수 중에서도 "model" 이라고 정의된 부분이 문제가 생길 부분이라는 것을 눈치챈 것.
'Data' 카테고리의 다른 글
데알못이 데이터 분석 프로젝트를 하기 위해 리서치한 내용 총집합 (0) | 2020.03.21 |
---|