上一页 1 ··· 50 51 52 53 54 55 56 57 58 ··· 273 下一页
摘要: AI编译器TVM与MLIR框架分析 面向ASIC设备的编译器框架:TVM or MLIR? 2019~2021年,“摩尔定律失效”这一关键词频频出现于各大技术网站,在此背景下,市面上多如牛毛的AI芯片公司不约而同地给出了通用CPU+专用ASIC芯片的方案,以应对日益增长的AI边、端侧推理计算需求。在 阅读全文
posted @ 2023-04-04 04:16 吴建明wujianming 阅读(2326) 评论(0) 推荐(0) 编辑
摘要: 多面体编译技术与示例分析多面体模型的基本概念编译器中的多面体模型(polyhedral model)是一种高效的程序优化技术,它将复杂的循环依赖关系映射到高维几何空间,从而在编译阶段实现对计算任务的并行化和局部性优化。通过构建和操作多面体表示能有效地调度指令和数据访问,以减少资源争用和缓存未命中德情 阅读全文
posted @ 2023-04-03 04:32 吴建明wujianming 阅读(1198) 评论(0) 推荐(0) 编辑
摘要: LLVM编译器优化与应用示例 从LLVM IR 来看编译器“优化”都在做些什么(release) 从LLVM IR 来看编译器“优化”都在做些什么(release) 这些东西可以讲很深,但今天只会带大家看些简单的LLVM IR跟 组合语言,并且举一些例子来讲 编译器”优化” 在做些什么。今天的示例会 阅读全文
posted @ 2023-04-02 04:21 吴建明wujianming 阅读(282) 评论(0) 推荐(0) 编辑
摘要: 指令调度与命令行参数解析 编译器优化:指令调度 指令调度简介 指令调度是指对程序块或过程中的操作进行排序以有效利用处理器资源的任务[1]。指令调度的目的就是通过重排指令,提高指令级并行性,使得程序在拥有指令流水线的CPU上更高效的运行。指令调度优化的一个必要前提就是CPU硬件支持指令并行,否则,指令 阅读全文
posted @ 2023-04-01 04:28 吴建明wujianming 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 自定义创建一个芯片LLVM编译器分析 参考文献链接 https://mp.weixin.qq.com/s/1Gccmir2IbVvtaWzIe6uQQ https://zhuanlan.zhihu.com/p/478428967 阅读全文
posted @ 2023-03-31 04:35 吴建明wujianming 阅读(67) 评论(0) 推荐(0) 编辑
摘要: MLIR,LLVM SPIR-V Getting started初步探索 编译器与IR的思考: LLVM IR,SPIR-V到MLIR 编译器与中间表示 在讨论各种具体中间表示之前,先让我们总体看一下编译器和中间表示。 抽象与语义(Abstractions and Semantics) 自人类文明产 阅读全文
posted @ 2023-03-30 04:20 吴建明wujianming 阅读(285) 评论(0) 推荐(0) 编辑
摘要: LLVM 编译器框架与流程分析 LLVM 编译器框架 LLVM是Low Level Virtual Machine(低级虚拟机)的简称,是一款编译器框架。但是它本质上并不是虚拟机,核心其实准确点应该是编译器相关支持。主要是支持代码优化、链接、代码生成、机器码生成。当然有的时候内部llc给人感觉确实是 阅读全文
posted @ 2023-03-29 04:51 吴建明wujianming 阅读(967) 评论(0) 推荐(0) 编辑
摘要: LLVM的IR指令及代码生成技术应用详解 LLVM的IR指令详解 IR 指令是 LLVM 中的一个中间表示形式,用于表示程序的控制流、数据流、内存访问等等,它是一种基于 SSA 形式(Static Single Assignment)的静态单赋值形式。在 LLVM 中,每个 IR 指令都有一个唯一的 阅读全文
posted @ 2023-03-28 04:40 吴建明wujianming 阅读(643) 评论(0) 推荐(0) 编辑
摘要: LLVM代码及指令选择分析 概述 LLVM Obfuscator是一款工业级别的代码混淆器,在过去几年的CTF里我们经常会遇到经过代码经过它混淆的情况。这片博文记录了我们对混淆器原理的研究以及从中发现的有关混淆器的设计实现的脆弱之处。基于我们的研究结果,我们在Binary Ninja平台上写了一个插 阅读全文
posted @ 2023-03-27 04:59 吴建明wujianming 阅读(485) 评论(0) 推荐(0) 编辑
摘要: LLVM后端与工具链技术探索 底层探索LLVM 在介绍 LLVM 之前,先来认识一下解释型语言和编译型语言。 解释型语言 有的编程语言可以一边执行一边转换,不会生成可执行文件再去执行,这种编程语言称为解释型语言,使用的转换工具称为解释器,比如 Python、JavaScript、PHP等。 编译型语 阅读全文
posted @ 2023-03-26 04:22 吴建明wujianming 阅读(533) 评论(0) 推荐(0) 编辑
上一页 1 ··· 50 51 52 53 54 55 56 57 58 ··· 273 下一页