memory - How specific is RAM to a CPU?

07
2014-07
  • Harvey

    I am fully aware that you need to get RAM with a supported speed (1333mhz or 1600mhz in my case). However, must a CPU also support the RAM in someway I am unaware of. I ask because my RAM just produced over 60000 errors on memtest, regardless of which motherboard slot I was in.

    I have had blue screens from the start really but since it was my first PC build I guess I was in denial thinking that nothing would go wrong so I only tested it now. The memory I have can be found here while the CPU can be found here. If you scroll down the RAM's page it says

    Compatible with Intel® 2nd Gen CPUs

    which obviously - mine is not.

    So my main question is - do CPU's only support limited selections of RAM and, if so, would I be better getting something like this which was made in 2013 as opposed to 2012. Thanks for the help.

  • Answers
  • Psycogeek

    Yes the CPU now has a built in controller and talks to the memory more directally than it did before, which becomes a bit more important/critical that the tiny wires in the cpu socket are all connecting proper (one build concideration). I just mention that because rarely a really bad ram problem was a CPU connecting to the socket problem, something that was way more rare back in 775 sockets.

    &

    No, if the memory is right for the motherboard used, it connects correctally it is the correct type and all (ddr1,2,3) or whatever label they are using this week. the Correct voltage, Then if the timings are right for the speed it is operated at , then it should still work.

    You bought patriot memory (no comment) from the bargain basement , that could be the only problem you have :-)

    It is best to look in your motherboard manuel or online for the "memory/ram compatability list" that the makers of the motherboard provide, for your specific motherboard. The list includes memories that the manufactures have tested with the board.
    It is not always possible to get these Rams that are on the list, but the list can still be a very good start for seeing what was tested, and what works.

    It is possible that a person could re-time the memory (in the bios) you have and get it to work error free, doing that isn't fun or really long term (lose the settings and your back in fail land) It is possible that the memory would work at a lower setting. Adjusting a lot of stuff to get it to work is possible. I have achieved completly error free operation out of rams people would swear would never work with a specific board, but getting the correct ram for the board was a WAY better idea.
    It is possible , people have messed up those tiny connections in the cpu socket, and get really bad ram erroring going.

  • Ashesh

    It's not the CPU (at-least not for older PCs) that influences the selection of RAM on a machine, it's more related to what Motherboard you have.

    For example Consider, two CPUs

    Intel® Pentium® 4 Processor 519K

    Intel® Core™ i7-4790K Processor

    If you go through the specifications you will find that the older CPU has no Memory Specifications while the newer one has some Memory Specifications. So in the second case that factors in along with what motherboard you have. So always

    First see what Motherboard and CPU you have then you go for RAM

    and not the other way round. Some other general tips:

    1. you absolutely can't mix, it's DDR with DDR2, or DDR2 with DDR3, and so on (they won't even fit in the same slots).
    2. You want to make sure each stick has the same CAS latency, timings, and voltage.
    3. Mixing RAM speed, however, is a slightly different matter. In theory, if you had to, you could mix, say, this Patriot model (DDR3 1333) with this Corsair model (DDR3 1600), since they have the same CAS latency, timings, and recommended voltage. Your motherboard would probably just automatically underclock the faster one, and you wouldn't run into any problems. Thus, it's possible, but note that when you start mixing speeds, a chain is only as strong as its weakest link, so to speak. Your RAM will only run at the speed of the slowest DIMM, unless you wanted to overclock the others.
    4. If buying 2 or more modules of RAM, ALWAYS GO FOR THE SAME COMPANY, BRAND, MODEL NO.

    None of this necessarily guarantees functioning RAM, of course—you may be greeted with the Blue Screen of Death if your DIMMs just don't like each other (or your motherboard doesn't like one of the DIMMs).

    Source: Experience , Lifehacker


  • Related Question

    memory - How does the CPU write infomation to ram?
  • Questioner

    My question is, how does the CPU write data to ram?

    From what I understand, modern CPU's use different levels of cache to speed up ram access. The RAM gets a command for information and then sends a burst of data to the CPU which stores the required data (and a bunch of extra data that was close to the address the CPU wanted) into the highest level cache, the CPU then progressively asks the different caches to send smaller and smaller chunks of data down the levels of caches until it is in the level 1 cache which then gets read directly into a CPU register.

    How does this process work when the CPU writes to memory? Does the computer go backwards down the levels of cache (in reverse order as compared to read)? If so, what about synchronizing the information in the different caches with the main memory? Also, how is the speed of a write operation compared to a read one? What happens if I'm continuously writing to RAM, such as in the case of a bucket sort?

    Thanks in advance,

    -Faken

    Edit: I still haven't really gotten an answer which I can fully accept. I want to know especially about the synchronization part of the RAM write. I know that we write to the L1 cache directly from CPU and that data gets pushed down the cache levels as we synchronize the different levels of caches and eventually the main RAM gets synchronized with the highest tier cache. However, what i would like to know is WHEN do caches synchronize and scynocronize with main RAM and how fast are their speeds in relation to read commands.


  • Related Answers
  • Skizz

    Ah, this is one of those simple questions that have really complex answers. The simple answer is, well, it depends on how the write was done and what sort of caching there is. Here's a useful primer on how caches work.

    CPUs can write data in various ways. Without any caching, the data is stored in memory straightaway and the CPU waits for the write to complete. With caching, the CPU usually stores data in program order, i.e. if the program writes to address A then address B then the memory A will be written to before memory B, regardless of the caching. The caching only affects when the physical memory is updated, and this depends on the type of caching used (see the above link). Some CPUs can also store data non-temporally, that is, the writes can be re-ordered to make the most of memory bandwidth. So, writing to A, then B, then (A+1) could be reorderd to writing to A then A+1 in a single burst, then B.

    Another complication is when more than one CPU is present. Depending on the way the system is designed, writes by one CPU won't be seen by other CPUs because the data is still in the first CPUs cache (the cache is dirty). In multiple CPU systems, making each CPU's cache match what is in physical memory is termed cache consistancy. There are various ways this can be acheived.

    Of course, the above is geared towards Pentium processors. Other processors can do things in other ways. Take, for example, the PS3's Cell processor. The basic architecture of a Cell CPU is one PowerPC core with several Cell cores (on the PS3 there are eight cells one of which is always disabled to improve yields). Each cell has its own local memory, sort of an L1 cache which is never written to system RAM. Data can be transferred between this local RAM and system RAM using DMA (Direct Memory Access) transfers. The cell can access system RAM and the RAM of other cells using what appears to be normal reads and writes but this just triggers a DMA transfer (so it's slow and really should be avoided). The idea behind this system is that the game is not just one program, but many smaller programs that combine to do the same thing (if you know *nix then it's like piping command line programs to achieve more complex tasks).

    To sum up, writing to RAM used to be really simple in the days when CPU speed matched RAM speed, but as CPU speed increased and caches were introduced, the process became more complex with many different methods.

    Skizz

  • Am1rr3zA

    yes it's go backwards down the levels of cache and save to memory but the important note is in Multi Processing system the cache are shared between 2 or more processor(core) and the data must be consistent this was done by make shared cache for all multiprocessor or different cache but save consistency by use of Critical section (if data in one cache changed it force it to write in memory and update other cache)