当前位置: 首页 > news >正文

<硬件有关> 内存攒机认知入门,内存的选择 配置 laptop PC 服务器

原因

这不是黑五吗,给我儿子买了台最便宜 ($300) DELL laptop,CPU 是 i5-1235U,但只有 8GB 内存。升级内存吧。

如何选择内存:家用范围

这里不考虑品牌,在我眼里,区别就是价格,还有所谓的物理寿命。

1. 什么是 SODIMM, UDIMM

内存模块形式

SODIMM 小型双列直插内存模块

Small Outline Dual In-line Memory Module

UDIMM 非缓冲双列直插内存模块

Unbuffered Dual In-line Memory Module

尺寸比标准 DIMM 模块小 676mm标准大小,长度通常为 1333mm
主要用途适合紧凑设备(Laptop, mini PC, NAS)适合台式机和工作站
针脚数量 PINDDR3:204 针,DDR4: 260针,DDR5: 262针DDR3: 240针,DDR4: 288针,DDR5: 288针
散热性能一般 无散热片可以配备散热片,或散热系统
unbuffered内存模块和内存控制器直接通信,而不通过额外的寄存器(缓冲器)进行中转内存模块和内存控制器直接通信,而不通过额外的寄存器(缓冲器)进行中转
ECC一般没有, 特殊型号会有带ECC  不带ECC都很常见

注: ECC  Error-Correcting Code 的缩写,用于检测和纠正数据在存储或传输过程中发生的错误。

a. ECC 内存与非 ECC 内存的区别

特性ECC 内存非 ECC 内存
功能自动检测并纠正单比特错误无错误检测和校正功能
用途服务器、工作站、关键任务设备普通台式机、笔记本
成本更高较低
性能略低稍高
兼容性需要支持 ECC 的主板和 CPU广泛支持

2. 性能参数 CAS 与 Mhz

a. CAS = CL

CAS (列地址选通延迟 Column Address Strobe Latency), 常使用 CL 来表示,,单位是 纳秒(ns)。它是 内存模块的一个关键指标,用于衡量内存响应数据请求的延迟时间。它表示从内存控制器向 RAM (暂时理解为内存上的存储芯片吧) 发送数据请求到内存实际开始传输数据之间所需的时钟周期数量。所以数值越小就越快,也会越贵。

例如:

  • CL22:表示内存需要 22 个时钟周期来响应数据请求。
  • CL20:表示内存需要 20 个时钟周期来响应数据请求。

        因此,CL20 比 CL22 更快,因为它的延迟更低。

b. 运行频率 Mhz

解释:内存模块运行时就有了 时钟速度单位:MHz=兆赫兹=百万赫兹),用来表示内存每秒能进行多少个周期的操作(能处理数据的次数)。更高的频率通常意味着内存能以更快的速度传输数据。

在同频率下:

实际延迟时间 = (CAS 延迟 ÷ 内存频率) × 2000(将频率的单位 MHz 转换为实际的时间单位:纳秒)

例子:

DDR4-3200 CL22: (22÷3200)×2000=13.75(22 ÷ 3200) × 2000 = 13.75(22÷3200)×2000=13.75 纳秒。

DDR4-3200 CL20: (20÷3200)×2000=12.5(20 ÷ 3200) × 2000 = 12.5(20÷3200)×2000=12.5 纳秒。

因此,在相同频率下CL20 的性能比 CL22 稍快

c. 1Rx8、2Rx8 和 1Rx16、2Rx16 的含义

i. Rx8 和 Rx16 的解释
  • R(Rank):表示内存的“排”数量。Rank 是内存控制器可同时访问的一组 DRAM 芯片。

    • 1R(Single Rank):单排内存。只有一组芯片可供访问。
    • 2R(Dual Rank):双排内存。有两组芯片,内存控制器可以交替访问,提高性能。
  • x8 和 x16:指的是每颗内存芯片的数据宽度:

    • x8:每颗芯片 8 位数据宽度(1 字节)。通常每排有 8 颗芯片。
    • x16:每颗芯片 16 位数据宽度(2 字节)。通常每排只有 4 颗芯片。
ii. 1Rx8 和 2Rx8 的特点
  • 1Rx8
    • 单排内存,每排有 8 颗 x8 宽度的芯片。
    • 性能好,延迟低,是主流台式机和笔记本内存的常见配置。
  • 2Rx8
    • 双排内存,每排也有 8 颗 x8 宽度的芯片(共 16 颗芯片)。
    • 优点:双排的交替访问机制使性能略优于单排(尤其是在多线程任务中)。
    • 缺点:成本略高,占用的内存插槽资源更多。
