Go to Kingston.com  Homepage UNITED STATES  
Kingston Tools


Ultimate Memory Guide

WHAT IS MEMORY?

INTRODUCTION

These days, no matter how much memory your computer has, it never seems to be quite enough. Not long ago, it was unheard of for a PC (Personal Computer), to have more than 1 or 2 MB (Megabytes) of memory. Today, most systems require 128MB to run basic applications. And up to 512MB or more is needed for optimal performance when using graphical and multimedia programs.

As an indication of how much things have changed over the past two decades, consider this: in 1981, referring to computer memory, Bill Gates said, "640K (roughly 1/2 of a megabyte) ought to be enough for anybody."

For some, the memory equation is simple: more is good; less is bad. However, for those who want to know more, this reference guide contains answers to the most common questions, plus much, much more.

THE ROLE OF MEMORY IN THE COMPUTER

People in the computer industry commonly use the term "memory" to refer to RAM (Random Access Memory). A computer uses Ram to hold temporary instructions and data needed to complete tasks. This enables the computer's CPU (Central Processing Unit), to access instructions and data stored in memory very quickly.

A good example of this is when the CPU loads an application program - such as a word processing or page layout program - into memory, thereby allowing the application program to work as quickly and efficiently as possible. In practical terms, having the program loaded into memory means that you can get work done more quickly with less time spent waiting for the computer to perform tasks.
RAM/Hard Drive/CPU interaction
The process begins when you enter a command from your keyboard. The CPU interprets the command and instructs the hard drive to load the command or program into memory. Once the data is loaded into memory, the CPU is able to access it much more quickly than if it had to retrieve it from the hard drive.

This process of putting things the CPU needs in a place where it can get at them more quickly is similar to placing various electronic files and documents you're using on the computer into a single file folder or directory. By doing so, you keep all the files you need handy and avoid searching in several places every time you need them.

THE DIFFERENCE BETWEEN MEMORY AND STORAGE

People often confuse the terms memory and storage, especially when describing the amount they have of each. The term memory refers to the amount of RAM installed in the computer, whereas the term storage refers to the capacity of the computer's hard disk. To clarify this common mix-up, it helps to compare your computer to an office that contains a desk and a file cabinet.

Work table The file cabinet represents the computer's hard disk, which provides storage for all the files and information you need in your office. When you come in to work, you take out the files you need from storage and put them on your desk for easy access while you work on them. The desk is like memory in the computer: it holds the information and data you need to have handy while you're working.
Consider the desk-and-file-cabinet metaphor for a moment. Imagine what it would be like if every time you wanted to look at a document or folder you had to retrieve it from the file drawer. It would slow you down tremendously, not to mention drive you crazy. With adequate desk space - our metaphor for memory - you can lay out the documents in use and retrieve information from them immediately, often with just a glance.

Here's another important difference between memory and storage: the information stored on a hard disk remains intact even when the computer is turned off. However, any data held in memory is lost when the computer is turned off. In our desk space metaphor, it's as though any files left on the desk at closing time will be thrown away.

MEMORY AND PERFORMANCE

It's been proven that adding more memory to a computer system increases its performance. If there isn't enough room in memory for all the information the CPU needs, the computer has to set up what's known as a virtual memory file. In so doing, the CPU reserves space on the hard disk to simulate additional RAM. This process, referred to as "swapping", slows the system down. In an average computer, it takes the CPU approximately 200ns (nanoseconds) to access RAM compared to 12,000,000ns to access the hard drive. To put this into perspective, this is equivalent to what's normally a 3 1/2 minute task taking 4 1/2 months to complete!


Access time comparison between RAM and a hard drive.


MEMORY UPGRADE ON A PC: LIFE IS GOOD

If you've ever had more memory added to your PC, you probably noticed a performance improvement right away. With a memory upgrade, applications respond more quickly, Web pages load faster, and you can have more programs running simultaneously. In short, additional memory can make using your computer a lot more enjoyable.

MEMORY UPGRADE ON A SERVER: LIFE IS EVEN BETTER

Server performance has a huge impact on the performance of a network: if a server is performing poorly, everyone on the network "feels the pain." So, while a memory upgrade on an individual PC makes a big difference only for the person who uses it, a memory upgrade in a server has far-reaching effects and benefits everyone who accesses the server.

