TVM
紫河钓鱼王
这个作者很懒,什么都没留下…
展开
-
TVM外部张量函数(External Tensor Functions)
#!/usr/bin/env python# coding: utf-8# # 外部张量函数(External Tensor Functions)# # 虽然TVM支持透明的代码生成,但有时将手工编写的代码合并到流水线中也很有帮助。例如,我们可能想用cuDNN来做一些卷积内核,并定义其余的阶段。# # TVM原生支持这些黑盒函数调用。确切地说,TVM支持所有与DLPack兼容的张量函数。这意味着我们可以调用任何具有POD类型(pointer、int、float)或指向DLTensor的指针作为翻译 2021-02-02 22:27:48 · 513 阅读 · 0 评论 -
TVM扫描和递归核(Scan and Recurrent Kernel)
扫描和递归核(Scan and Recurrent Kernel)#!/usr/bin/env python# coding: utf-8# # 扫描和递归核(Scan and Recurrent Kernel)# 递归计算是神经网络的一种典型模式。# In[1]:from __future__ import absolute_import, print_functionimport tvmimport tvm.testingfrom tvm import teimport n翻译 2021-01-27 22:29:30 · 423 阅读 · 0 评论 -
TVM内置函数和数学函数(Intrinsics and Math Functions)
虽然TVM支持基本的算术操作,但是在很多情况下,我们通常需要更复杂的内置函数.(例如exp指数函数)这些函数依赖于目标系统,在不同的目标平台上可能有不同的名称.下面我们来学习如何调用这些目标特定的函数,以及如何通过tvm的内在API统一接口.from __future__ import absolute_import, print_functionimport tvmfrom tvm import teimport numpy as np直接声明外部数学调用n = te.var("..翻译 2021-01-25 21:35:17 · 624 阅读 · 0 评论 -
TVM基本调度原语
TVM调度原语官方DOC#!/usr/bin/env python# coding: utf-8# 通常有几种方法来计算相同的结果,但是不同的方法会导致不同的局部性和性能。所以TVM要求用户提供如何执行称为Schedule的计算。# Schedule是一组转换计算的集合,它转换程序中的计算循环。# In[1]:#兼容python2.xfrom __future__ import print_function #在python2.x中也要像python3.x那样使用print()fr翻译 2021-01-19 21:50:45 · 346 阅读 · 1 评论 -
TVM张量表达式
# Get Started with Tensor Expression# # TVM使用一个定义域特定张量表达式来高效地构造核。# In[1]:import tvmimport tvm.testingfrom tvm import teimport numpy as np# In[2]:tgt_host = "llvm"tgt = "cuda"# In[3]:n = te.var("n") #symbolic variable 符号变量A = te.pla.翻译 2021-01-14 21:50:40 · 375 阅读 · 0 评论