Jetson TX1의 GPU 성능 조사 2 (MNIST에서 숫자 인식)
Chainer의 샘플에 준비되어 있는 MNIST의 숫자 인식을 실시했습니다.
코드는 여기 (GitHub에서 공개되는 Chainer 샘플 코드)
htps : // 기주 b. 이 m/pf네 t/짱네 py
조사 내용
계산 시간을 아래의 테스트 1~4에 대해 프로그램의 처리 시간을 측정한다.
※Jetson TX1의 경우의 처리 시간입니다
테스트 1 CPU와 GPU 비교
테스트 2 배치 크기 (batchsize) 변경
테스트 3 중간층의 노드 수(units)를 변화
테스트 4 batchsize와 units의 조합 변경
조사 방법
계산 시간의 측정 방법
파이썬 코드를 호출 할 때 명령 줄에서 다음을 실행합니다.
$ time python train_mnist.py
그러면 이런 식으로 결과가 출력됩니다.
$ time python test.py
real 1m2.345s
user 1m1.111s
sys 0m0.003s
이번은 「프로그램 자체의 처리 시간」에 주목하고 싶기 때문에 user로 나타낸 시간을 평가 지표로 합니다.
(참고) time 명령으로 프로그램 실행 시간 알아보기 : ぃ tp // 이 m/토 sh/있어 ms/659에 5934에 52b38183200
측정 조건 변경 방법
train_mnist.py의 31~43행에서 본 프로그램을 호출할 때의 옵션(추가 인수)에 대한 설명이 기재되어 있다.
디폴트의 값을 사용할 때는 옵션을 지정하지 않아도 된다.
$ time python train_mnist.py
$ time python test.py
real 1m2.345s
user 1m1.111s
sys 0m0.003s
train_mnist.py
# 省略
# ↓31~43行目
parser.add_argument('--batchsize', '-b', type=int, default=100,
help='Number of images in each mini-batch')
parser.add_argument('--epoch', '-e', type=int, default=20,
help='Number of sweeps over the dataset to train')
parser.add_argument('--gpu', '-g', type=int, default=-1,
help='GPU ID (negative value indicates CPU)')
parser.add_argument('--out', '-o', default='result',
help='Directory to output the result')
parser.add_argument('--resume', '-r', default='',
help='Resume the training from snapshot')
parser.add_argument('--unit', '-u', type=int, default=1000,
help='Number of units')
args = parser.parse_args()
# 省略
CPU와 GPU 전환
배치 크기 변경
중간 계층의 노드 수 변경
조사 결과
GPU를 사용하면 NMINST의 학습은 매우 빨라진다.
배치 크기를 늘리면 계산 시간이 빨라지지만 어느 정도 커지면 그 이후에는 극적인 변화가 없습니다.
(아마도 중간 계층의 노드 수에 가까워짐에 따라 데이트 경감률이 작아지고있다)
중간층의 노드를 2배로 늘려도 계산 시간은 10%밖에 증가하지 않는다.
※Jetson TX1의 경우의 처리 시간입니다
테스트 1 CPU와 GPU 비교
CPU에 GPU를 사용하면 74 배 빠른, 굉장!!
(기본 조건으로 측정)
테스트 2 배치 크기 (batchsize) 변경
테스트 3 중간층의 노드 수(units)를 변화
테스트 4 batchsize와 units의 조합 변경
(모두 GPU 사용)
(덤) Windows PC에서 MNIST
결론
꽤 재미있는 결과가 된 것 같습니다.
중간층의 수가 20배(units=100과 2000으로 비교)의 큰 네트워크에서도 계산 시간은 30% 정도밖에 변하지 않는 것도 충격이었습니다.
Reference
이 문제에 관하여(Jetson TX1의 GPU 성능 조사 2 (MNIST에서 숫자 인식)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/minoru-github/items/057c9763415aa998ad03
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Jetson TX1의 GPU 성능 조사 2 (MNIST에서 숫자 인식)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/minoru-github/items/057c9763415aa998ad03텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)