To better understand the benefits of increasing memory on a server, take a look at these benchmark results compiled by Mindcraft, an independent testing organization specializing in quantitative research. Mindcraft's study focused on servers running Windows 2000 Advanced Server, Sun Solaris 9.0 and Red Hat Linux 8.0 on both web and DBMS server platforms. The objective of this research was to reveal how server performance might improve incrementally by adding more memory as an alternative to the installation of additional processors.

In conducting it's research, Mindcraft discovered the performance of Windows 2000, Solaris and Linux servers showed significant improvement through the use of additional memory leading to performance benefits of as much as 40% over servers with an additional processor and no increase in memory. The performance improvement could be as high as 1000% on dual processor DBMS systems with the memory expanded from 512MB to 4GB.

WEB SERVER TESTING

A web server is comprised generally of hardware, operating system, server software, TCP/IP protocols, application software and Web site content. A client or visitor views the content on the web server via HTTP request. Mindcraft used SPECweb99 to test web server performance. SPECweb99 measures a web servers performance while servicing a specific workload of static and dynamic page requests. This workload is intended to simulate the type of requests that an Internet Service Provider (ISP) would encounter on its web servers. The results from the web server tests are shown below.

Table 1: percentage performance improvement with increased memory - 1CPU (Windows 2000 Server)
  Increase memory to
Base memory size 1GB 2GB 4GB
512MB 31% 46% 48%
1GB   11% 13%
Table 2: percentage performance improvement with increased memory - 2CPUs (Windows 2000 Server)
  Increase memory to
Base memory size 1GB 2GB 4GB
512MB 37% 76% 90%
1GB   29% 30%
Table 3: percentage performance improvement with increased memory - 1CPU (Sun Solaris)
  Increase memory to
Base memory size 2GB 4GB
1GB 51% 63%
2GB   63%
Table 4: percentage performance improvement with increased memory - 2CPUs (Sun Solaris)
  Increase memory to
Base memory size 2GB 4GB
1GB 66% 82%
2GB   10%
Table 5: percentage performance improvement with increased memory - 1CPU (Linux)
  Increase memory to
Base memory size 1GB 2GB 4GB
512MB 33% 48% 62%
1GB   11% 21%
Table 6: percentage performance improvement with increased memory - 2CPUs (Linux)
  Increase memory to
Base memory size 1GB 2GB 4GB
512MB 53% 102% 125%
1GB   32% 47%

DBMS SERVER TESTING

Mindcraft used the OSDB (Open Source Database Benchmark) test suite to conduct the DBMS testing. The OSDB is based on the ANSI SQL Standard Scalable and Portable (AS3AP) benchmark for relational databases systems. The OSDB implements much of the AS3AP benchmark. It implements both single-user and multi-user tests for several types of data base management systems (DBMSs). The single-user tests focus on database loading and index creation functions. They also measure basic query and access method performance. The results from the DBMS test are below.

Table 7: percentage performance improvement with increased memory - 1CPU (Windows 2002 Advanced Server)
  Increase memory to
Base memory size 1GB 2GB 4GB
512MB 9% 837% 1458%
1GB   762% 1334%
Table 8: percentage performance improvement with increased memory - 2CPUs (Windows 2000 Server)
 
  Increase memory to
Base memory size 1GB 2GB 4GB
512MB 24% 1510% 1559%
1GB   1202% 1241%
Table 9: percentage performance improvement with increased memory - 1CPU (Sun Solaris)
  Increase memory to
Base memory size 2GB 4GB
1GB 376% 439%
2GB   439%
Table 10: percentage performance improvement with increased memory - 2CPUs (Sun Solaris)
  Increase memory to
Base memory size 2GB 4GB
1GB 775% 1010%
2GB   27%
Table 11: percentage performance improvement with increased memory - 1CPU (Linux)
  Increase memory to
Base memory size 1GB 2GB 4GB
512MB 50% 981% 1243%
1GB   620% 795%
Table 12: percentage performance improvement with increased memory - 2CPUs (Linux)
  Increase memory to
Base memory size 1GB 2GB 4GB
512MB 52% 1357% 1477%
1GB   858% 937%


CONCLUSION: MORE MEMORY EQUALS BETTER PERFORMANCE
The Mindcraft research focused on the performance of Web and DBMS servers, because applications response times in both of these areas are among the most visible to the end user. Nobody likes having to work with a slow web server and where database applications are involved, the benchmark results clearly show that more memory available means that the Operating System and DBMS can keep more data in main memory, eliminating or reducing the frequency of relatively slow disk accesses, which in turn lead to slower applications response times.




© 2008 Kingston Technology Corporation - All Rights Reserved