RPC tracker not able to connect with handset


After follow new compile and steps to treat cross compile using RPC, phone is not able to connect with RPC tracker. Any additional step need to follow?


I met similar problems. I have uploaded the shared library, but remote.load_module() still doesn’t work.


Do you follow this readme page https://github.com/dmlc/tvm/tree/master/apps/android_rpc ?

No extra step is required. After you start the server on the phone, you can query the tracker by
python3 -m tvm.exec.query_rpc_tracker. You are supposed to see one free “andoird” in the queue status.

cc @eqy We should print error messages in the app, so we know that happens.


Can you share what error messages you are seeing?

Can you verify that the tracker is on the same NAT as the phone and works (e.g., using another RPC server)?

@Faldict My current guess based on limited information is that the app needs to built with the correct libraries linked if they are used (e.g., OpenCL for GPUs).
We can consider pricing more information in the app, but for now you can get a decent idea of wha the app is doing by just inspecting stderr in logcat, as the current app is very chatty in stderr.


Yes, Phone and Tracker on same NAT and phone under tracker que status

user@user-VirtualBox:/my-model$ python -m tvm.exec.query_rpc_tracker
Tracker address

Server List
server-address	key
----------------------------	server:android

Queue Status
key	free	pending
android	1	0

Local Computer Ip:
IPv4 Address. . . . . . . . . . . :

RPC Configuration:
Address :
Port : 9090
Key : android

Virtual Box Tracker Configuration:
user@user-VirtualBox:~/work_tvm/work$ python -m tvm.exec.rpc_tracker --port 9090
INFO:root:If you are running ROCM/Metal, fork will cause compiler internal error. Try to launch with arg --no-fork
INFO:RPCTracker:bind to


The RPC device address appears to be, which makes it look like it’s not on the same subnet as the local computer IP. Can you ping from your VM?

We have not tested running a tracker in a VM before, and depending on this VM host setup this may complicate the networking setup.


Thanks @eqy after set VM subnet address properly with my handset


Thanks for addressing this issue together, maybe it make sense to create a RPC knowhow and troubleshooting to guide users on these issues


You can check if the device is registered to the tracker while the tracker is running with python3 -m tvm.exec.query_rpc_tracker --host [address of your tracker] --port [listening port (9190)]. If the phone is already connected to wifi it should just work if you type the address and port of the tracker into the app.