上一页 1 2 3 4 5 6 ··· 166 下一页
摘要: LLVM Clang前端编译与调试 iOS 关于编译 一、Objective-C 编译过程 为什么需要重新编译? 编译步骤 二、编译步骤的详细说明 1.预处理 2.编译 词法分析 语法分析 clang static analyzer 3.生成 LLVM IR LLVM Backend 三、编译完成生 阅读全文
posted @ 2021-10-17 06:39 吴建明wujianming 阅读(17) 评论(0) 推荐(0) 编辑
摘要: Clang调试诊断信息Expressive Diagnostics 除了快速和实用,目标是使 Clang用户友好。命令行编译器,使编译器生成的诊断(错误和警告消息)尽可能有用。有几种方法可以做到这一点。依据命令行编译器经验,将 Clang 输出与 GCC 4.9 的输出进行对比。 Column Nu 阅读全文
posted @ 2021-10-16 18:06 吴建明wujianming 阅读(7) 评论(0) 推荐(0) 编辑
摘要: Linux 交叉编译简介 主机,目标,交叉编译器 主机与目标 编译器是将源代码转换为可执行代码的程序。像所有程序一样,编译器运行在特定类型的计算机上,输出的新程序也运行在特定类型的计算机上。 运行编译器的计算机称为主机,运行新程序的计算机称为目标。当主机和目标是同一类型的机器时,编译器是本机编译器。 阅读全文
posted @ 2021-10-16 06:17 吴建明wujianming 阅读(17) 评论(0) 推荐(0) 编辑
摘要: JIT Compiler编译器 阅读全文
posted @ 2021-10-15 05:35 吴建明wujianming 阅读(8) 评论(0) 推荐(0) 编辑
摘要: Cache 与Memory架构及数据交互 阅读全文
posted @ 2021-10-14 05:12 吴建明wujianming 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 自动微分原理与示例机器学习的同学在学习过程中会经常遇到一个问题,那就是对目标函数进行求微分,线性回归这类简单的就不说、复杂的如神经网络类那些求导过程。本文介绍了五种微分方式,最后两种才是自动微分。前两种方法求出了原函数对应的导函数,后三种方法只是求出了某一点的导数。假设原函数是f(x,y)=x2y+ 阅读全文
posted @ 2021-10-13 06:22 吴建明wujianming 阅读(16) 评论(0) 推荐(0) 编辑
摘要: AI多种并行算法 并行模型 模型并行( model parallelism ):分布式系统中的不同机器(GPU/CPU等)负责网络模型的不同部分 —— 例如,神经网络模型的不同网络层被分配到不同的机器,或者同一层内部的不同参数被分配到不同机器;[14] 数据并行( data parallelism  阅读全文
posted @ 2021-10-12 06:20 吴建明wujianming 阅读(18) 评论(0) 推荐(0) 编辑
摘要: LLVM与Clang局部架构与语法分析 Clang与LLVM LLVM整体架构,前端用的是clang,广义的LLVM是指整个LLVM架构,一般狭义的LLVM指的是LLVM后端(包含代码优化和目标代码生成)。 源代码(c/c++)经过clang--> 中间代码(经过一系列的优化,优化用的是Pass) 阅读全文
posted @ 2021-10-11 06:03 吴建明wujianming 阅读(11) 评论(0) 推荐(0) 编辑
摘要: LLVM语法语义指令特性 High Level Structure Module Structure LLVM 程序由Module's组成,每个 's 是输入程序的一个翻译单元。每个模块由函数,全局变量和符号表条目组成。模块可与 LLVM 链接器组合在一起,后者合并函数(全局变量)定义,解析前向声明 阅读全文
posted @ 2021-10-10 05:58 吴建明wujianming 阅读(6) 评论(0) 推荐(0) 编辑
摘要: AI中pass架构设计优化 Relay 和 TVM IR,包含一系列优化passes,可提高模型的性能指标,例如平均推理,内存占用,或特定设备的功耗。有一套标准优化,及特定机器学习的优化,包括常量折叠,死代码消除,算子布局更改,算子融合,缓冲区处理和循环转换等。这些passes中的每一个都构造为一个 阅读全文
posted @ 2021-10-09 05:56 吴建明wujianming 阅读(22) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 166 下一页