Why run Oracle Database on Arm

Text Size 100%:

Why run Oracle Database on Arm

CPUs or Central Processing Units have been the core talking point in the computing space. Moore’s law (“the number of transistors in a dense integrated circuit doubles approximately every two years” still stays valid. Processor speed is always measured in terms of instructions per second. New CPU architectures now measure millions or billions of instructions per second. A rise in demand for mobile gadgets has also shaped the path of today’s processors. Power consumption and heat production are two significant factors in a smaller form factor (mobile devices). In recent years, the technological landscape has witnessed a considerable rise in the popularity of Arm processors due to their unique low power consumption capabilities. RISC-based architectures, of which Arm is part, focus on simplicity and efficiency. The RISC-based architecture uses a simplified set of instructions, each performing a single operation, aiming to execute instructions quickly. Arm processors offer unique capabilities in the mobile and handheld segment, but they have now been realized to be helpful in the server market. In this blog, we will explore why Arm processors are better suited for desktops and servers and explore why relational databases can perform exceptionally well on Arm.

Arm-based computing started with mobile and embedded devices; the technology (Arm-based) has now evolved to support hyperscale data centers and cloud computing. Oracle began to offer Arm-shaped VMs because they scale linearly, provide predictable performance, and provide the highest density of cores, all at a lower price point. With Arm-based cloud computing, customers can run existing workloads less expensively and build new applications with superior economics and performance. To help developers transition, make, and run Arm-based workloads, Oracle and other cloud vendors have accelerated the Arm developer ecosystem with the best tools and platform possible. Arm can provide all the capabilities of x86 computing, including virtualization.

What about current workloads:

x86, for decades, has been a de-facto standard for running workloads of various types. Workloads over time have become quite complex, resulting in millions and billions of instructions per second. Arm, with its simple design, offers a complementary substitute for some of the workloads that run on x86 architecture. Oracle Databases running on x86 platforms can seamlessly migrate to Arm architecture using standard methods. Arm architecture provides the following benefits:

  • Efficiency and Power Consumption: Arm processors are renowned for their efficiency and low power consumption compared to x86 processors. Arm’s reduced instruction set architecture (RISC) approach enables processors to execute instructions more efficiently, resulting in improved power efficiency and reduced heat generation. By consuming less power, Arm processors can allocate more resources to managing tasks, benefiting the overall performance of a system.
  • Technology trends: The needs of hyper-growth markets, such as cloud-based supercomputing and artificial intelligence, dictate that we turn to specialized hardware where we can add more servers into data centers while staying within energy budgets. Arm is highly customizable, meaning cloud providers can tailor chips to their needs rather than depend on chip vendors. Most cloud vendors are coming up with their implementation of Arm-based chips to fit their needs. For example, NVIDIA has introduced its Grace Hopper super chip, based on Arm, to deliver a CPU+GPU coherent memory model to accelerate AI and high-performance computing applications.
  • Scalability and Customization: Some of the Arm processors available in the market boast 128 cores per processor. One of the Arm vendors boasts 192 processor cores, the highest core count of any available data center server processor. Due to their scalability and customization capabilities, Arm processors have gained significant traction in the mobile and embedded systems markets. Unlike x86, Arm processors are designed to be highly customizable, allowing manufacturers to tailor them to specific use cases. The higher core count also eliminates the need for dual CPU (x86-based systems). This flexibility enables system designers to optimize Arm-based systems for database workloads, enhancing performance and efficiency. Additionally, the modular nature of Arm-based systems allows for easier integration of different components, making them adaptable to various database requirements.
  • Increased Parallel Processing: Relational databases often deal with large volumes of data and complex queries, necessitating efficient parallel processing capabilities. Arm processors, featuring multiple cores and superior multithreading capabilities, excel in this aspect. With the proliferation of multicore Arm processors, database operations can be parallelized, enabling faster query execution and improved overall database performance. This parallel processing prowess of Arm processors is particularly beneficial for demanding workloads in relational databases, where simultaneous execution of multiple queries is essential.
  • Enhanced Memory Bandwidth: Memory bandwidth plays a crucial role in database performance, especially when dealing with high data transfer rates. Arm processors often feature memory architectures designed for optimal bandwidth utilization, which can improve the speed of data access and retrieval. This increased memory bandwidth contributes to a more responsive and efficient database system, enabling faster query execution and reduced latency.
  • Cost-Effectiveness: Arm processors have established a reputation for cost-effectiveness, making them an attractive choice for organizations seeking to optimize their IT infrastructure. The Arm ecosystem offers manufacturers various hardware options, resulting in competitive pricing and increased affordability. For businesses running relational databases, deploying Arm-based systems can be a financially viable solution without compromising performance.

 

  • Security: Ampere Altra processors based on Arm (available in Oracle Cloud) run on a single thread per core processor, eliminating potential thread-security issues and isolating workloads. When run as a single thread per core, there is no sharing of the execution engine, registers, and L1/L2 cache between threads, which minimizes the attack surface for exploits.

Why Database Engines on Arm:

  • Customization for Database Needs: Arm develops the Arm architecture and licenses the IP to allow its licensees/partners/customers to subsequently build and sell the chip within their designs/products, such as system-on-chip or system-on-modules designs. SoC (system-on-chip) is an efficient design model where significant components of a computer or electronic system reside on a small, low-power board. This approach differs from other CPU manufacturers, such as Intel or AMD, that design and manufacture their chips. The ability to license Arm design gives database vendors, like Oracle, the flexibility to design their chips based on Arm architecture.
  • Scalability: Database engines do require scalability. Oracle Database runs high transactional applications and requires vertical and horizontal scalability. Arm processors, compared to their x86 counterparts, are highly dense and provide more cores on a CPU.
  • Endianness: Endianness describes the order in which a sequence of bytes is stored in computer memory. Big-Endian systems store the most significant byte (big end) first in the order, and Little-Endian systems store the least significant bytes (little end) first. Arm architecture, by design, is bi-endian, which means it can support both big-endian and little-endian byte orderings. To complement its x86 offering, Oracle will use little-endian byte ordering for its Arm implementations and interoperability with x86 counterparts.
  • Portability: Oracle is adopting Arm architecture with Ampere One and Ampere AltraMax processors and will use little-endian format for byte ordering. Using little-endian format means migrating running databases on x86-based systems to Arm-based systems or vice versa will be easier. Generally available migration techniques like backup and restore will work across x86 and Arm-based systems.

 

Oracle Database Availability on Arm

Oracle Database Enterprise Edition is available on the Arm platform (Ampere Altra brands) in the cloud with flexible shapes (VM.Standard.A1.Flex) for Oracle Base Database Service (BaseDB). VM.Standard.A1.Flex is based on Arm computer processors and CPU cores. VM.Standard.A1.Flex shapes for BaseDB support any number of OCPUs, up to a maximum of 64, in a single VM. Each OCPU includes 8 GB of memory and 1 Gbps of network bandwidth, up to a maximum of 40 Gbps. VM.Standard.A1.Flex shapes offer balanced and higher-performance block volume storage that can scale up to 40 TB in data capacity. When provisioned with higher-performance storage, customers can achieve a maximum of 500K IOPS for a single VM.

Oracle Database on the Arm platform was released from Database release version 19.19. This database version complements the Oracle Database you have been running on x86 and other platforms, including RAC (on-premises currently), Data Guard, and others. Oracle Database on Arm is available on-premises and in Oracle Cloud Infrastructure. Currently, Oracle licenses are certified and licensed for Ampere Altra and Ampere Altra Max processors with a core factor of .25. Please refer to the core-factor table here: https://www.oracle.com/assets/processor-core-factor-table-070634.pdf. All other Arm processors, not referred to in the core factor table, will use a core factor of 1 for licensing purposes.

Please refer to the announcement blog for Oracle Database on Arm (on-premises and Cloud).

Conclusion:

Arm processors present several advantages, including improved efficiency, scalability, customization, parallel processing capabilities, and enhanced memory bandwidth. These attributes make Arm processors an excellent choice for powering relational databases, where performance, responsiveness, and cost-effectiveness are crucial. The Arm ecosystem will continue to mature and evolve, and we can expect performance gains and the adoption of various types of workloads, including databases.

Maruti Sharma

Senior Principal Product Manager

Maruti Sharma is a Senior Principal product manager for mission critical database systems at Oracle with over 25 years of software experience focused on relational databases, Big Data, NoSQL data stores, server programming, microservices. Prior to joining Oracle, Maruti was a Chief Architect and Associate Technical Fellow at The Boeing Company where he was responsible for managing everything data related.