The open source community and the IT industry as a whole continue to discuss how they can use different hardware architectures to solve hard computational problems and address specific workloads. Customers value choice in their technology implementations, and choice is a key benefit of open source solutions. To best meet these needs, the software ecosystem has to deliver solutions across a broad spectrum of architectures.
Red Hat’s recently-announced multi-architecture strategy helps customers to better design and build infrastructure and applications based on their choice of commercially available hardware architectures. The multi-architecture initiative helps to bring parity and align Red Hat’s product portfolio across supported architectures, including x86_64, ppc64le and s390x, as well as AArch64 (in beta). These architectural choices help customers and partners to innovate more rapidly and foster the development of new solutions.
What does it take to deliver an operating system for multiple architectures? Imagine a train that is constantly moving forward and has only a finite number of stops – if you want to be on the train, you need to be at the next station. You can’t simply hop-on, however, as preparations need to be made well in advance to make sure that things are ready prior to boarding.
This is similar to what Red Hat is doing with regards to delivering Red Hat Enterprise Linux on multiple architectures. Red Hat has developed rigorous processes and has been providing guidance and stewarding to all of our hardware and software partners for the past 14 years, which helps to smooth development and product delivery across all supported architectures. You can imagine the complexity of this, as every time a new server platform is introduced, there are original equipment manufacturers (OEMs) and hardware partners that would like to see Red Hat Enterprise Linux support for their products. Regardless of the ever-growing demand from these partners, Red Hat remains committed to our well-defined and stringent process around enablement which helps provide our customers with a hardened and stable environment that can be supported for their long-term needs.
There are nascent architectures, such as AArch64, that are still evolving quite quickly, dragging the entire ecosystem to move swiftly alongside them. This pace necessitates a different set of product requirements, like having to integrate newest technologies from various upstream Linux communities into Red Hat Enterprise Linux.
Each major release of Red Hat Enterprise Linux typically introduces a new kernel with a kernel application binary interface (kABI) and an updated application binary interface (ABI). Minor releases introduce new features and functionality while maintaining the kernel version and kABI/ABI. We frequently hear from customers who are willing to trade long-term support for access to the latest hardware functionality. These customers well understand the trade-offs and are not afraid to expose their infrastructure to disruption not typically seen in more traditional datacenter implementations.
To better address the needs of these customers, Red Hat is looking to accelerate the enablement of new architectures traditionally delivered in major releases of Red Hat Enterprise Linux, by bringing it to minor releases. This minimizes the disruption to the entire ecosystem typically associated with an introduction of a new major release and allows existing and new architectures to be enabled and delivered side by side while preserving ABI and userspace tools associated with major Red Hat Enterprise Linux releases.
Everything comes with a trade-off, however, and in this case, the product lifecycle for these new offerings may have to be shorter, as we are introducing support for new architectures in the middle of the lifecycle of the major release. Additionally, kABI of the current release cannot be preserved every time we are going to use a different upstream kernel.
As much as we truly enjoy working closely with the hardware ecosystem, Red Hat is still a software company that enables ecosystems, communities and customers to use innovative technologies. From a business perspective, we work with the ecosystem to deliver our software portfolio on certified platforms with our trusted OEM partners. Just like Red Hat, OEMs want to ensure the best possible customer experience with their products, making us natural allies in delivering these new solutions to the market. To enhance the benefit to our joint customers, we will continue to depend on our OEM partners to deliver solid customer experience across architectures while we will focus on providing common look and feel, familiar tools and applications, as well as enterprise-grade performance and security that customers have come to expect from Red Hat.
Look for the second part of this blog where we will provide an insight into Red Hat’s collaboration with IBM and ARM ecosystems.