性能优化PPT8
Lecture 8 - Matrix–Matrix Multiplication 讲师:Anne Reinarz 主题:性能建模、内存访问、向量化优化等 Matrix–Matrix Multiplication 对于 n×n 的矩阵 A 和 B,计算 C = AB: for (int i = 0; i < n; i++) for (int j = 0; j ...
Lecture 8 - Matrix–Matrix Multiplication 讲师:Anne Reinarz 主题:性能建模、内存访问、向量化优化等 Matrix–Matrix Multiplication 对于 n×n 的矩阵 A 和 B,计算 C = AB: for (int i = 0; i < n; i++) for (int j = 0; j ...
📚 Session 6: Cache Blocking & Tiling Anne Reinarz 🧮 Matrix Transpose (基础) 目标: 计算转置矩阵 给定两个 N×N 的矩阵 A 和 B,进行如下操作: B[i*N + j] = A[j*N + i]; 🔍 简单性能模型: N² 次存储(store) N² 次加载(load) 无计算操...
Session 5: Profiling Lecturer: Anne Reinarz 🧠 核心目标 在大型代码库中使用 Profiling 识别热点,优化性能瓶颈。 🔍 为什么需要 Profiling? Performance counters 不适用于大规模代码(太难标注)。 Profiling 帮助我们: 找到耗时最多的部分(hotspots) ...
Linux 命令分类文档 文件系统导航 ls - 列出目录内容 ls -l - 以详细格式列出(长格式) ls -al - 以长格式列出所有文件(包括隐藏文件) pwd - 打印工作目录(当前位置) cd dir - 切换到 dir 目录 cd - 切换到主目录 cd .. - 切换到父目录 文件下载和压缩 wget 网址 - 从网络下载文件 c...
Lecture 5:Performance Measurements 🎯 本讲目标:Roofline 分析 & 性能测量 🧠 Exercise 4:Roofline for Matrix-Vector Multiply 目标计算: \(y = Ax = \sum_{j=1}^{n_{col}} A_{ij}x_j\) 🌄 Roofline 模型概述 用于不同硬...
Lecture 3: Roofline Models Lecturer: Anne Reinarz 🚀 Exercise 2: Results & Interpretation Vectorised addition 每个周期加载 1 个 32Byte(8个float) 累加器存在寄存器中 需持续带宽约 107GB/s ...
📚 Session 2: Memory Hierarchy Lecturer: Anne Reinarz 🧪 Exercise 1: Sum Reduction Benchmark SIMD: 4 plateaus Scalar: 3 plateaus Performance variability caused by CPU Boosting ❓ Why SIM...
🧠 课程笔记:Session 1 - Performance Optimisation Overview 📘 教学主题概览 课程分为两部分: 前 4 周:性能优化 后 4 周:GPU 编程 课程目标:让代码跑得更快,理解和应用性能建模、测量与优化 ❓ 核心问题:代码怎么才能跑更快? 答案是:像科学实验一样对待你的程序!...
🚀 CUDA C++ 入门教程:向量加法示例 本教程将介绍如何使用 CUDA C++ 在 GPU 上实现两个向量的加法操作。 ✅ 教程流程 在主机(Host)上分配内存并初始化数据 分配设备(Device)内存 将数据从主机复制到设备 启动 CUDA 核函数(Kernel)并行执行 将结果复制回主机 验证计算结果 释放内存资源 📦 示例代码(v...
📘 计算机硬件基础知识整理 ✅ 1. CPU(中央处理器,Central Processing Unit) 计算机的大脑,负责执行程序指令和控制整个系统。 通常包含: 控制单元(Control Unit) 算术逻辑单元(ALU) 寄存器组 现代 CPU 多为 多核设计,支持多线程并发执行。 ✅ 2. ...