带宽受限下的DSA后端优化

0. 前言

目前对于许多端侧NPU来说,是由一个可编程操作但容量较小的SRAM进行数据调度,需要尽可能的减少数据搬运, 从而避免DSA中的计算单元处于空闲状态[^1]。

因此我们要解决的问题是: 1. 如何充分利用Local Memory并在其中计算尽可能多的kernel? 2. 如何调度Local Memory中的内存/指令从而充分利用计算单元?

本文主要分享关于Fused Layer内部的Buffer ScheduleInstruction Schedule的一些经验体会.

阅读全文

AKG 学习

学习AKG的算子编译流程, 主要关于后端.

阅读全文

Polyhedral Tutorials

关于Polyhedral Tutorials的一个中文翻译归档,其中所有章节原文位于我的仓库中.

阅读全文

zhihu markdown导入(2022年6月)

我最近想把写的东西弄到知乎上,但是发现一堆问题,按照之前的方式出现了老多错误,因此记录一下.

阅读全文

Optimizing the Memory Hierarchy by Compositing Automatic Transformations on Computations and Data

这篇文章是赵捷老师在mircro 2020上发表的论文,我觉得这篇文章对理解akg系列的工作比较重要,所以仔细阅读了一遍.

阅读全文

标量指令集编译器简易实现

之前没有接触过标量isa的编译器该怎么写,所以需要学习一下. 主要参考自RednaxelaFX的寄存器分配问题 以及chibicc简易c编译器.

阅读全文

Halide 进阶

主要分析halide内部机制.

阅读全文

egg 浅析

主要分析egraphs-good也就是egg这个库的实现机制.因为最近发现适配到基于relay的ir中存在一些问题,因此还是需要仔细研究一下他的实现细节.

阅读全文

C# P/Invoke 总结

关于C#调用本机lib时遇到的一些问题汇总.

阅读全文

Pure Tensor Program Rewriting via Access Patterns

这是一篇基于EGraphTensor级别的IR进行Term Rewrite的文章.

阅读全文