Difference between revisions of "Memory Upgrade for your PC"

From Free Knowledge Base- The DUCK Project: information for everyone
Jump to: navigation, search
m (Linux is not nearly as limiting)
m (Linux is not nearly as limiting)
Line 70: Line 70:
 
  sudo dmidecode -t 16
 
  sudo dmidecode -t 16
 
This will allow you to see the Maximum Capacity supported by the system.
 
This will allow you to see the Maximum Capacity supported by the system.
 +
 +
sample output:
 +
sudo dmidecode -t 16
 +
# dmidecode 3.0
 +
Getting SMBIOS data from sysfs.
 +
SMBIOS 2.7 present.
 +
 +
Handle 0x000A, DMI type 16, 23 bytes
 +
Physical Memory Array
 +
        Location: System Board Or Motherboard
 +
        Use: System Memory
 +
        Error Correction Type: None
 +
        Maximum Capacity: 32 GB
 +
        Error Information Handle: No Error
 +
        Number Of Devices: 4
 +
 +
To see  the currently installed memory size do this:
 
  sudo dmidecode -t 17
 
  sudo dmidecode -t 17
To see  the currently installed memory size.
 
  
 
Another option is 'ulimit'
 
Another option is 'ulimit'

Revision as of 17:01, 26 February 2019

DDR2 / PC2 - 240 pins (200 for SO-DIMM)

DDR3 / PC3 - 240 pins (204 for SO-DIMM) not compatible with DDR2

DDR4 / PC4 -

Error Correcting Code (ECC) RAM is mostly used in servers and aims to detect and correct data corruption. Most desktop and laptop computers will not run it.

Numbers on back of RAM explained.

DDR4-3200 - 3200 refers to the clock frequency

SO-DIMM - Small Outline DIMM in laptops and small form factor computers

DDR - Double Data Rate

DDR3-1600 is also PC3-12800 - generation of the RAM and its transfer speed. DDR3-1600 RAM operates at 1600 MT/s or the same as PC3-12800 operates at 12800 MB/s

S or SoDimm

12800S - the S on the end refers to size, it is a smaller SoDimm or form factor type ram commonly used in laptop computers, all-in-one computers, etc. Sometimes the memory might say 12800 SoDimm rather than 12800S. Same thing.

12800 - without the S should be full sized 240 pin memory. Be careful because sometimes instead of having the S at the end of the number they leave it off, and then somewhere else state that it is SoDIMM or 200/204 pin.

Some Examples

example (1):

PC3 10600S-9-11-F3

  • PC3 (same as DDR3)
  • 10600 (bandwidth in MB/s),
  • S (stands for SODIMM, it's RAM for laptops),
  • 9 (CAS latency).
  • 11 is the SPD Revision or a way the memory communicates to BIOS
  • F3 is the Gerber Revision or changes in the printed circuit board

If it says PC3L it can operate at 1.35V or 1.5V

L is for low voltage. Don't mix L and non-L. If the laptop requires L then use L. DDR3L is a dual voltage capable memory SoDIMM, which supports operation at both 1.5V and 1.35V. DDR3L is also pin-compatible with DDR3. DDR3 is a single voltage capable memory SoDIMM, which supports 1.5V operation only.

example (2):

PC3L-12800S DDR3 1600MHz 204pin So-Dimm

Low voltage DDR3 ram

Operating System Limitation

Micro$oft Windows is always behind the ball on memory size

The operating system you are running can affect the maximum amount of RAM you can use in your computer. The maximum RAM limit for 32-bit Windows 7 edition is 4 GB. Here are the limits for other Windows 7 editions:

  • Windows 7 Home Basic: 8 GB
  • Windows 7 Home Premium: 16 GB
  • Windows 7 Professional: 192 GB
  • Enterprise: 192 GB
  • Ultimate: 192 GB

For Windows 8.1 32-bit, the limit is 4 GB of RAM. For the other Windows 8 editions:

  • Windows 8.1 (64-bit): 128 GB
  • Windows 8.1 Professional (64-bit): 512 GB
  • Windows 8.1 Enterprise (64-bit): 512 GB

Linux is not nearly as limiting

Dmidecode is a tool for dumping a computer’s DMI (some say SMBIOS) table contents so you can read it.

if not already installed (because with my mint system it was already installed) you can manually install it (for Debian based linux):

sudo apt-get install dmidecode

Once installed, run

sudo dmidecode -t 16

This will allow you to see the Maximum Capacity supported by the system.

sample output:

sudo dmidecode -t 16
# dmidecode 3.0
Getting SMBIOS data from sysfs.
SMBIOS 2.7 present.

Handle 0x000A, DMI type 16, 23 bytes
Physical Memory Array
        Location: System Board Or Motherboard
        Use: System Memory
        Error Correction Type: None
        Maximum Capacity: 32 GB
        Error Information Handle: No Error
        Number Of Devices: 4

To see the currently installed memory size do this:

sudo dmidecode -t 17

Another option is 'ulimit'

The Linux memory acceptance is limited only by the current Kernel, not by the distribution. Virtual memory map with 4 level page tables:

0000000000000000 - 00007fffffffffff (=47 bits) user space, different per mm

or 247 bytes = 128TiB

For a 32-bit operating system the address is expressed in 32 bits, so at most the OS could use 2^32 = 4GB memory space.

Linux can break the 4GB limitation on a 32-bit system, sorta. If you have a PAE enabled kernel it can access 36-bits of address space (64GB). However, the system is still 32-bit so any one process can only access 4GB. The 32bit memory mapping system supports either 4GB of address space without PAE or 64GB with PAE.

Caution on mixing memory of different manufacturers or types

Due to the variety of possible configurations, some motherboards might not be able to properly configure memory if the array of dual in-line memory modules (DIMMs) contains a DIMM that is not from the same manufacturer, has a different CAS latency value, or has a different density value (high and low used together).

  • Best to use memory together of the same size, model, and manufacturer

You can never mix DDR with DDR2, or DDR2 with DDR3, and so on (they won't even fit in the same slots). Use ram that has the same CAS latency, timings, and voltage.

If you mix memory that is of a different speed, such as mixing a DDR3-1333 with a DDR3-1600 as long as they have the same CAS latency, timings, and operate at the same voltage, it will probably work, however, the system will clock memory at the lowest of the two speeds. the memory will only run at the speed of the slowest DIMM, unless you overclock the slower one which will probably result in instability.