iii. Rx8 和 Rx16 的比较
参数Rx8 模块 (1Rx8/2Rx8)Rx16 模块 (1Rx16/2Rx16)
每颗芯片宽度8 位 (1 字节)16 位 (2 字节)
每排芯片数量8 颗芯片4 颗芯片
性能性能高,适合桌面和高端设备性能较低,便携设备
兼容性桌面和服务器手机

3. 双倍数据速率 DDR

现代内存大多采用 DDR(Double Data Rate) 技术,在 一个时钟周期的上升沿和下降沿 都可以传输数据,因此实际的数据传输速率是频率的两倍。

内存的技术:特点应用
SDR(Single Data Rate)DDR 内存的前,每个时钟周期只能传输一次数据Pentium 586 时代 CPU
RDRAM(Rambus Dynamic RAM)数据速率较高,但延迟较大,散热不好,当年攒电脑买过被 DDR 系列淘汰
LPDDR(Low Power DDR)DDR 内存的低功耗版本智能手机、平板电脑和超薄笔记本
GDDR(Graphics DDR)专为图形处理单元(GPU)设计的内存,与 DDR 相似, 优化并行计算与高带宽GPU、显卡、图形计算
HBM(High Bandwidth Memory)高性能计算和图形任务设计,采用 3D 堆叠技术,高带宽高端显卡,AI 这类高性能运算
SRAM(Static RAM)

静态内存,不需要像 DRAM 那样频繁刷新数据。数据保留时间长,速度快,容量小,贵

CPU 的缓存(L1、L2、L3 缓存)
NVRAM(Non-Volatile RAM)

非易失性内存,断电后数据不会丢失

固件存储(BIOS/UEFI)
MRAM(Magnetoresistive RAM)

新型非易失性内存,速度快,能耗低,寿命长,理论上可以替代 DRAM

Flash Memory不同于 DRAM,先擦除再写入,读快写慢SSD、USB
Optane Memory(3D XPoint)接近 DRAM 的速度和非易失性的特点高速缓存,加速系统存储性能

还有 486 的 DRAM, SIMM 恩,想了很久,因为用过。 编完这些,想想写到哪儿了。

举例说一下:

如:DDR4-3200 , 标称频率是 3200 MHz。 但 DDR=Double Data Rate = 双倍数据速率,实际时钟频率是 1600 MHz(数据速率是 1600 × 2 = 3200 MT/s,即每秒传输 3200 百万次数据)。

4. 内存通道的概念

  • 单通道内存(Single Channel Memory)
    • 只有一个内存通道在工作,内存控制器一次只能访问一条内存。
    • 数据传输带宽较低。
  • 双通道内存(Dual Channel Memory)
    • 两条内存同时工作,内存控制器可以同时访问两条内存。
    • 数据传输带宽翻倍,性能显著提升。

如果, 8GB+16GB 混用, 系统会运行在一种混合模式(Asymmetric Dual Channel 或 Flex Mode),内存控制器会把两条内存中的相同容量部分(8GB)运行在 双通道模式,来自 16GB 内存条多余的 8GB,只能以 单通道模式 运行。如果数据在这里,性能会降低。

5. 主机兼容的内存

a. 参考 CPU 规格

例: 我订购的这台 Laptop 用的是 i5-1235U

查看 Intel 产品页: Intel® Core™ i5-1235U Processor

Memory Specifications

Max Memory Size (dependent on memory type) 

64 GB
Memory TypesUp to DDR5 4800 MT/s
Up to DDR4 3200 MT/s
Up to LPDDR5 5200 MT/s
Up to LPDDR4x 4267 MT/s
Max # of Memory Channels 2
ECC Memory Supportedno

b. 参考 主板

这个没有 Not avilable 

c. 参考 Laptop 产品页

地址: 产品内存参考页

Mt/s: 每秒内存模块能够传输的数据操作数(MegaTransfers per second),即百万次传输, MT/s 实际上是数据传输速度的标称值。 

Memory slotsTwo SODIMM
Memory typeDDR4
Memory speed

2666 MT/s (With non-Type-C configuration)

3200 MT/s (With Type-C configuration)

NOTE:Systems with 11th Generation Intel Core (or Tiger Lake) do not offer Type-C.

Maximum memory configuration

16 GB

Minimum memory configuration4 GB
Memory size per slot4 GB, 8 GB, 16 GB
Memory configurations supported

4 GB, 1 x 4 GB, DDR4

8 GB, 1 x 8 GB, DDR4

12 GB, 1 x 4 GB + 1 X 8 GB, DDR4

16 GB, 1 x 16 GB, DDR4

