Help us understand the problem. What is going on with this article?

【回答編】Keras(TensorFlowバックエンド)でのマルチコア・マルチプロセッサ並列化、GPU並列化はどんな実装になっているのだろう?

どうも ryo_grid です。
回答編としているものの、クエスチョンに関する記事は自分のブログに書いていたので、ちょっとアレですが、その点はご容赦下さい(Qiitaで共有しても意味のない内容は自分のブログに書くようにしている、という事情です)。
 
というわけで、自身のブログで恐縮ですが、以下の記事への一部回答ともなっている記事を、
【Need Help!】Keras(TensorFlowバックエンド)でのマルチコア・マルチプロセッサ並列化、GPU並列化はどんな実装になっているのだろう? - Ryoの開発日記 Neo!

先日Qiitaに書きました。
Kerasのfit_generatorのプロセス並列化の実装を読んでみた(おまけ: GPUはじめ並列化実装のもろもろの話) - Qiita
 
加えて、上のQiita記事では継続調査となっていた、マルチコア(マルチプロセッサでも同様だと思いますが)での並列化については、自分でTFのコードを読むまでもなく以下の記事が回答で良さそうです(上のブログ記事を書いた時点で、インターネッツを漁った時にはヒットしなかったんだよなあ・・・)。
マルチスレッドに関するTensorFlowの内部構造について - Qiita
 
上のスレッド並列実装に関する記事は2016年のものなので、TF1.x時代だと思われますが、該当するコードは現在のTFのgithubリポジトリのmaster(のHEAD)にもありました。
tf.compat.v1.xxxx という形で1.x系のコードが動かせるように残してあるコードも2.x系にはあって、そこに残っているコード、という可能性もゼロではありませんが(2.x系に取り込まれたKerasのfitやpredictが該当コードの呼び出しをしているかまではコードを追っていません)、当時のバージョンでもfit_generator(上にリンクした私が書いたQiita記事等ご参照)などはあったはずで、それと同様のマスタ・ワーカ型というのも検討されたでしょうし、現時点での最新あたりのTFで利用できる tf.distribute.Strategy モジュールに含まれるStrategy が採用している設計での並列化というのも検討されたであろうと思います。で、その上で、スレッド並列で動作する行列演算ライブラリを叩くという実装が選択されたはずで、それが、4年経ったとはいえ、変わっているとは考えにくいと個人的には思います(細かい実装は変わっているかもしれないですが、大枠の設計は変わっていないはず)。
 
以上!

ryo_grid
svengali,kikker,はてブおせっかい,TOFU-G,ひらめいったー,キャチボ,顔面偏差値スカウター, UZOMUZO等の作者.機械学習でシステムトレードしたりも.元の専門はHPC (修士).機械学習,分散システム, physical computing,仮想通貨, 投資とか好き.Scrum-Upプロジェクト参画中. ryo.contact[at]gmail.com
https://ryogrid.net
orylab
オリィ研究所は距離や身体的問題を克服し、あいたい人に会え、行きたいところに行ける未来を実現します。
http://orylab.com
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.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  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
ユーザーは見つかりませんでした