报价
HOME
报价
正文内容
nand flash page size SSD通道知识,谨防遇到大号U盘
发布时间 : 2024-10-06
作者 : 小编
访问数量 : 23
扫码分享至微信

SSD通道知识,谨防遇到大号U盘

SSD的性能主要取决于主控、NAND Flash、容量、缓存大小。

相同类型,相同容量,相同制程的各原厂的NAND Flash其实性能相差无几。在性能上,SLC>MLC>TLC,3D NAND同样如此。

缓存也是影响SSD性能的重要因素。缓存的大小和实际的“SSD容量”及相应的“SSD主控”相关。

主控相当于SSD的大脑。如果NAND儿子,主控就是爹。如果NAND是块田地,主控就是那拉车的牛。NAND Flash负责SSD的储存,主控负责SSD的功能和工作方式等。SSD是由多个NAND Flash组成的阵列,而主控就负责管理这个阵列,跟电脑的CPU作用相似,主要负责调度、协调、控制SSD系统。主控芯片一方面负责合理调配数据在各个闪存芯片上的负荷,

另一方面承担了整个数据中转,连接闪存芯片和外部SATA接口。除此之外,主控还负责ECC纠错、耗损平衡、坏块映射、读写缓存、垃圾回收以及加密等一系列的功能算法。

由此可见SSD主控的重要性。我们今天要讲的是SSD主控的通道。

这是一张光威SSD的内部图。正方形的芯片为主控,下面是一个NAND阵列。

我们上面讲了SSD主控的作用。主控要对Nandflash发挥作用,就需要通道。主控和Nandflash是通过通道建立了联系。通道的数量由主控和Nandflash决定。它对于主控,对于SSD是非常重要的。

早期的主控通道数都是8通道,有的甚至10通道,这与当时的Nandflash技术有关。当时的Nandflash有很大一部分是异步的Flash(Async),带宽只有50Mbps且Flash的page size一般只有4KB,8KB,只有8/10通道的主控才能发挥SSD在SATA 3.0接口下的最强效能。特点是:连续读写速度快,但是随即读写慢。

随着Nandflash技术进一步成熟,各主控厂商开始设计4通道的主控,Flash带宽也持续提升,普遍都是200Mbps,部分达到400Mbps,4通道的SSD已能够满足SATA3.0接口下SSD的性能。所以现在4通道基本成为主控的标准。而部分8通道,也必然采用了双主控。

2通道和1通道的主控主要应用于U盘,因为TF卡对小文件没有太高要求,对产品的稳定性要求也不高。但是,少部分企业却热衷于用2通道主控来做SSD,无非成本方面的考虑,把SSD依然当成U盘或TF卡来做。这种SSD无论使用性能和安全性都无法得到保障。

JEDEC(国际固态技术协会)呼吁,消费级SSD应该坚守四通道的主流。

在去年国内第一届固态硬盘技术及未来发展研讨峰会上,国内知名SSD品牌光威、七彩虹、阿斯加特,全球知名SSD主控大厂慧荣科技及海力士、镁光知名闪存大厂等,共同解读未来SSD技术趋势,也同时再次重申了消费级SSD四通道主流地位。另外这次大会过后,光威、阿斯加特还和镁光、慧荣等建立了更加长久的合作关系。

去年至今,晶圆紧缺,SSD的成本和价格都突飞猛进。这也导致了个别企业,为了追求利益的最大化,而把SSD当作U盘来做。这中大号U盘再速度、安全性上都非常低下,掉盘、掉速,频繁,严重的损害了消费者的利益。价格高,质量欠佳,SSD市场可说是乱象纷呈。

国内著名SSD厂家光威表示,只有坚持SSD的性价比,以更专业的品质,更好的性能,更低的价格,才能稳定SSD市场,改变各种乱象,给消费者带来真正满意放心的产品。

光威所有系列的SSD基本都采用了美光MLC闪存,慧荣(SMI)四通道主控,读写性能、安全性能优秀,并且价格实惠。另外,光威还承诺3-5年,只换不修。

只有优秀的产品,才有强烈的自信。只有真材实料,才实实在在。也只有对消费者负责的产品,才能深受消费者的喜爱。

在这里提醒大家,选择SSD时,切勿生冷不忌,选择小厂SSD产品,谨防遇见大号U盘。

Linux 中的“大内存页”(hugepage)是个什么?