8 GB, 2 x 4 GB, DDR4, dual-channel

16 GB, 2 x 8 GB, DDR4, dual-channel

d. 分析1: 最大内存数量

组装厂产品页,写的最大内存是 16GB, 但 Intel 说可以到 64GB,我更相信 Intel。 

e. 分析2: 运行频率 

MT/s 和 MHz 的关系: 在 DDR 内存中,MT/s 是实际时钟频率 (MHz) 的两倍: 

MT/s=2×MHz

举例

还是以 DDR4-3200 内存:

3200 MT/s:表示每秒可以进行 3200 万次数据传输。

1600 MHz:表示时钟频率为 1600 MHz,时钟每秒产生 1600 万个周期。

两者的关系:3200 MT/s=2×1600 MHz3200  (在 2.a 里,明白为什么有 2000), 前面说过“DDR4-3200 , 标称频率是 3200 MHz。 但 DDR=Double Data Rate = 双倍数据速率,实际时钟频率是 1600 MHz”, 所以下面说的,与这段无关

f. 内存运行频率与 CPU 关系

既然 CPU 支持了 DDR4 DDR5, 只要是安装的内存,是这个类型的 DDR4/5,应该都能用,只是上限速度被限制在, 如:DDR4-3200 MT/s.    3200MHz。  但下限是无所谓的。

例1: 

CPU: Up to DDR4 3200 MT/s

如果我有 SODIMM DDR4-2400MHz 内存,是可以用的, 只是因为内存“频率” 低,会与 CPU 之间的通信保持在 2400Mt/s, 其整体性能,要比安装 DDR4-2600MHz 的轻微的慢点儿。 

例2:

CPU: Up to DDR4 3200 MT/s

如果我有 SODIMM DDR4-4000MHz  内存,不会因为内存“频率” 太高,也是可以用的, 它只能与 CPU 之间的通信保持在 3200Mt/s, 其整体性能,不会因安装 DDR4-3600MHz 变快的。 

总结:

实例操作1:

条件:

DELL 组装厂的设计,只能使用 SODIMM DDR4 类型内存。

Intel CPU 支持 DDR4 上限速度 3200MT/s 

如果有 CL22 CL18 可以选择, 想速度最快,最接近 CPU 的上限,

就用:

SODIMM DDR4-3200MHz CL18 内存条

实例操作2:

条件:

如果你有旧电脑用的是 SODIMM DDR4-1600MHz,想装在这个笔记本上。 CPU 会以 1600MT/s 与内存通讯,性能会比用 SODIMM DDR4-3200MHz

两种内存的带宽差距:

内存带宽计算公式: 内存带宽 (GB/s) = 频率 (MT/s)×总位宽 (位)​ / 8x1000

频率DDR4-1600 (1600 MT/s)DDR4-3200 (3200 MT/s)
实际时钟频率800 MHz1600 MHz
总位宽64 位64 位
带宽(1600×64)÷8=12.8 GB/s(3200×64)÷8=25.6 GB/s

结果: DDR4-3200 的内存带宽是 DDR4-1600 的 两倍(25.6 GB/s vs 12.8 GB/s)

实际性能差距:

轻量任务(上网 看片儿) 估计有10%
多任务,游戏,视频编辑这类需要内存带宽的,可能会到40%甚至50%的性能差距

想起来了,内存还有个 1Rx8、2Rx8 、1Rx16、2Rx16 这个标识。添加到 2.c 

实例3:

总之, 想要 PC 性能到极致,又不多花冤钱。 

  1. 看主板支持的内存模块形式 如: SODIMM / UDIMM。
  2. 主板支持哪代 DDR。
  3. 看 CPU 支持的 DDR 是哪代。
  4. 在两个里选出一样的,最高代数的。
  5. 使用 CPU 主板 支持的最大主频 MT/s MHz
  6. 选 CAS/CL 数字最低的
  7. 要双插内存
  8. 两条内存要一样容量
  9. BIOS 要检查设置
  10. 想到再补充

最近刷抖音,看到那些攒电脑的,或多或少的利用认知差距,挣钱。 让我这 爱吃P 工程师,(DY 账号被永久禁言)看着起急。在这里磊了5000多字。

相关文章:

<硬件有关> 内存攒机认知入门,内存的选择 配置 laptop PC 服务器

原因 这不是黑五吗,给我儿子买了台最便宜 ($300) DELL laptop,CPU 是 i5-1235U,但只有 8GB 内存。升级内存吧。 如何选择内存:家用范围 这里不考虑品牌,在我眼里,区别就是价格,还有所谓的物理…...

基于springboot的来访管理系统的设计与实现

