Replies: 1 comment 1 reply
-
抱歉,由于使用Python命令行的情况较少,我们可能没有经过严格测试。建议在py文件或notebook中运行 |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
您好!非常感谢您的课程!我在实践第三节课(张量程序抽象案例研究)涉及的代码时遇到了一些问题,想请您指点一下,我在运行如下一段TVMScript代码时出现了一些问题,我对TVM了解并不深入,我想向您请教TVMScript这门语言可以直接在Python命令行中运行吗?还是需要其他的运行方式?
`>>> @tvm.script.ir_module
... class MyModule:
... @T.prim_func
... def mm_relu(A: T.Buffer[(128, 128), "float32"],
... B: T.Buffer[(128, 128), "float32"],
... C: T.Buffer[(128, 128), "float32"]):
... T.func_attr({"global_symbol": "mm_relu", "tir.noalias": True})
... Y = T.alloc_buffer((128, 128), dtype="float32")
... for i, j, k in T.grid(128, 128, 128):
... with T.block("Y"):
... vi = T.axis.spatial(128, i)
... vj = T.axis.spatial(128, j)
... vk = T.axis.reduce(128, k)
... with T.init():
... Y[vi, vj] = T.float32(0)
... Y[vi, vj] = Y[vi, vj] + A[vi, vk] * B[vk, vj]
... for i, j in T.grid(128, 128):
... with T.block("C"):
... vi = T.axis.spatial(128, i)
... vj = T.axis.spatial(128, j)
... C[vi, vj] = T.max(Y[vi, vj], T.float32(0))
...
`
Traceback (most recent call last):
File "", line 2, in
File "", line 4, in MyModule
File "/root/miniconda3/envs/TianQiLearning/lib/python3.8/site-packages/tvm/script/tir/prim_func.py", line 40, in prim_func
result = from_source(input_func)
File "/root/miniconda3/envs/TianQiLearning/lib/python3.8/site-packages/tvm/script/parser.py", line 1341, in from_source
_, start_line = inspect.getsourcelines(input_func)
File "/root/miniconda3/envs/TianQiLearning/lib/python3.8/inspect.py", line 979, in getsourcelines
lines, lnum = findsource(object)
File "/root/miniconda3/envs/TianQiLearning/lib/python3.8/inspect.py", line 798, in findsource
raise OSError('could not get source code')
OSError: could not get source code
Beta Was this translation helpful? Give feedback.
All reactions