It’s always a balancing act trying to get what you need without wasting money by acquiring too much. Choosing the right amount of memory for an industrial PC running Windows 10 or Ubuntu is no exception. How much is enough? The short answer is: It depends.
Random-access memory (RAM) is a temporary storage medium that loses its contents when system power shuts down. Operating systems (OS) such as Windows 10 copy themselves into RAM during boot-up and copy application program software into RAM for execution as requested. Applications themselves typically request a percentage of available memory for their own use when they first begin execution. In addition, RAM holds temporary working files, such as system status information and application data.
Microsoft recommends that PCs running Windows 10 have at least 1 GByte of RAM with the 32 bit version and 2 GBytes for the 64 bit version. Similarly, Canonical recommends 1 GByte of RAM for its Ubuntu Desktop version and 4 GBytes of RAM for its Ubuntu Server edition of the Linux distribution. These are bare minimums, however, and can often result in poor system performance with even basic applications. To understand why, take a closer look at how PCs use RAM.
How RAM Gets Used
Despite the appearance of running multiple programs simultaneously, processors really execute only one program at a time. To multitask, an OS simply suspends one program’s execution by storing the processor’s status and register contents before beginning the next program. When the OS is ready to resume the suspended program’s operation, it retrieves the status information from RAM and configures the processor to pick up where it left off. If these actions are done quickly for all active programs, the PC can appear as though it is running them all simultaneously.
Similarly, the OS stores the data a program is actively utilizing so that it is available when the program resumes operation. Each program has a block of memory allocated to it; the software and the data for all active programs remain in separate sections of RAM as the programs take their turns.
When there is not enough RAM to conveniently hold all system status or application data, the OS can move some of that information to a disk drive or other permanent storage — a process called accessing virtual memory. But the storage and retrieval of system status information from disk drives takes much longer than simply writing to and reading from RAM, slowing system performance. The more RAM a PC has available then, the less likely it will need to use virtual memory and the more programs it can efficiently juggle without perceptible performance degradation.
Rules of Thumb
Knowing how much memory a PC needs involves knowing how many simultaneous programs the PC will be running and how much data each program requires. Simple instrument-monitoring programs require much less RAM than programs running complex control algorithms. Vision-based systems and artificial intelligence algorithms require significantly more.
As a general rule, 8-16 GBytes of memory speed is adequate for most office-type tasks, such as spreadsheets, web browsing, and email. Higher performance applications such as video editing, 3D modeling, or applications using larger media files might leaver 32 to 64 Gbytes of memory, while applications such as artificial intelligence (AI) might require 128 GBytes and up.
One caveat to keep in mind is the memory addressing limitation that the 32-bit version of Windows suffers. With 32 bit operation, the processor can directly access only 4 GBytes. Any additional memory will be inaccessible to the processor without a software trick called paging. Paging treats the additional memory as though it were a completely independent memory block, keeping track of which “page” is being used for which program. As with virtual memory, page memory slows system performance.
A second caveat is that the RAM Windows uses is independent of the RAM an add-in graphics or video card offers. Such cards manage their own dedicated RAM, which is not available to anything else on the PC. The card’s RAM thus does not count toward meeting the PC’s operational needs.
Speed, Latency, and Memory
One last factor to consider when choosing memory for a Windows 10 PC is the memory’s operating speed. Sometimes, simply using faster memory devices will produce better results than using additional memory. Since memory performance deals with the relationship between speed and latency, understanding how these two are related can ultimately help optimize memory performance.
In simple terms, latency refers to the time required to complete an operation and indicates how long it takes data to travel from point A to point B within a system. When a system’s memory controller commands the memory to access a location, the data goes through clock cycles in the column address strobe (CAS), to get to the intended location and complete the command.
There are two variables that determine a module’s latency, according to Crucial:
- Total number of clock cycles the data must go through, which is typically measured in CAS latency in data sheets.
- The duration of each clock cycle, typically measured in nanoseconds.
Both speed AND latency are important considerations to make when it comes to optimizing system performance. Optimizing the balance between the processor’s maximum speed and the lowest latency memory available allows users to reach a higher level of performance using newer, faster, and more efficient memory. When looking to make upgrades, Crucial ultimately recommends identifying the highest memory speed supported by your processor and motherboard, while selecting the lowest latency memory that fits within the budget at that speed.
Final Considerations
If you’re still unsure how to determine your specific system’s memory needs, CoastIPC can help. Our knowledgeable team of experts is happy to assist you in evaluating the options available. Reach out to us here or by calling 866-412-6278. We also stock a wide range of industrial PCs with the memory speed and capacity to meet your requirements.