文章目录 项目介绍主要功能截图:部分代码展示设计总结项目获取方式🍅 作者主页:超级无敌暴龙战士塔塔开 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 🍅文末获取源码联系🍅 项目介绍 基于springboot的来访管理系统的设计与实…...

window11编译pycdc.exe

一、代码库和参考链接 在对python打包的exe文件进行反编译时,会使用到uncompyle6工具,但是这个工具只支持python3.8及以下,针对更高的版本的python则不能反编译。 关于反编译参考几个文章: Python3.9及以上Pyinstaller 反编译教…...

11.22.2024 面试后记

Watching those fucking ap’s paper is bullshit and wasting your time. you’d mother fucker directly say I’m not qualified. if I’m qualified, how could I see u at this place. your dad is alread being rich and enjoy the world. 抽了一周时间去看那些教授的文章…...

Bug Fix 20241122:缺少lib文件错误

今天有朋友提醒才突然发现 gitee 上传的代码存在两个很严重,同时也很低级的错误。 因为gitee的默认设置不允许二进制文件的提交, 所以PH47框架下的库文件(各逻辑层的库文件),以及Stm32Cube驱动的库文件都没上传到Gi…...

Pinia 实战教程:构建高效的 Vue 3 状态管理系统

前言 在前端开发中,状态管理已成为必不可少的一部分,Vue.js 生态系统中提供了多种状态管理解决方案。Pinia 是 Vue 3 推出的一种全新的状态管理库,旨在取代 Vuex,提供更简洁的 API、更优雅的 TypeScript 支持以及更高效的性能表现…...

springboot3如何集成knife4j 4.x版本及如何进行API注解

1. 什么是Knife4j knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案, 取名knife4j是希望她能像一把匕首一样小巧,轻量,并且功能强悍!knife4j的前身是swagger-bootstrap-ui,swagger-bootstrap-ui自1.9.6版本后,正式更名为knife4j为了契合微服务的架构发展,由于原来…...

区块链讲解

区块链技术是一种分布式账本技术,其应用场景和优势可以总结如下: 金融服务:区块链可以用于支付、跨境汇款、证券交易、贷款等金融服务领域,通过去中心化的方式实现快速、低成本、安全的交易。 物联网:区块链可以用于物…...

使用eclipse构建SpringBoot项目

我这里用eclipse2018版本做演示,大家有需要的可以下载Eclipse Downloads | The Eclipse Foundation 1.打开eclipse,选择存放代码的位置 2.选择 file >> new >> project >> 选择springboot文件下的 spring starter project 2.这里选择N…...

uniapp input限制输入负数,以及保留小数点两位.

简单处理的方式 限制输入负数,以及保留小数点两位.: <input type"number" placeholder"请输入" v-model"num"input"numnum.toString().replace(/\-/g,).match(/^\d(?:\.\d{0,2})?/)" /> 可以输入负数,保留两位小数点,把rep…...

《FreeRTOS任务删除篇》

任务删除函数 源码1. 进入临界区1.1 第一步1.2 第二步1.3 第三步1.4 第四步 2. 获取待删除任务的任务控制块TCB3. 从就绪/延迟列表中删除任务4. 从事件列表中删除任务5. 如果待删除任务是当前运行的任务6. 如果待删除任务是其它任务7. 退出临界区7.1 第一步7.2 第二步7.3 第三步…...

递归算法专题一>Pow(x, n)

题目&#xff1a; 解析&#xff1a; 代码&#xff1a; public double myPow(double x, int n) {return n < 0 ? 1.0 / pow(x,-n) : pow(x,n); }private double pow(double x, int n){if(n 0) return 1.0;double tmp pow(x,n / 2);return n % 2 0 ? tmp * tmp : tmp …...

数据结构第一讲

数据结构定义 算法的定义 什么是好算法&#xff1f; 空间复杂度 时间复杂度 例子1 打印1到N之间的正整数 有递归和循环两种方法实现。 但是在数字变大后&#xff0c;递归的方法会导致内存占用过多而崩溃。 而循环则不会 例子2 写程序给定多项式在X处的值 从里往外算的算…...

SHELL笔记(循环)

在 Shell 编程中&#xff0c;循环结构是极为重要的一部分&#xff0c;它能够让我们轻松地重复执行特定的代码块&#xff0c;从而高效地处理各种重复性任务。本文将详细介绍 Shell 中常见的循环结构&#xff0c;包括 for 循环、while 循环和 until 循环&#xff0c;并通过具体的…...

SpringBoot多文件上传

