尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

算力、存力、硬件复杂度的关系

算力、存力、硬件复杂度的关系 做芯片就是在算力墙、存墙、复杂度墙三个约束下取舍固定成本、功率、面积。想省成本 → 存墙和复杂度墙低换取算力墙高。想性能高 → 三墙一起高拿钱砸、拿功耗换、拿散热填。想功耗低/能效比高 → 复杂度交给软件硬件复杂度硬件复杂度表示芯片电路整体有多复杂 是芯片物理算法逻辑的总和。组成计算单元、存储单元、控制逻辑、互联、缓存一致性、接口、安全、电源管理。增加计算单元会拉高算力硬件复杂度增加缓存、NoC、内存控制器会拉高存力硬件复杂度更复杂控制逻辑只涨硬件复杂度峰值算力和存力不变但能改善实际有效性能算力算力单位时间算术运算量FP/INT运算算力决定Ai模型单位时间最多能算多少指标运算速度算得多快峰值算力peak performance 硬件上限有效算力sustained performance 实际跑出来利用率utilization 有效 / 峰值典型 AI 推理卡 30-50%训练卡 40-60%存力存力单位时间芯片/系统把数据读进来、写出去、搬运流转的能力。存力决定物理上限时实际上能用到几成。存力只管搬数据不做算术运算指标搬得多快、装得下多少存力分为存储容量、存储带宽、访问延迟、存储层级结构、能效。容量决定能放下多大模型、多大数据集。片上寄存器、L1/L2/L3缓存片外DDR、HBM、SSD、磁盘。单位Byte。带宽最核心存力指标单位时间读写数据总量GB/s、TB/s。片内带宽缓存、SPM、片上网络NoC内部吞吐片外带宽HBM/DDR控制器内存总线访问延迟发起请求到拿到数据的时间ns级别。 缓存、内存、存储介质延迟差异巨大。存储架构能力属于存力的软‑硬件属性缓存一致性、预取、地址转换、压缩、ECC纠错、内存池化、多芯片内存共享。 这些本身不新增容量但是决定存力能不能发挥出来。三者算力存力硬件复杂度算力 ⇋ 存力算力与存力几乎互不包含。算力与存力是耦合约束——存力不足时实际有效算力会被存力卡住这是经典存储墙但峰值算力由计算单元决定存力再差也变不出算力。 存力不会产生算力但存力决定能把百分之多少的峰值算力转化为实际有效算力(Roofline 模型)。有几种情况峰值算力很高但存力很差芯片堆一大堆张量核但是内存带宽很小。 芯片纸面算力爆炸实际跑模型疯狂等待数据有效算力暴跌。峰值算力由计算单元决定存力很强算力很低高性能内存控制器芯片只是数据中转几乎没有计算单元这种没有计算需求自然不用很多计算单元。这就引出了芯片设计第一原则市场定义技术栈——看清芯片卖给谁由产品的价值推出三墙优先级。1. 先看产品形态再定取舍芯片设计师面对三堵墙是在特定约束下做帕累托最优取舍通常先定产品形态由产品的价值推出三墙优先级硬实时、低功耗 → 以存换复杂精简 SRAM不搞花哨流水线数据中心训练 → 以复杂同时换算力和存力只要能跑工程复杂度不计代价消费级 → 成本、功耗、面积三墙之间算总账多一块单元多一笔钱任何超过规格承诺的东西都叫“浪费”约束通常来自成本、功耗、面积、研发周期、软件生态。约束通常来自成本、功耗、面积、研发周期、软件生态。场景核心瓶颈取舍策略AI 推理加速数据中心存墙主导怼 HBM、近存计算容忍一定硬件复杂度边缘 AIIoT/可穿戴面积/功耗墙极致裁剪算力小 SRAM 流水线复杂度压到最低高性能计算 GPU三墙并发三者全上大算力 超大带宽 复杂调度代价是面积、功耗、成本爆炸手机 AP SoCIP 集成复杂度模块化异构CPU、GPU、NPU、ISP 拼装存墙靠缓存层级缓解单模块算力不强但全系统活好够用网络交换芯片存力吞吐为绝对核心几乎没有通用算力单元硬件复杂度集中在包处理流水线和缓存管理2. 不能只看峰值工程师盯“每瓦·每毫米”有效算力算力墙不是单纯堆 ALU 就能破——功率密度让芯片发热到物理极限暗硅效应。设计师的策略不等所有工人同时开工而是搞“轮流上岗”DVFS、时钟门控、电源域让实际热功率安全同时提升有效算力。存墙的解法从来不是容量与带宽二选一而是靠多层次存储寄存器→L1→L2→HBM→DDR让数据尽量靠近计算单元。代价是缓存一致性和预取逻辑复杂度。复杂度墙的核心不是设计难是验证难晶体管越多状态空间指数爆炸。现在大芯片 Tape-out 前验证工作量超过设计本身。工程上的取舍大量复用验证过的成熟 IP、模块化设计、减少跨时钟域。现实工程中的三类典型权衡专用 ASIC算力优先复杂度换存墙通用 CPU预算优先给复杂度用血本对冲存墙GPU / AI 训练卡三墙顶格烧钱也烧功耗① 专用 ASIC算力优先放弃部分复杂度换存墙推理芯片如谷歌 TPU v1脉动阵列获得极高算力/面积比通过数据复用降低访存次数放弃通用缓存一致性用大 SPM便签存储器由编译器显式管理数据搬运这是缓解存墙的做法让数据搬运更可控编译器显式SPM是把存墙从硬件模糊地带精确化到软件可控硬件复杂度极低但存墙压力摊给编译器团队把存墙压力精确化让程序员/编译器明确知道什么时候数据在哪儿牺牲软件灵活性换能效比② 通用 CPU复杂度永远最优先用血本对冲存墙高性能 CPU乱序执行、分支预测、多级缓存一致性——都是复杂度核心指标单核峰值算力并不惊人但实际有效算力靠复杂调度撑住存墙靠越来越大的 L2/L3 提前预取缓解设计团队 70% 精力在验证和调试这堵复杂度墙无法绕过③ GPU / AI 训练卡三墙逼近极限成本高功耗高数据中心 GPU数千个计算单元保证算力HBM 堆叠 超宽总线保证存力完整调度、线程管理、显存控制器保证组织复杂度代价芯片面积特大、功耗爆炸单卡 700W、系统散热成本高昂取舍不在芯片内部而在于散热成本和液冷的价格平衡点四种典型芯片例子芯片类型算力存力硬件复杂度特点总结简单AI推理ASIC高片上SPM带宽很高没有复杂缓存系统低计算阵列简单存储是简单SRAM没有复杂一致性、乱序逻辑。高算力、不错存力低硬件复杂度。通用高性能CPU峰值浮点算力中等缓存系统极其复杂但片外带宽一般单线程访存延迟优秀极高大量晶体管花在乱序、分支预测、缓存一致性不是用来做计算也不是单纯提升带宽。主流GPUAI显卡高HBM带来巨大片外带宽多级缓存、复杂NoC很高同时堆计算单元复杂存储互联系统三者都强。内存控制器/交换芯片0几乎没有运算单元极高专门做数据转发中高复杂互联逻辑只有存力几乎无算力。“以存换算”与“以算换存”的辩证以存换复杂增大 SRAM删掉预取逻辑降低复杂度适合嵌入式 MCU/简单 DSP以算换存1 软件预取software prefetchCPU 发指令提前把数据拉进缓存 → 多用算力指令换少等数据-2 内存解压缩在线解压芯片运行时实时解压缩数据流 → 用解码算力换带宽-3 着色器/AI 推理的 tile 计算把大矩阵切成小块在 on-chip 算完 → 多用算力换少搬数据以数据形态变化换存力用计算指令模拟压缩/解压缩搬运缓解存墙但增加算力开销内存压缩、稀疏化、量化以复杂换算力乱序执行用多的晶体管换有效算力是 CPU 的核心思想以复杂换存力多级缓存一致性协议用复杂状态机换透明的高效数据存取总结算力 决定Ai模型单位时间最多能算多少只管运算。存力 硬件存储传送数据周转逻辑体系只管存放搬运数据。硬件复杂度 硬件复杂度 物理算法逻辑 验证逻辑 软件协同逻辑的总和 。
返回列表