编译自: https://kerneltalks.com/services/what-is-huge-pages-in-linux/

作者: Shrikant Lavhate

译者: DarkSun

学习 Linux 中的 大内存页(hugepage)。理解什么是“大内存页”,如何进行配置,如何查看当前状态以及如何禁用它。

本文中我们会详细介绍 大内存页(huge page),让你能够回答:Linux 中的“大内存页”是什么?在 RHEL6、RHEL7、Ubuntu 等 Linux 中,如何启用/禁用“大内存页”?如何查看“大内存页”的当前值?

首先让我们从“大内存页”的基础知识开始讲起。

Linux 中的“大内存页”是个什么玩意?

“大内存页”有助于 Linux 系统进行虚拟内存管理。顾名思义,除了标准的 4KB 大小的页面外,它们还能帮助管理内存中的巨大的页面。使用“大内存页”,你最大可以定义 1GB 的页面大小。

在系统启动期间,你能用“大内存页”为应用程序预留一部分内存。这部分内存,即被“大内存页”占用的这些存储器永远不会被交换出内存。它会一直保留其中,除非你修改了配置。这会极大地提高像 Oracle 数据库这样的需要海量内存的应用程序的性能。

为什么使用“大内存页”?

在虚拟内存管理中,内核维护一个将虚拟内存地址映射到物理地址的表,对于每个页面操作,内核都需要加载相关的映射。如果你的内存页很小,那么你需要加载的页就会很多,导致内核会加载更多的映射表。而这会降低性能。

使用“大内存页”,意味着所需要的页变少了。从而大大减少由内核加载的映射表的数量。这提高了内核级别的性能最终有利于应用程序的性能。

简而言之,通过启用“大内存页”,系统具只需要处理较少的页面映射表,从而减少访问/维护它们的开销!

如何配置“大内存页”?

运行下面命令来查看当前“大内存页”的详细内容。

root@kerneltalks # grep Huge /proc/meminfo

AnonHugePages: 0 kB

HugePages_Total: 0

HugePages_Free: 0

HugePages_Rsvd: 0

HugePages_Surp: 0

Hugepagesize: 2048 kB

从上面输出可以看到,每个页的大小为 2MB(Hugepagesize),并且系统中目前有 0 个“大内存页”(HugePages_Total)。这里“大内存页”的大小可以从 2MB 增加到 1GB。

运行下面的脚本可以知道系统当前需要多少个巨大页。该脚本取之于 Oracle。

#!/bin/bash

#

# hugepages_settings.sh

#

# Linux bash script to compute values for the

# recommended HugePages/HugeTLB configuration

#

# Note: This script does calculation for all shared memory

# segments available when the script is run, no matter it

# is an Oracle RDBMS shared memory segment or not.

# Check for the kernel version

KERN=`uname -r | awk -F. '{ printf("%d.%d\n",$1,$2); }'`

# Find out the HugePage size

HPG_SZ=`grep Hugepagesize /proc/meminfo | awk {'print $2'}`

# Start from 1 pages to be on the safe side and guarantee 1 free HugePage

NUM_PG=1

# Cumulative number of pages required to handle the running shared memory segments

for SEG_BYTES in `ipcs -m | awk {'print $5'} | grep "[0-9][0-9]*"`

do

MIN_PG=`echo "$SEG_BYTES/($HPG_SZ*1024)" | bc -q`

if [ $MIN_PG -gt 0 ]; then

NUM_PG=`echo "$NUM_PG+$MIN_PG+1" | bc -q`

fi

done

# Finish with results

case $KERN in

'2.4') HUGETLB_POOL=`echo "$NUM_PG*$HPG_SZ/1024" | bc -q`;

echo "Recommended setting: vm.hugetlb_pool = $HUGETLB_POOL" ;;

'2.6' | '3.8' | '3.10' | '4.1' ) echo "Recommended setting: vm.nr_hugepages = $NUM_PG" ;;

*) echo "Unrecognized kernel version $KERN. Exiting." ;;

esac

# End

将它以 hugepages_settings.sh 为名保存到 /tmp 中,然后运行之:

root@kerneltalks # sh /tmp/hugepages_settings.sh

Recommended setting: vm.nr_hugepages = 124

你的输出类似如上结果,只是数字会有一些出入。