多文件上传是在单文件上传的基础上修改而来&#xff0c;不了解单文件上传可以参考上一篇。以下在将修改部分展示如下&#xff1a; 一、修改upload.html文件&#xff1a; <!DOCTYPE html> <html> <head> <meta charset"UTF-8"> <title&g…...

MyBatis-数据库连接池、属性文件config.properties、类名简化、MyBatis的整体架构

一、数据库连接池 1、概述 存储实现创建好的连接对象的容器 2、优点 避免了频繁创建和销毁连接对象 3、使用 在使用到连接对象时可在数据库连接池中直接获取 4、实现 不需要我们去实现,框架和一些第三方有现成的组件&#xff08;C3P0、ADCP、德鲁伊(阿里巴巴)&#xff…...

Flink-Source的使用

Data Sources 是什么呢&#xff1f;就字面意思其实就可以知道&#xff1a;数据来源。 Flink 做为一款流式计算框架&#xff0c;它可用来做批处理&#xff0c;也可以用来做流处理&#xff0c;这个 Data Sources 就是数据的来源地。 flink在批/流处理中常见的source主要有两大类…...

C0031.在Clion中使用mingw编译器来编译opencv的配置方法

mingw编译器编译opencv库的配置方法...

Android——连接MySQL(Java版)

Android——连接MySQL(Java版) 目录&#xff1a; Android——连接MySQL(Java版)一、JDBC1、什么是JDBC2、载入JDBC3、创建JDBC的工具类 二、使用数据库 一、JDBC 1、什么是JDBC JDBC全称Java Database Connectivity&#xff0c;译为Java语言连接数据库&#xff0c;是sun公司制…...

「四」体验HarmonyOS端云一体化开发模板——工程目录结构与云侧工程一键部署AGC云端

关于作者 白晓明 宁夏图尔科技有限公司董事长兼CEO、坚果派联合创始人 华为HDE、润和软件HiHope社区专家、鸿蒙KOL、仓颉KOL 华为开发者学堂/51CTO学堂/CSDN学堂认证讲师 开放原子开源基金会2023开源贡献之星 「目录」 「一」HarmonyOS端云一体化概要 「二」体验HarmonyOS端云一…...

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…...

【网络】每天掌握一个Linux命令 - iftop

在Linux系统中&#xff0c;iftop是网络管理的得力助手&#xff0c;能实时监控网络流量、连接情况等&#xff0c;帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...

Cursor实现用excel数据填充word模版的方法

cursor主页&#xff1a;https://www.cursor.com/ 任务目标&#xff1a;把excel格式的数据里的单元格&#xff0c;按照某一个固定模版填充到word中 文章目录 注意事项逐步生成程序1. 确定格式2. 调试程序 注意事项 直接给一个excel文件和最终呈现的word文件的示例&#xff0c;…...

进程地址空间(比特课总结)

一、进程地址空间 1. 环境变量 1 &#xff09;⽤户级环境变量与系统级环境变量 全局属性&#xff1a;环境变量具有全局属性&#xff0c;会被⼦进程继承。例如当bash启动⼦进程时&#xff0c;环 境变量会⾃动传递给⼦进程。 本地变量限制&#xff1a;本地变量只在当前进程(ba…...

MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例

一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility

Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility 1. 实验室环境1.1 实验室环境1.2 小测试 2. The Endor System2.1 部署应用2.2 检查现有策略 3. Cilium 策略实体3.1 创建 allow-all 网络策略3.2 在 Hubble CLI 中验证网络策略源3.3 …...

测试markdown--肇兴

day1&#xff1a; 1、去程&#xff1a;7:04 --11:32高铁 高铁右转上售票大厅2楼&#xff0c;穿过候车厅下一楼&#xff0c;上大巴车 &#xffe5;10/人 **2、到达&#xff1a;**12点多到达寨子&#xff0c;买门票&#xff0c;美团/抖音&#xff1a;&#xffe5;78人 3、中饭&a…...

家政维修平台实战20:权限设计

目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系&#xff0c;主要是分成几个表&#xff0c;用户表我们是记录用户的基础信息&#xff0c;包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题&#xff0c;不同的角色&#xf…...

【HarmonyOS 5 开发速记】如何获取用户信息(头像/昵称/手机号)

1.获取 authorizationCode&#xff1a; 2.利用 authorizationCode 获取 accessToken&#xff1a;文档中心 3.获取手机&#xff1a;文档中心 4.获取昵称头像&#xff1a;文档中心 首先创建 request 若要获取手机号&#xff0c;scope必填 phone&#xff0c;permissions 必填 …...

听写流程自动化实践,轻量级教育辅助

随着智能教育工具的发展&#xff0c;越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式&#xff0c;也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建&#xff0c;…...