CPU は Intel が指定した以上の RAM をサポートできますか?

CPU は Intel が指定した以上の RAM をサポートできますか?

私は、i7-8550U CPU を搭載した複数の miniPC システムをオンラインで見てきました。これらのシステムでは、最大 64 GB の RAM を搭載したシステムを購入できます。intel-ark ページと wikichip では、CPU は最大 32 GB の RAM で指定されています。

https://www.amazon.de/dp/B08X2N5VN6

https://eu.protectli.com/product/fw6e/

https://ark.intel.com/content/www/us/en/ark/products/122589/intel-core-i78550u-processor-8m-cache-up-to-4-00-ghz.html

https://en.wikichip.org/wiki/intel/core_i7/i7-8550u

どうしてこんなことが可能なのでしょうか? CPU はメーカーが指定した以上の RAM ページを管理できないのだと思います。おそらく 32 GB しか検出されず、販売者が追加の RAM に対して追加料金を請求しているのではないでしょうか?

答え1

全体的な質問に答えると、「Intel Ark は通常は正しいが、常に正しいわけではない。」

製品シートの仕様の一部は「通常の場合」とみなすことができますが、外部要因によってパフォーマンスが制限されたり、向上したりすることがあります。たとえば、Intel i7-8550U では、基本クロック速度が 1.80GHz と記載されています。ただし、サポート ハードウェアを使用してオーバークロックすることで、この制限を超えることができます。

Intel i7-8550Uに関する具体的な質問に答えると、一部のIntel第8世代Uシリーズプロセッサはネイティブで64GBのメモリをサポートする可能性があります。[1]

[1]、セクション2.1.1.1、表2-5より引用:

サポートされている DDR4 非 ECC SODIMM モジュール構成 (H/U プロセッサ ライン)

生カードバージョン DIMM容量 DRAMデバイス技術 DRAM 構成 DRAMデバイス数 ランク数 行/列アドレスビット数 DRAM 内のバンク数 ページサイズ
32GB 16ギガバイト 2048M×8 16 2 17/10 16 8K

このような 32GB DIMM を 2 つ使用することで、64GB のシステム メモリを実現できます。

また、実際に確認するために、2x32GB システム メモリを検出して利用するために参照している正確なハードウェア構成は次のとおりです。

環境は、Debian Linuxを実行している前述のハードウェアデバイスの1つです。

root@debian:~# dmidecode -qs system-product-name
FW6E

root@debian:~# uname -a
Linux debian 5.10.0-0.bpo.3-amd64 #1 SMP Debian 5.10.13-1~bpo10+1 (2021-02-11) x86_64 GNU/Linux

CPUはi7-8550U

root@debian:~# dmidecode -qs processor-version
Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz

メモリは2x32GB DIMM

root@debian:~# dmidecode
Handle 0x0035, DMI type 16, 23 bytes
Physical Memory Array
        Location: System Board Or Motherboard
        Use: System Memory
        Error Correction Type: None
        Maximum Capacity: 64 GB
        Error Information Handle: Not Provided
        Number Of Devices: 4

Handle 0x0036, DMI type 17, 40 bytes
Memory Device
        Array Handle: 0x0035
        Error Information Handle: Not Provided
        Total Width: 64 bits
        Data Width: 64 bits
        Size: 32 GB
        Form Factor: SODIMM
        Set: None
        Locator: ChannelA-DIMM0
        Bank Locator: BANK 0
        Type: DDR4
        Type Detail: Synchronous Unbuffered (Unregistered)
        Speed: 2667 MT/s
        Manufacturer: Kingston
        Serial Number: C792668A
        Asset Tag: 9876543210
        Part Number: 9905744-067.A00G    
        Rank: 2
        Configured Memory Speed: 2400 MT/s
        Minimum Voltage: 1.2 V
        Maximum Voltage: 1.2 V
        Configured Voltage: 1.2 V

Handle 0x0037, DMI type 17, 40 bytes
Memory Device
        Array Handle: 0x0035
        Error Information Handle: Not Provided
        Total Width: Unknown
        Data Width: Unknown
        Size: No Module Installed
        Form Factor: Unknown
        Set: None
        Locator: ChannelA-DIMM1
        Bank Locator: BANK 1
        Type: Unknown
        Type Detail: None

