エラーの対処方法がわからない

https://tvm.apache.org/docs/tutorial/tvmc_python.html
上記のURL先でのGetting starting using python TVMをやっている最中です。

python3 tvmcpythonintro.pyを実行すると以下のエラーが発生します。
gpuで実行しようとしています。また、コンパイルはcudaを使用しています。
cpuでは上手く実行できました。

[エラー内容]
Traceback (most recent call last):
File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
self.run()
File "/usr/lib/python3.6/threading.py", line 864, in run
self._target(self._args, self._kwargs)
File "/mnt/c/programing/tvm/python/tvm/autotvm/measure/measure_methods.py", line 812, in _check
while not dev.exist: # wait until we get an available device
File "/mnt/c/programing/tvm/python/tvm/_ffi/runtime_ctypes.py", line 263, in exist
return self._GetDeviceAttr(self.device_type, self.device_id, 0) != 0
File "/mnt/c/programing/tvm/python/tvm/_ffi/runtime_ctypes.py", line 247, in _GetDeviceAttr
return tvm.runtime._ffi_api.GetDeviceAttr(device_type, device_id, attr_id)
File "/mnt/c/programing/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in call
raise get_last_ffi_error()
tvm._ffi.base.TVMError: Traceback (most recent call last):
4: TVMFuncCall
3: ZN3tvm7runtime13PackedFuncObj9ExtractorINS0_16PackedFuncSubObjIUlNS0_7TVMArgsEPNS0_11TVMRetValueEE0_EEE4CallEPKS1_S4_S6
2: tvm::runtime::RPCDeviceAPI::GetAttr(DLDevice, tvm::runtime::DeviceAttrKind, tvm::runtime::TVMRetValue
)
1: non-virtual thunk to tvm::runtime::RPCClientSession::GetAttr(DLDevice, tvm::runtime::DeviceAttrKind, tvm::runtime::TVMRetValue
)
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<tvm::runtime::RPCEndpoint::Init()::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue
)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/mnt/c/programing/tvm/src/runtime/rpc/rpc_endpoint.cc", line 681
TVMError:

An error occurred during the execution of TVM.
For more information, please see: https://tvm.apache.org/docs/errors.html

Check failed: (code == RPCCode::kReturn) is false: code=1
Traceback (most recent call last):
File "tvmcpythonintro.py", line 8, in <module>
tvmc.tune(model, target="cuda")
File "/mnt/c/programing/tvm/python/tvm/driver/tvmc/autotuner.py", line 493, in tune_model
tune_tasks(tasks, tuning_records, **tuning_options)
File "/mnt/c/programing/tvm/python/tvm/driver/tvmc/autotuner.py", line 700, in tune_tasks
autotvm.callback.log_to_file(log_file),
File "/mnt/c/programing/tvm/python/tvm/autotvm/tuner/xgboost_tuner.py", line 105, in tune
super(XGBTuner, self).tune(*args, **kwargs)
File "/mnt/c/programing/tvm/python/tvm/autotvm/tuner/tuner.py", line 113, in tune
measure_batch = create_measure_batch(self.task, measure_option)
File "/mnt/c/programing/tvm/python/tvm/autotvm/measure/measure.py", line 282, in create_measure_batch
attach_objects = runner.set_task(task)
File "/mnt/c/programing/tvm/python/tvm/autotvm/measure/measure_methods.py", line 492, in set_task
super(LocalRunner, self).set_task(task)
File "/mnt/c/programing/tvm/python/tvm/autotvm/measure/measure_methods.py", line 326, in set_task
"Cannot get remote devices from the tracker. "
RuntimeError: Cannot get remote devices from the tracker. Please check the status of tracker by 'python -m tvm.exec.query_rpc_tracker --port [THE PORT YOU USE]' and make sure you have free devices on the queue status.
Done.
[\エラー内容]

エラーの対処に対しての知識が少なく、
読んでもどこをどう対処したらいいのかわかりません。
何でもいいので助言をいただきたいです。
よろしくお願いいたします。

#tvmcpythonintro.py from tvm.driver import tvmc #load model = tvmc.load('resnet50-v2-7.onnx') #tune #tvmc.tune(model, target="llvm") tvmc.tune(model, target="cuda") #compile #package = tvmc.compile(model, target="llvm") #CPU #package = tvmc.compile(model, target="llvm", tuning_records = "records.log") package = tvmc.compile(model, target="cuda") #GPU #run #result = tvmc.run(package, device="cpu") result = tvmc.run(package, device="gpu") print(result)

コメントを投稿

0 コメント