最简捷可靠的方法是使用lscpu命令:执行lscpu后查找“L1d cache”“L1i cache”“L2 cache”“L3 cache”四行,分别对应各级缓存大小,单位为KB或MB,其中L1为每核独占、L3为全芯片共享。

要在统信UOS终端中准确获取CPU各级缓存(L1数据缓存、L1指令缓存、L2缓存、L3缓存)的实际大小,必须使用能解析内核CPU拓扑结构的专用命令,不能依赖模糊的概览信息或图形界面粗略显示。
用lscpu命令直接查看各级缓存大小
这是最简捷、最可靠的方法,无需安装额外软件,输出字段明确对应各缓存层级,单位统一为KB或MB。
按Ctrl+Alt+T打开终端。
输入命令:lscpu并回车执行。
在输出结果中逐行查找以下四行:
“L1d cache” → 表示一级数据缓存(Data Cache)大小;
“L1i cache” → 表示一级指令缓存(Instruction Cache)大小;
“L2 cache” → 表示二级缓存大小;
“L3 cache” → 表示三级缓存大小。
例如看到“L1d cache: 48K”,即单个逻辑核心拥有48KB数据缓存;若显示“L3 cache: 24M”,说明全芯片共享24MB三级缓存。
注意:L1d与L1i通常数值不同,且L1缓存是按核心独占的,而L3缓存是所有核心共享的——这个区别直接影响多线程性能表现。
用grep精准过滤/proc/cpuinfo中的缓存字段
当lscpu输出被截断、或你怀疑其缓存值未完整呈现(比如某些定制内核可能省略L1i),可转向原始内核接口文件验证。
方法一:执行grep -E "L1d cache|L1i cache|L2 cache|L3 cache" /proc/cpuinfo并回车。
该命令会从/proc/cpuinfo中提取所有含缓存关键词的行,但要注意:/proc/cpuinfo默认只显示第一个逻辑CPU的信息,所以这里输出的L1/L2值仅代表单个核心的配置,L3值则通常是全局一致的。
方法二:若想确认L3是否真为全芯片共享,运行grep "cache size" /proc/cpuinfo | head -n 1,该命令只取首行“cache size”字段——它在多数Intel/AMD平台上等价于L3缓存值,但【不适用于混合架构CPU(如12代及以后Intel P/E核)】,因为这类处理器的cache size字段可能仅反映P核部分。
用lshw按类型查看CPU缓存详情
如果你需要带物理位置、缓存行大小(Cache line size)、关联度(Associativity)等工程参数,lshw是唯一能提供完整硬件描述的工具,但它需要管理员权限且输出较冗长。
第一步:确保已安装lshw。若执行sudo lshw -C cpu提示“command not found”,先运行sudo apt install lshw完成安装。
第二步:执行sudo lshw -C cpu并回车。
第三步:在输出中定位“cache”相关节点,典型字段包括:
– “size”:对应L1d、L1i、L2、L3的实际字节数(如24576表示24KB);
– “linesize”:缓存行长度,通常为64字节;
– “ways”:组相联路数,影响缓存命中率;
– “configuration”中可能标注“level=1”, “level=2”, “level=3”以区分层级。
这一步输出信息最全,但需人工匹配level字段才能确认哪段属于L1d、哪段属于L3——别把“level=1”和“type: Data”同时出现的块误认为L1i。

















