IOLoop already running


#1

I am trying to follow the tutorial from

https://docs.tvm.ai/tutorials/autotvm/tune_conv2d_cuda.html#sphx-glr-tutorials-autotvm-tune-conv2d-cuda-py

When i run the code I get the following error:

tuner = autotvm.tuner.XGBTuner(task)
tuner.tune(n_trial=20,
measure_option=measure_option,
callbacks=[autotvm.callback.log_to_file(‘conv2d.log’)])

ConfigSpace (len=10454400, space_map=
0 tile_f: Split(policy=all, product=512, num_outputs=4) len=220
1 tile_y: Split(policy=all, product=7, num_outputs=4) len=4
2 tile_x: Split(policy=all, product=7, num_outputs=4) len=4
3 tile_rc: Split(policy=all, product=512, num_outputs=3) len=55
4 tile_ry: Split(policy=all, product=3, num_outputs=3) len=3
5 tile_rx: Split(policy=all, product=3, num_outputs=3) len=3
6 auto_unroll_max_step: OtherOption([0, 512, 1500]) len=3
7 unroll_explicit: OtherOption([0, 1]) len=2
)

======error begins here===========
Process Process-9:
Traceback (most recent call last):
File “/usr/lib/python2.7/multiprocessing/process.py”, line 267, in _bootstrap
self.run()
File “/usr/lib/python2.7/multiprocessing/process.py”, line 114, in run
self._target(*self._args, **self._kwargs)
File “/home/hyz/.virtualenvs/env27/local/lib/python2.7/site-packages/tvm-0.5.dev0-py2.7-linux-x86_64.egg/tvm/rpc/tracker.py”, line 339, in _tracker_server
handler.run()
File “/home/hyz/.virtualenvs/env27/local/lib/python2.7/site-packages/tvm-0.5.dev0-py2.7-linux-x86_64.egg/tvm/rpc/tracker.py”, line 335, in run
self._ioloop.start()
File “/home/hyz/.virtualenvs/env27/local/lib/python2.7/site-packages/tornado/ioloop.py”, line 937, in start
raise RuntimeError(“IOLoop is already running”)
RuntimeError: IOLoop is already running

I am wondering if this is a bug in tvm or some missing package.

Thanks


#2

Hi, I believe this might be a bug, the way to reproduce this is to run the notebook in ipython command line and everything works as expected, but when running from the python notebook I get the failure described in the first comment.
This is probably some interaction between the network connection of the notebook and the network connection to the slaves running tasks?