Last week, Red Hat released the beta version of Red Hat Enterprise Linux 6 to the public, moving the next major release of their popular server operating system into the testing and hardening phase.
I spoke with Tim Burke, Vice President of Linux Engineering at Red Hat, and he filled me in on some of the details. Red Hat also has posted a blog with extensive product specs for RHEL 6 on their website.
Completely fair scheduler
A couple of weaknesses in Linux that were discussed with the Linux kernel panel at the recent Linux Collaboration Summit are addressed by RHEL 6. At the top of the list is the completely fair scheduler (CFS), with better “awareness” of the hardware topology, which Burke said is increasingly important in today’s systems.
“For systems like Intel’s Nehalem-EX, different pieces of memory are closely associated with different cores,” said Burke. “The cost of memory access is not uniform. [With CFS] I/O devices can be more efficiently accessed by the processor most local to it. It is better able to assign workloads to the optimal set of processors.”
This improved scheduler has been shared upstream, and is now part of the Linux development tree.
“We continue to perform work on improving latency in I/O stack,” said Burke. “We will drive that innovation upstream.”
Transparent huge pages are one of the virtualization improvements in RHEL 6 beta. The huge pages are a way of more efficiently mapping large regions of memory that can be used by applications, said Burke, who said that they have produced up to 20% performance enhancement in some systems.
“Virtual management registers page table entries and maps to a block of memory (4,096),” said Burke. “Memory that is mapping a virtualized guest could easily be 256 GB, so to manage that in 4,096 KB pages can be inefficient. But when you use huge pages, each page table can map up to 2 GB of physical memory.”
Huge pages themselves aren’t new, but in RHEL 5, the system administrator would have to reserve chunks of memory to use huge pages, said Burke.
“In RHEL 6 is ability to automatically manage huge pages, without the system admin having to reserve memory,” said Burke. “It automatically allocates large memory pages for any app that requests large memory allocation. It obviates having to alter application.”
To download the beta and begin testing it out, you can visit the RHEL 6 beta page on Red Hat’s website.