Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

Chapter 2. Red Hat Enterprise Linux 6 Performance Features

2.1. 64-Bit Support

Red Hat Enterprise Linux 6 supports 64-bit processors; these processors can theoretically use up to 16 exabytes of memory. As of general availability (GA), Red Hat Enterprise Linux 6.0 is tested and certified to support up to 8 TB of physical memory.
The size of memory supported by Red Hat Enterprise Linux 6 is expected to grow over several minor updates, as Red Hat continues to introduce and improve more features that enable the use of larger memory blocks. For current details, see https://access.redhat.com/site/articles/rhel-limits. Example improvements (as of Red Hat Enterprise Linux 6.0 GA) are:
  • Huge pages and transparent huge pages
  • Non-Uniform Memory Access improvements
These improvements are outlined in greater detail in the sections that follow.
Huge pages and transparent huge pages

The implementation of huge pages in Red Hat Enterprise Linux 6 allows the system to manage memory use efficiently across different memory workloads. Huge pages dynamically utilize 2 MB pages compared to the standard 4 KB page size, allowing applications to scale well while processing gigabytes and even terabytes of memory.

Huge pages are difficult to manually create, manage, and use. To address this, Red Hat Enterprise 6 also features the use of transparent huge pages (THP). THP automatically manages many of the complexities involved in the use of huge pages.
For more information on huge pages and THP, refer to Section 5.2, “Huge Pages and Transparent Huge Pages”.
NUMA improvements

Many new systems now support Non-Uniform Memory Access (NUMA). NUMA simplifies the design and creation of hardware for large systems; however, it also adds a layer of complexity to application development. For example, NUMA implements both local and remote memory, where remote memory can take several times longer to access than local memory. This feature has performance implications for operating systems and applications, and should be configured carefully.

Red Hat Enterprise Linux 6 is better optimized for NUMA use, thanks to several additional features that help manage users and applications on NUMA systems. These features include CPU affinity, CPU pinning (cpusets), numactl and control groups, which allow a process (affinity) or application (pinning) to "bind" to a specific CPU or set of CPUs.
For more information about NUMA support in Red Hat Enterprise Linux 6, refer to Section 4.1.1, “CPU and NUMA Topology”.