tvm
tvm copied to clipboard
[Python] Support Python 3.9.X+
This issue is to track issues with python 3.9.x+ in TVM.
- [ ] Switch hybrid script to use synr.
- [ ] Make sure nothing in the tvm codebase requires forking new threads (as opposed to spawning).
@tkonolige @jroesch @areusch Please fill in when you have time.
- [ ] Switch hybrid script to use synr.
- [ ] Make sure nothing in the tvm codebase requires forking new threads (as opposed to spawning).
@tkonolige do you happen to know the status of this issue? I heard some work with SYNR was occuring?
Synr is fine, its hybrid script that needs to be updated to use synr.
What's the status of this issue? Is there any plan to support python 3.9?
cc @hpanda-naut can you triage
@hsuanguo i'm not sure we've moved on this at the moment. @junrushao1994 @yelite do you know the story around hybrid script and synr?
I guess https://github.com/apache/tvm/pull/13269 does not fix the python 3.9 support completely?
You can use 3.9, however some parts of TVM might not work (e.g. hybridscript).
Is there a list of functionalities that might get affected when using tvm with python-3.9 ?
Some dynamic (i.e. the shape is not known until runtime) kernels will not work due to incompatibility with ̶T̶V̶M̶s̶c̶r̶i̶p̶t̶.̶ HybridScript
@AndrewZhaoLuo TVMScript is tested to support python 3.6-3.10, the part that doesn’t support python 3.9 is the legacy hybrid script. We need to migrate them to TVMScript
Another possible issue: when trying to run TVM's python unit tests with Python 3.10.6, I get this:
ImportError: Error importing plugin "tvm.testing.plugin": /home/cconvey/.local/lib/python3.10/site-packages/scipy/spatial/transform/rotation.cpython-310-x86_64-linux-gnu.so: undefined symbol: _PyGen_Send
Also:
$ pip3.10 show scipy
Name: scipy
Version: 1.6.1
Summary: SciPy: Scientific Library for Python
Home-page: https://www.scipy.org
Author:
Author-email:
License: BSD
Location: /home/cconvey/.local/lib/python3.10/site-packages
Requires: numpy
Required-by: tvm, xgboost
I don't think I told pip3.10 which particular version of scipy I wanted to install. As of this writing, these TVM docs only mention using a specific scipy in the case of M1 Macs. My machine is running x86-64 on Linux (specifically, Pop!_OS 22.04).
Is there any new progress on this issue?
Only part of the legacy features comes with legacy dependency. Given we migrated TVMScript with python10 support, closing this for now