Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
0
Help us understand the problem. What is going on with this article?
@hina2211

Chainer学習時のCPUネックを減らすメモ

More than 1 year has passed since last update.

Chainer学習時のCPUネックを減らしたい

環境

 Windows10、i7-7700K、GeForce1080Ti

背景

最近少しずつスキルも上がって来たので大量の学習データを扱うことが増えてきました
学習に3日かかるとか、その間何もできない!
もっと早くできないのか?

と言うことで、何がネックなのかを調べたところ、、、
CPUネックでGPUがあまり使われていない!

原因を探してみる

学習自体はGPUを使ってくれているので、きっとそれ以前の学習データのロードまでのどこかではないか?

train_iter = chainer.iterators.SerialIterator(

Serial?
ということは、Multiもあるのか?

はい、ありました
https://docs.chainer.org/en/stable/reference/iterators.html

なんか4つもあります
chainer.iterators.SerialIterator     :シングルスレッドでの逐次処理
chainer.iterators.MultiprocessIterator  :マルチプロセス
chainer.iterators.MultithreadIterator  :マルチスレッド
chainer.iterators.DaliIterator      :Daliパイプライン(何それ?)

やったこと

SerialIterator → MultiprocessIterator

使用率を見た感じだと4コア8スレッドのCPUの場合、こんな感じなのかな
 MultiprocessIterator 4コア8スレッドを使う
 MultithreadIterator  1コア2スレッドを使う

補足

0
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
0
Help us understand the problem. What is going on with this article?