Handle 0x0038, DMI type 17, 40 bytes
Memory Device
        Array Handle: 0x0035
        Error Information Handle: Not Provided
        Total Width: 64 bits
        Data Width: 64 bits
        Size: 32 GB
        Form Factor: SODIMM
        Set: None
        Locator: ChannelB-DIMM0
        Bank Locator: BANK 2
        Type: DDR4
        Type Detail: Synchronous Unbuffered (Unregistered)
        Speed: 2667 MT/s
        Manufacturer: Kingston
        Serial Number: C2A27761
        Asset Tag: 9876543210
        Part Number: 9905744-031.A00G    
        Rank: 2
        Configured Memory Speed: 2400 MT/s
        Minimum Voltage: 1.2 V
        Maximum Voltage: 1.2 V
        Configured Voltage: 1.2 V

Handle 0x0039, DMI type 17, 40 bytes
Memory Device
        Array Handle: 0x0035
        Error Information Handle: Not Provided
        Total Width: Unknown
        Data Width: Unknown
        Size: No Module Installed
        Form Factor: Unknown
        Set: None
        Locator: ChannelB-DIMM1
        Bank Locator: BANK 3
        Type: Unknown
        Type Detail: None

Handle 0x003A, DMI type 19, 31 bytes
Memory Array Mapped Address
        Starting Address: 0x00000000000
        Ending Address: 0x00FFFFFFFFF
        Range Size: 64 GB
        Physical Array Handle: 0x0035
        Partition Width: 2
[...]
Handle 0x003F, DMI type 20, 35 bytes
Memory Device Mapped Address
        Starting Address: 0x00000000000
        Ending Address: 0x007FFFFFFFF
        Range Size: 32 GB
        Physical Device Handle: 0x0036
        Memory Array Mapped Address Handle: 0x003A
        Partition Row Position: Unknown
        Interleave Position: 1
        Interleaved Data Depth: 2

Handle 0x0040, DMI type 20, 35 bytes
Memory Device Mapped Address
        Starting Address: 0x00800000000
        Ending Address: 0x00FFFFFFFFF
        Range Size: 32 GB
        Physical Device Handle: 0x0038
        Memory Array Mapped Address Handle: 0x003A
        Partition Row Position: Unknown
        Interleave Position: 2
        Interleaved Data Depth: 2
[...]

メモリはOSによって割り当てられる

root@debian:~# free -h
              total        used        free      shared  buff/cache   available
Mem:           62Gi       156Mi        62Gi        24Mi       486Mi        61Gi

memtesterはこれが間違いではないことを確認し、61Giのメモリを確保しました

root@debian:~# memtester 61Gi
memtester version 4.3.0 (64-bit)
Copyright (C) 2001-2012 Charles Cazabon.
Licensed under the GNU General Public License version 2 (only).

pagesize is 4096
pagesizemask is 0xfffffffffffff000
want 62464MB (65498251264 bytes)
got  62464MB (65498251264 bytes), trying mlock ...locked.
Loop 1:
  Stuck Address       : ok         
  Random Value        : ok
  Compare XOR         : ok
  Compare SUB         : ok
  Compare MUL         : ok
  Compare DIV         : ok
  Compare OR          : ok
  Compare AND         : ok
  Sequential Increment: ok
  Solid Bits          : ok         
  Block Sequential    : ok         
  Checkerboard        : ok         
  Bit Spread          : setting 109^C
(Process killed because this would take many hours to fully complete)

[1]:https://www.intel.com/content/www/us/en/products/docs/processors/core/8th-gen-core-family-datasheet-vol-1.html第 8 世代および第 9 世代 Intel® Core™ プロセッサー ファミリーおよび Intel® Xeon® E プロセッサー ファミリー データシート、第 1 巻 / 第 2 巻、リビジョン 008

免責事項: 私は、ご質問で言及されているコンピューターの 1 つを製造している会社で働いています。

答え2

確かに、その CPU は 32 GB を超える RAM をアドレス指定できません。
余分な RAM は使用できません。
どの OS でも表示/使用できません。

したがって、より大きな RAM オプション付きで購入するのはお金の無駄になります。

そもそもなぜそのような形で販売されているのでしょうか?
ベンダーに問い合わせなければ推測でしかありませんが...
支払った RAM をすべて使用していないことに気付くほど技術に詳しくない人が大勢います。
何が起こっているのか気付いた人でも、それ以上の行動を取らないかもしれません (行動を起こすのがあまりにも大変だったり、騙されたことを認めるのが恥ずかしかったりするからです)。
実際に苦情を申し立てたり、返金を要求したりする人はごくわずかです。ベンダー
はおそらく、32GB を超えるバージョンで、不満を持った顧客からの返品や苦情を相殺するのに十分なマージンを得ているのでしょう。

そして、ベンダーは実際には何も悪いことをしていません。
すべての情報は仕様に記載されています。ベンダーは、32GB を超える RAM が実際に役立つと主張していません。
製品はまったく不当に説明されていないため、返金を受ける権利すらないでしょう。

関連情報