这意味着,你系统需要 124 个每个 2MB 的“大内存页”!若你设置页面大小为 4MB,则结果就变成了 62。你明白了吧?

配置内核中的“大内存页”

本文最后一部分内容是配置上面提到的 内核参数 [1] ,然后重新加载。将下面内容添加到 /etc/sysctl.conf 中,然后输入 sysctl -p 命令重新加载配置。

vm.nr_hugepages=126

注意我们这里多加了两个额外的页,因为我们希望在实际需要的页面数量之外多一些额外的空闲页。

现在,内核已经配置好了,但是要让应用能够使用这些“大内存页”还需要提高内存的使用阀值。新的内存阀值应该为 126 个页 x 每个页 2 MB = 252 MB,也就是 258048 KB。

你需要编辑 /etc/security/limits.conf 中的如下配置:

soft memlock 258048

hard memlock 258048

某些情况下,这些设置是在指定应用的文件中配置的,比如 Oracle DB 就是在 /etc/security/limits.d/99-grid-oracle-limits.conf 中配置的。

这就完成了!你可能还需要重启应用来让应用来使用这些新的巨大页。

如何禁用“大内存页”?

“大内存页”默认是开启的。使用下面命令来查看“大内存页”的当前状态。

root@kerneltalks# cat /sys/kernel/mm/transparent_hugepage/enabled

[always] madvise never

输出中的 [always] 标志说明系统启用了“大内存页”。

若使用的是基于 RedHat 的系统,则应该要查看的文件路径为 /sys/kernel/mm/redhat_transparent_hugepage/enabled。

若想禁用“大内存页”,则在 /etc/grub.conf 中的 kernel 行后面加上 transparent_hugepage=never,然后重启系统。

via: https://kerneltalks.com/services/what-is-huge-pages-in-linux/

作者:Shrikant Lavhate[2] 译者:lujun9972 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

点击“了解更多”可访问文内链接

相关问答

rs. pagesize =iCount-( page -1)*rs. pagesize 这句话是什么意思?...

[最佳回答]Objectrs.pagesize--每页中的字节数(或行数,或...,要查rs)fori=1tors.pagesize--循环语句,i从1循环到..字节数(或行数).Obje...

yaffs是什么品牌?

yaffs文件系统,不是什么品牌YAFFS是Aleph1的工程师CharlesManning开发的NANDFlash文件系统。YAFFS1和YAFFS2主要差异还是在于PAGE读写s...

standardmargins,generallyonepagepersection.这个是我们...

[回答]字体大小12单倍行距或双倍行距标准的页面设置每部分一页

PDF图片如何与页面相符?

如果你在PDF文档中插入的图片与页面不符,你可以通过以下方法来解决:1.重新插入图片:在PDF文档中,选择需要替换的图片,然后删除它。再次插入图片,确保...

【英语翻译Pages-72 Size (opened):420x297mmSize(closed):210...

[最佳回答]看来是印书的么.内页:72页;打开尺寸420*297;合上尺寸210*297;双面4色印刷;材料150g(你那什么纸没听过).封面:特殊形状模切;合上尺寸211*297;单面5色...

exp导出用法?

Oracle导出程序Exp的使用具体过程Oracle的导出实用程序(Exportutility)允许从数据库提取数据,并且将数据写入操作系统文件。exp使用的基本格式:exp[username.....

oppo手机滚动截屏怎么弄_懂视生活_懂你更懂生活

iPhone11系统版本:EMUI10.1、iOS13.6软件版本:null华为手机截长图的方法:1.点击工具栏的截屏按钮。2.点击截屏图片。3.点击滚动截屏图标。4.点击屏幕即可完成...

db2如何更改表空间页数?

要更改DB2表空间的页面数,可以使用ALTERTABLESPACE命令。以下是更改表空间页数的步骤:1.首先,使用以下命令连接到DB2数据库:```db2connectto要更改DB2表.....

英语翻译Pages - 72 Size (opened):420 x 297mmSize (closed)...

看来是印书的么.内页:72页;打开尺寸420*297;合上尺寸210*297;双面4色印刷;材料150g(你那什么纸没听过).封面:特殊形状模切;合上尺寸211*297;单面5...

我要洗寸照一版八张用英语怎么说?_作业帮

[回答]我要洗寸照一版八张.I'dliketohavethephotographicplate(底片)developedto8copiesperpagewith1inch...

 张琳苖  ancii 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部