アプリケーション開発ポータルサイト
ServerNote.NET
カテゴリー【PythonGoogle
【TensorFlow2】MirroredStrategyでInvalidArgumentErrorが出る場合
POSTED BY
2023-10-04

複数のGPUを同時に使わせるMirroredStrategyの宣言箇所で起こることがある。

import tensorflow as tf

with tf.distribute.MirroredStrategy().scope():

    ....モデル構築ブロック....

InvalidArgumentError: No OpKernel was registered to support Op 'NcclAllReduce' used by {{node Adam/NcclAllReduce}} with these attrs: [reduction="sum", shared_name="c1", T=DT_FLOAT, num_devices=2]

以下のようなcross_device_ops引数を与えると解決すると思われる。

import tensorflow as tf

with tf.distribute.MirroredStrategy(cross_device_ops=tf.distribute.HierarchicalCopyAllReduce()).scope():

    ....モデル構築ブロック....

参照
https://github.com/tensorflow/tensorflow/issues/33656

※本記事は当サイト管理人の個人的な備忘録です。本記事の参照又は付随ソースコード利用後にいかなる損害が発生しても当サイト及び管理人は一切責任を負いません。
※本記事内容の無断転載を禁じます。
【WEBMASTER/管理人】
自営業プログラマーです。お仕事ください!
ご連絡は以下アドレスまでお願いします★

【キーワード検索】