<硬件有关> 内存攒机认知入门,内存的选择 配置 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多字。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/477729.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

docker容器化部署springboot项目

前言 docker安装 下载官网 选择自己的系统 然后安装文档内给的命令按顺序执行即可。设置仓库,安装docker. 一、更换镜像源 一般情况下,docker原本自带的镜像网站不一定连的上,就很容易导致下载镜像失败,因此需要换源. 创建/etc/docker/daemon.json并填入数据…

2024深育杯misc2

题目描述:攻击者远程服务器监听所用的端口是( )?请提交flag,例如端口号为80,则提交Sangfor{80} 附件解压打开是一个raw文件 用volatility3工具查看ip链接信息

UI自动化测试中公认最佳的设计模式-POM

一、概念 什么是POM? POM是PageObjectModule(页面对象模式)的缩写,其目的是为了Web UI测试创建对象库。在这种模式下,应用涉及的每一个页面应该定义为一个单独的类。类中应该包含此页面上的页面元素对象和处理这些元…

L14.【LeetCode笔记】返回倒数第k个节点

目录 1.题目 2.分析 思路 代码 提交结果 1.题目 面试题 02.02. 返回倒数第 k 个节点 实现一种算法,找出单向链表中倒数第 k 个节点。返回该节点的值。 注意:本题相对原题稍作改动 示例: 输入: 1->2->3->4->5 和 …

linux-进程间通信

进程的通信是两个或多个进程实现数据的交互,让不同的进程看到同一份资源,而这份资源是由操作系统创建管理的。如果让其中一个进程来提供的话会破坏该进程的独立性,因为这个进程内部的数据可以被其他进程看到,那这个独立性就遭到了…

基于阿里云服务器部署静态的website

目录 一:创建服务器实例并connect 二:本地文件和服务器share 三:关于IIS服务器的安装预配置 四:设置安全组 五:建站流程 六:关于备案 一:创建服务器实例并connect 创建好的服务器实例在云…

Java算法OJ(10)哈希表练习

目录 1.前言 2.正文 2.1俩数之和 2.2无重复字符的最长子串 2.3罗马数字转整数 2.4整数转罗马数字 3.小结 1.前言 哈喽大家好吖,今天来分享几道哈希表相关的练习题,操作比较基础但是思想比较重要,另外有许多思路与解法都是学习参照题解…

二叉树:堆的建立和应用

在建立堆之前,我们要知道什么是树和二叉树 树 树是一种非线性的数据结构,它是由n(n>0)个结点组成的一个具有层次关系的集合,之所以把它叫做树,是因为它长得像一棵倒挂的树,也就是根在上面&…

oracle的静态注册和动态注册

oracle的静态注册和动态注册 静态注册: 静态注册 : 指将实例的相关信息手动告知 listener 侦 听 器 , 可以使用netmgr,netca,oem 以及直接 vi listener.ora 文件来实现静态注册,在动态注册不稳定时使用,特点是:稳定&…

postgresql按照年月日统计历史数据

1.按照日 SELECT a.time,COALESCE(b.counts,0) as counts from ( SELECT to_char ( b, YYYY-MM-DD ) AS time FROM generate_series ( to_timestamp ( 2024-06-01, YYYY-MM-DD hh24:mi:ss ), to_timestamp ( 2024-06-30, YYYY-MM-DD hh24:mi:ss ), 1 days ) AS b GROUP BY tim…

调试器 gdb/cgdb 的使用

一. touch mycode.c vim mycode.c cgdb 下载 Ubuntu:sudo apt-get install -y cgdb Centos: sudo yum install -y cgdb Linux 下我们编译好的代码无法直接调试 g/gcc 默认的工作模式是release模式 程序要调试,必须是debug模式,编译时…

通过DataWorks实现MaxCompute跨项目迁移

本文为您介绍如何配置不同MaxCompute项目并实现数据迁移。 背景信息 本文使用的被迁移的原始项目为教程《简单用户画像分析(MaxCompute版)》中的WorkShop2023项目,您需要再创建一个迁移目标项目,用于存放原始项目的表、资源、配置…

【Linux】安装cuda

一、安装nvidia驱动 # 添加nvidia驱动ppa库 sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt update# 查找推荐版本 sudo ubuntu-drivers devices# 安装推荐版本 sudo apt install nvidia-driver-560# 检验nvidia驱动是否安装 nvidia-smi 二、安装cudatoolkit&…

Vue.js 学习总结(14)—— Vue3 为什么推荐使用 ref 而不是 reactive

前言 ref 和 reactive 是 Vue3 中实现响应式数据的核心 API。ref 用于包装基本数据类型,而 reactive 用于处理对象和数组。尽管 reactive 似乎更适合处理对象,但 Vue3 官方文档更推荐使用 ref。 我的想法,ref就是比reactive好用,…

ctfshow-Misc入门(1-16)

misc1 查看图片得到flag misc2 1、打开文本,发现以“塒NG”开头 3、修改文件格式为png格式 4、查看图片,得到flag *遇到的问题:无法直接修改后缀名 *解决方法:需要点击文件夹,然后点击查看,将文件拓…

自动驾驶概念

1.线控底盘 由五大系统构成:线控转向、线控制动系统、线控换挡、线控油门踏板以及线控悬架。 2.自动驾驶分级 L1级别,也被称作驾驶支援阶段。在这一阶段,车辆系统能够根据驾驶环境来辅助驾驶者进行方向盘操作或减速操作中的一项&#xff0c…

【C】错误的变量定义导致sprintf()‌输出错误

问题描述 刚刚写一个用AT指令透传相关的函数,需要用到sprintf()‌拼接字符串。 结果发现sprintf()‌拼接出来的内容是错误的,简化后的代码如下: const char AT_CIPSEND_FIX_LENGTH_HEADER[11] "ATCIPSEND"; // 错误的&#xff0…

【Pytest+Yaml+Allure】实现接口自动化测试框架

一、框架思想 requestsyamlpytestallure实现接口自动化框架。结合数据驱动和分层思想,将代码与数据分离,易维护,易上手。使用yaml编写编写测试用例,利用requests库发送请求,使用pytest管理用例,allure生成…

内网渗透横向移动1

1.信息收集 (1)判断域控 shell net time /domain shell ping OWA2010CN-God.god.org (2)主机探测 浏览探测->网络探测 主机列表显示: (3)域用户收集: shell net user /domain…

C++初阶——类和对象(下)

目录 1、再探构造函数——初始化列表 2、类型转换 3、static成员 4、友元 5、内部类 6、匿名对象 7、对象拷贝时编译器的优化(了解) 1、再探构造函数——初始化列表 1. 构造函数初始化除了使用函数体内赋值,还有一种方式——初始化列表, 初始化列…