我正在运行一些(不太新的)Linux 发行版。我想确定我的系统的内存带宽是多少 - 不是我可以从基准测试/测试中获得的有效带宽 - 而是名义上的带宽,给定我的主板、CPU 插槽、内存通道和 RAM DIMM。
我应该提到的是,当我试图在脑海中弄清楚这一点时,我总是把计算搞混了:千兆字节与千兆位、每秒事务数与每秒字节数、通道数量与 DIMM 数量等。
注意:如果可能,假设我没有安装 lshw 或 inxi 等实用程序。
答案1
从技术上讲,您所问的问题不一定很容易在这里解释为完整的答案,告诉您如何进行数学计算以获得名义上的基于硬件功能的性能数字。您必须获取硬件(主板)型号并从制造商处查找规格,然后,如果他们确实发布了您要查找的数字,请自己进行一些纸质计算。
如果您无法物理访问该计算机,则第一步是运行dmidecode
并使用该计算机报告的信息以及互联网来收集信息。
dmidecode
输出和功能可能因 Linux 发行版和硬件而异,但在 RHEL-7.9 和戴尔服务器下,它会显示 BIOS 版本、CPU 信息、电压和时钟速度、每个 DIMM 插槽以及是否已填充以及 RAM 型号以及序列号和电压,例如:
Handle 0x1129, DMI type 17, 84 bytes
Memory Device
Array Handle: 0x1000
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 32 GB
Form Factor: DIMM
Set: 7
Locator: D6
Bank Locator: Not Specified
Type: DDR4
Type Detail: Synchronous Registered (Buffered)
Speed: 2933 MT/s
Manufacturer: 00AD063200AD
Serial Number: 123456
Asset Tag: 123456
Part Number: HMA84GR7JJR4N-WM
Rank: 2
Configured Memory Speed: 2933 MT/s
Minimum Voltage: 1.2 V
Maximum Voltage: 1.2 V
Configured Voltage: 1.2 V
Memory Technology: DRAM
Memory Operating Mode Capability: Volatile memory
Firmware Version: Not Specified
Module Manufacturer ID: Unknown
Module Product ID: Unknown
Memory Subsystem Controller Manufacturer ID: Unknown
Memory Subsystem Controller Product ID: Unknown
Non-Volatile Size: None
Volatile Size: 32 GB
Cache Size: None
Logical Size: None
从这样的信息中,我的服务器有 48 个来自 dmidecode 的 DIMM 输出,其中只有 24 个装有 RAM,我认为您会用它来得出标称带宽,或理论最大带宽?数字。这并不一定容易,就像评论中所说的那样,考虑到所有各种瓶颈以及可能发生的情况,这可能并不那么现实......这就是您要运行的地方/原因即时的linux 内核,所以如果你对这类事情感兴趣的话,它具有一致性和可重复性。