![](https://img-blog.csdnimg.cn/direct/6e774db8525a4be0b204af7cc843d997.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
TVM
文章平均质量分 66
TVM(深度学习编译器)是一个开源的深度学习编译器和优化器,旨在提高深度学习模型在各种硬件平台上的性能。TVM 的目标是将深度学习模型从高级抽象转化为高效可执行的代码,以在不同的硬件设备上进行部署和执行。
胡乱儿起个名
什么都会一点儿的研究生!目前就职于某芯片公司....
展开
-
卷积核大小为(1,1)时,卷积的结果和输入矩阵和权重矩阵逐元素相乘结果相等。
【代码】卷积核大小为(1,1)时,卷积的结果和输入矩阵和权重矩阵逐元素相乘结果相等。原创 2024-06-12 17:35:12 · 436 阅读 · 0 评论 -
torch.jit.script()和 torch.jit.trace()区别
torch.jit.script() 和 torch.jit.trace() 是 PyTorch 中用于将模型转换为 TorchScript 表示的两种不同方法。原创 2024-05-15 17:03:45 · 326 阅读 · 0 评论 -
torch.jit.trace详解
torch.jit.trace() 是 PyTorch 中用于模型跟踪(tracing)的函数。跟踪是将模型转换为 TorchScript 表示的过程,它将模型的操作序列记录下来,并生成一个可以在 TorchScript 环境下运行的优化版本。func:一个包含模型前向传播逻辑的函数,可以是模型的 forward() 方法或任何能够在输入上执行前向传播的函数。example_inputs:模型的示例输入,用于跟踪过程。它可以是单个张量、元组或列表,用于匹配模型接受的输入。原创 2024-05-15 16:36:35 · 793 阅读 · 1 评论 -
tvm.frontend.from_pytorch详细介绍(1)
Inplace操作是指在原地(in-place)修改数据或对象,而不创建新的副本。它通常用于优化内存使用和减少计算开销。在PyTorch中,有一些操作允许以inplace的方式进行,即直接修改操作作用的张量,而不创建新的张量对象。这些操作通常以_结尾,例如add_、mul_、div_等。通过使用inplace操作,可以减少内存分配和数据拷贝的开销,提高代码的效率。需要注意的是,使用inplace操作时需要小心,因为它会直接修改原始数据,可能导致意外的副作用或不可逆的修改。原创 2024-05-12 19:24:35 · 1062 阅读 · 0 评论 -
PyTorch中的prim操作
用户在使用PyTorch时,会使用更高级的API和函数来组合和构建计算图,而不是直接操作prim操作。原始操作是构成PyTorch计算图的基本操作单位,代表了计算图中的节点。prim是PyTorch内部用于表示各种计算操作的一种机制,它提供了一种通用的方式来表示和处理不同类型的操作。这些prim操作在PyTorch的计算图中被用于表示不同的计算和控制流操作。总而言之,prim是PyTorch内部用于表示原始操作的一种特殊类型,它在计算图中代表了不同类型的计算和控制流操作。原创 2024-05-10 15:55:31 · 457 阅读 · 0 评论 -
pytoch转化为Relay IR的详细过程,以一维反卷积算子为例
【代码】pytoch------>Relay IR。原创 2024-04-20 23:02:41 · 110 阅读 · 0 评论 -
tvm的常见op
常见op原创 2024-04-26 21:26:40 · 540 阅读 · 0 评论 -
Relay 的基本流程,包括定义 Relay 模型、编译模型、创建会话和执行模型。
使用 relay.var 定义一个名为 “x” 的变量,形状为 (3, 3),数据类型为 “float32”。使用 relay.nn.relu 创建一个 ReLU 操作,输入为变量 x。使用 relay.Function 定义一个 Relay函数,将自由变量设置为 y,函数体为变量 y。原创 2024-03-14 13:53:32 · 637 阅读 · 0 评论 -
用 TVMC 编译和优化模型(2)
在本节中,将使用 TVMC,即 TVM 命令行驱动程序。TVMC 工具,它暴露了 TVM 的功能,如 auto-tuning、编译、profiling 和通过命令行界面执行模型。为 TVM 运行时编译预训练 ResNet-50 v2 模型。通过编译后的模型运行真实图像,并解释输出和模型的性能。使用 TVM 在 CPU 上调优模型。使用 TVM 收集的调优数据重新编译优化模型。通过优化后的模型运行图像,并比较输出和模型的性能。原创 2024-03-02 18:54:22 · 934 阅读 · 0 评论 -
TVM 和模型优化的概述(1)
TVM 可以将模型编译成可链接的对象模块,然后可以用轻量级的 TVM 运行时来运行,该运行时提供 C 语言的 API 来动态加载模型,以及其他语言的入口,如 Python 和 Rust。为了帮助将 Relay 表示转换为 TE 表示的过程,TVM 包含张量算子清单(Tensor Operator Inventory,简称 TOPI),它有预先定义的常见张量算子的模板(如 conv2d、transpose)。Relay 是 TVM 的高级模型语言。这是最后的代码生成阶段,产生可以部署到生产中的优化模型。原创 2024-02-29 23:53:45 · 976 阅读 · 0 评论 -
模型量化--int8量化
在深度学习领域,模型通常采用float32这种数据格式进行训练和存储,每个参数占据32比特(即4字节)的空间。例如,一个大小为7b的模型会需求28b的显存或内存资源。但如果能够将参数所需的存储空间压缩至16比特、8比特甚至4比特,那么就能显著减少所需的存储容量,并可能加快模型的推理速度。量化可以应用在模型的参数(即权重)、激活值,甚至是在训练过程中更新的梯度上。参数的量化通常相对容易实施,因为模型的参数分布通常比较稳定。原创 2024-02-23 23:18:15 · 1551 阅读 · 2 评论 -
深度学习框架和工具网址大全
一、Neton可视化工具二、Caffe、ONNX、TensorFlow到NCNN等的转换工具三、Pytorch中文文档原创 2024-02-22 23:35:03 · 282 阅读 · 1 评论