Ich trainiere ein resNet50 mit tensorflow, mit einem gemeinsamen Server mit diesen Eigenschaften genannt:Tensorflow terminate nach dem Werfen einer Instanz von 'std :: system_error'
- ubuntu 16.04
- 3 gtx 1080 GPUs
- tensorflow 1.3
- python 2,7
aber immer nach zwei Epochen, und während der dritten Epoche, begegne ich diesen Fehler:
terminate called after throwing an instance of 'std::system_error' what():
Resource temporarily unavailable
Aborted (core dumped)
mit etwas Druck in meinem Code hinzufügen, die ich gefunden habe, wo das Problem ist:
das ist tfrecord zu Dataset konvertieren:
filenames = ["balanced_t.tfrecords"]
dataset = tf.contrib.data.TFRecordDataset(filenames)
def parser(record):
keys_to_features = {
# "label": tf.FixedLenFeature((), tf.string, default_value=""),
"mhot_label_raw": tf.FixedLenFeature((), tf.string, default_value=""),
"mel_spec_raw": tf.FixedLenFeature((), tf.string, default_value=""),
}
parsed = tf.parse_single_example(record, keys_to_features)
mel_spec1d = tf.decode_raw(parsed['mel_spec_raw'], tf.float64)
# label = tf.cast(parsed["label"], tf.string)
mhot_label = tf.decode_raw(parsed['mhot_label_raw'], tf.float64)
mel_spec = tf.reshape(mel_spec1d, [96, 64])
# aa=mel_spec
return {"mel_data": mel_spec}, mhot_label
dataset = dataset.map(parser)
dataset = dataset.batch(batch_size)
dataset = dataset.repeat(3)
iterator = dataset.make_one_shot_iterator()
und dies ist mein Eingang pipline
while True:
try:
(features, labels) = sess.run(iterator.get_next())
except tf.errors.OutOfRangeError:
print("end of training dataset")
aufgrund meiner Drucke Ausgabe ist der Fehler für diese Zeile:
(features, labels) = sess.run(iterator.get_next())
aber ich sehe kein Problem, können Sie mir jetzt helfen?
Leck Es ist schwer, den Grund mit so begrenzt zu finden Fehlerprotokoll. Wenn möglich, führe deinen Code unter 'python2.7-dbg' aus, um einen Core-Dump zu erhalten und dann die Core-Datei hochzuladen (normalerweise unter'/var/crash' für Ubuntu) –
@ Qmick Zh danke für deine Antwort, werde ich tun mit dbg, aber jetzt habe ich festgestellt, welche Zeile Fehler verursachen, können Sie mir jetzt helfen? –
@Qmick Zh sollte ich cuda-dbg verwenden, weil ich GPU verwenden möchte. –