How to run in python3
kazluu opened this issue · 0 comments
First of all, Thank you for this. It is awesome.
Second, I have started porting the code to python3 (all my env is python3) and I have got the extension and the plots to show on Jupyter. However I am now running into problems when setting breakpoints. What happens is, once the bp is hit, the code keeps executing. I have looked at the code, and I don't know if I am using the bp capability wrong, or if there is issues with python3.
Here is where I use tdb
for _ in range(n_batches):
batch = data_gen.get_batch(batch_size)
feed = {X: batch[0], y: one_hot(batch[1], n_classes)}
stat, res = tdb.debug([train_step, cross_entropy, accuracy, y_],
feed_dict=feed, break_immediately=True,
session=sess)
And this is the output when I run that:
Breakpoint triggered. Next Node: SoftmaxCrossEntropyWithLogits_1:0
Breakpoint triggered. Next Node: SoftmaxCrossEntropyWithLogits_1:0
Breakpoint triggered. Next Node: SoftmaxCrossEntropyWithLogits_1:0
Breakpoint triggered. Next Node: SoftmaxCrossEntropyWithLogits_1:0
Breakpoint triggered. Next Node: SoftmaxCrossEntropyWithLogits_1:0
Breakpoint triggered. Next Node: SoftmaxCrossEntropyWithLogits_1:0
Breakpoint triggered. Next Node: SoftmaxCrossEntropyWithLogits_1:0
Breakpoint triggered. Next Node: SoftmaxCrossEntropyWithLogits_1:0
It doesn't stop until after the code has executed. My changes to make the code python3 compatible include very simple things:
- Make all the imports relative, i.e. change
import asdf
forfrom . import asdf
- Change
StringIO
forio.BytesIO
. - Change
base64.b64encode
forbase64.encodebytes
.
I have the suspicion that this is the intended behavior and that I should check the value of status
and stop execution based on it, however I want to make sure this is the case.