tensorflow v1でGPUを使って計算をさせていて、とコードAを入れて走らせたところsegmentation fault とでてとまってしまいました。
同じコードをCPUで走らせたらエラーなく動きました。
codeA
V = tf.Variable([batch_size, 7], dtype=tf.float32)
for b in range(B):
xxxxxxxx
for i, num in enumerate(nums):
A = tf.where(tf.equal(A[b], num), tf.broadcast_to(V[b,i], [224, 224]), tf.broadcast_to(0., [224, 224]))
yyyyyyy
zzzzzzz
グーグルで調べて
gdb
file python
run train2.py
と打ってみましたところ以下のような表示が出ました。
linux
1Program received signal SIGSEGV, Segmentation fault. 2[Switching to Thread 0x2aaba360a700 (LWP 54151)] 30x00002aaad02a46b0 in tensorflow::functor::BroadcastTo<Eigen::GpuDevice, float>::operator()(Eigen::GpuDevice const&, tensorflow::OpKernelContext*, tensorflow::Tensor&, tensorflow::TensorShape const&, tensorflow::Tensor const&, tensorflow::TensorShape const&) () 4 from /home/acc13114oa/venv/urfo/lib/python3.5/site-packages/tensorflow/python/_pywrap_tensorflow_internal.so 5Missing separate debuginfos, use: debuginfo-install bzip2-libs-1.0.6-13.el7.x86_64 expat-2.1.0-10.el7_3.x86_64 glib2-2.54.2-2.el7.x86_64 glibc-2.17-222.el7.x86_64 keyutils-libs-1.5.8-3.el7.x86_64 krb5-libs-1.15.1-19.el7.x86_64 libX11-1.6.5-1.el7.x86_64 libXau-1.0.8-2.1.el7.x86_64 libXdamage-1.1.4-4.1.el7.x86_64 libXext-1.3.3-3.el7.x86_64 libXfixes-5.0.3-1.el7.x86_64 libXxf86vm-1.1.4-1.el7.x86_64 libcom_err-1.42.9-11.el7.x86_64 libdrm-2.4.83-2.el7.x86_64 libgcc-4.8.5-28.el7.x86_64 libgomp-4.8.5-28.el7.x86_64 libselinux-2.5-12.el7.x86_64 libstdc++-4.8.5-28.el7.x86_64 libuuid-2.23.2-52.el7.x86_64 libxcb-1.12-1.el7.x86_64 libxshmfence-1.2-1.el7.x86_64 libyaml-0.1.4-11.el7_0.x86_64 mesa-libGL-17.2.3-8.20171019.el7.x86_64 mesa-libglapi-17.2.3-8.20171019.el7.x86_64 openssl-libs-1.0.2k-12.el7.x86_64 pcre-8.32-17.el7.x86_64 xz-libs-5.2.2-1.el7.x86_64 zlib-1.2.7-17.el7.x86_64
さらにもう一度
file python
run train2.py
と入れると以下の表示
linux
10x00002aaad02a46b0 in tensorflow::functor::BroadcastTo<Eigen::GpuDevice, float>::operator()(Eigen::GpuDevice const&, tensorflow::OpKernelContext*, tensorflow::Tensor&, tensorflow::TensorShape const&, tensorflow::Tensor const&, tensorflow::TensorShape const&) () 2 from /home/xxxxx/yyyyy/lib/python3.5/site-packages/tensorflow/python/_pywrap_tensorflow_internal.so 3
コードAには tf.broadcast_toを使っています。でその対象は一つはtf.Variable(float32), もう一つは 0. です。
やっぱりそこが原因なのでしょうか?
CPUでは動いたのに。。。
原因特定方法や原因がわかる方がいらっしゃればご教授お願いします。
回答1件
あなたの回答
tips
プレビュー