# input
2020-04-17 19:07:15:pid_23022:latency_estimator:<INFO> torch.Size([32, 3, 32, 32])
# nn.DataParrallel
2020-04-17 19:07:15:pid_23022:latency_estimator:<INFO> 3338.0429999999938
torch.Size([16, 3, 32, 32])
torch.Size([16, 3, 32, 32])
# normal
2020-04-17 19:08:07:pid_23116:latency_estimator:<INFO> 320488.2240000013
torch.Size([32, 3, 32, 32])
autograd: self_cpu_time_total
<aside> 💡 batch size를 쪼개서 계산하니까 당연히 DataParrallel이 빠름 하지만 시간이 너무 많이 단축된거 아닌가...? 그리고 우리는 batch_szie 몇으로 맞춰야하지?
</aside>
Optional: Data Parallelism - PyTorch Tutorials 1.4.0 documentation
# 우리 걸로 시험
2020-04-17 17:48:36:pid_17199:latency_estimator:<INFO> torch.Size([64, 3, 32, 32])
torch.Size([32, 3, 32, 32])
torch.Size([32, 3, 32, 32])
batch size를 쪼개버림
25% ~ 75% 만 취했다.
<aside> 💡 batch size에 따라 latency가 영향을 미칠 것이라 가정하고 실험했다. 16, 128로 설정한 경우 큰 차이가 없었고, 1인경우만 특별히 작았다. 걍 멘붕
</aside>