Computer memory can be either volatile or non-volatile. Volatile memory, like RAM, loses its contents when power is lost while non-volatile memory, like EPROM, retains data without power. RAM is the primary memory that allows the CPU to process instructions from programs loaded into memory. Different types of RAM have been developed over time with increasing speeds, like EDO RAM, SDRAM, DDR RAM, DDR2, DDR3, and DDR4 RAM. Memory modules have transitioned from SIMMs to the current DIMMs.