mlir

黯止依蓝2 个月前
mlir
MLIR方言(Dialects)是参与并扩展MLIR(多级中间表示,多级中间语言)生态系统的机制。它们允许定义新的操作、属性和类型。每个方言都有一个唯一的命名空间,这个命名空间会作为前缀添加到每个定义的属性、操作和类型前。例如,Affine方言定义的命名空间是:affine。
做个爱笑的大男孩3 个月前
深度学习·ai·mlir·compiler
论文Compiler Technologies in Deep Learning Co-Design: A Survey分享从标题可以看出,这篇文章是一个综述,内容上主要是关于深度学习中的编译器技术。Co-Design 可以理解为软硬件协同设计,它可以包括:
卢之6 个月前
学习·mlir
MLIR 优化学习MLIR(多级中间表示)是编译器实用工具的表示格式和库,它位于模型表示与生成硬件特定代码的低级编译器/执行器之间。
空谷-幽兰9 个月前
编辑器·mlir
编译器和 IR:LLVM IR、SPIR-V 和 MLIR编译器通常是各种开发工具链中的关键组件,可提高开发人员的工作效率。编译器通常用作独立的黑匣子,它使用高级源程序并生成语义上等效的低级源程序。不过,它仍然是内部结构倾向的;内部之间流动的内容就称为中间表示 (IR)。
wuhui_gdnt9 个月前
笔记·编译·mlir
MLIR笔记(5)4.3.4. 图区域在MLIR中,区域里类似图的语义由RegionKind::Graph来表示。对没有控制流的并发语义,以及通用有向图数据结构的建模,图区域是合适的。图区域适用于表示耦合值之间的循环关系,这些关系没有基本的序。例如,一个图区域里的操作可能表示独立线程的控制流,具有表示数据流的值。就像通常在MLIR里一样,区域的特定语义完全由它包含的操作确定。图区域可能仅包含单个基本块(入口块)。
wuhui_gdnt10 个月前
笔记·编译·mlir·llvm
MLIR笔记(2)3.1. dyn_cast()与cast()C++支持类型间的自动转换(如operator =声明的转换),但在转换的调用链里自动转换只能调用一次,这固然是避免给编译器带来过分的复杂性,但更重要的是允许自动转换接力调用几乎很难避免出现递归调用,而且调用链过长会很快失去控制,给人带来意想不到的结果。但是,C++原生的类型转换系统对于LLVM/MLIR来说局限性太大,因此,LLVM打造了自己的类型转换系统,它仿造C++的惯例,给出了自己的类型转换函数:cast、dyn_cast。显然,它们分别对应其他cast
算能开发者社区1 年前
人工智能·算法·硬件工程·mlir
TPU-MLIR——实现Chatglm2-6B大模型移植部署本项目实现BM1684X部署语言大模型ChatGLM2-6B。通过TPU-MLIR编译器将模型转换成bmodel,并采用c++代码将其部署到BM1684X的PCIE环境,或者SoC环境。
算能开发者社区1 年前
人工智能·算法·mlir
Sophnet介绍及云空间申请使用SOPHNET 平台是基于SOPHON智算产品打造的云边统一的AI服务平台,是人工智能算力中心的基础设施,平台通过开放AI训练和AI推理两大核心能力,赋能千行百业。