Getting to Know A-Tune

Introduction

An operating system (OS) is basic software that connects applications and hardware. It is critical for users to adjust OS and application configurations and make full use of software and hardware capabilities to achieve optimal service performance. However, numerous workload types and varied applications run on the OS, and the requirements on resources are different. Currently, the application environment composed of hardware and software involves more than 7000 configuration objects. As the service complexity and optimization objects increase, the time cost for optimization increases exponentially. As a result, optimization efficiency decreases sharply. Optimization becomes complex and brings great challenges to users.

Second, as infrastructure software, the OS provides a large number of software and hardware management capabilities. The capability required varies in different scenarios. Therefore, capabilities need to be enabled or disabled depending on scenarios, and a combination of capabilities will maximize the optimal performance of applications.

In addition, the actual business embraces hundreds and thousands of scenarios, and each scenario involves a wide variety of hardware configurations for computing, network, and storage. The lab cannot list all applications, business scenarios, and hardware combinations.

To address the preceding challenges, openEuler launches A-Tune.

A-Tune is an AI-based engine that optimizes system performance. It uses AI technologies to precisely profile business scenarios, discover and infer business characteristics, so as to make intelligent decisions, match with the optimal system parameter configuration combination, and give recommendations, ensuring the optimal business running status.

Architecture

The following figure shows the A-Tune core technical architecture, which consists of intelligent decision-making, system profile, and interaction system.

  • Intelligent decision-making layer: consists of the awareness and decision-making subsystems, which implements intelligent awareness of applications and system optimization decision-making, respectively.
  • System profile layer: consists of the labeling and learning subsystems. The labeling subsystem is used to cluster service models, and the learning subsystem is used to learn and classify service models.
  • Interaction system layer: monitors and configures various system resources and executes optimization policies.

Supported Features and Service Models

Supported Features

Table 1 describes the main features supported by A-Tune, feature maturity, and usage suggestions.

Table 1 Feature maturity

Feature

Maturity

Usage Suggestion

Auto optimization of 11 applications in seven workload types

Tested

Pilot

User-defined workload types and service models

Tested

Pilot

Automatic parameter optimization

Tested

Pilot

Supported Service Models

Based on the workload characteristics of applications, A-Tune classifies services into seven types. For details about the workload characteristics of each type and the applications supported by A-Tune, see Table 2.

Table 2 Supported workload types and applications

Workload

Type

Workload Characteristic

Supported Application

default

Default type

The usage of CPU, memory bandwidth, network, and I/O resources is low.

N/A

webserver

HTTPS application

The CPU usage is high.

Nginx

big_database

Database

  • Relational database

    Read: The usage of CPU, memory bandwidth, and network is high.

    Write: The usage of I/O is high.

  • Non-relational database

    The usage of CPU and I/O is high.

MongoDB, MySQL, PostgreSQL, and MariaDB

big_data

Big data

The usage of CPU and I/O is high.

Hadoop and Spark

in-memory_computing

Memory-intensive application

The usage of CPU and memory bandwidth is high.

SPECjbb2015

in-memory_database

Computing- and network-intensive application

The usage of a single-core CPU is high, and the network usage is high in multi-instance scenarios.

Redis

single_computer_intensive_jobs

Computing-intensive application

The usage of a single-core CPU is high, and the usage of memory bandwidth of some subitems is high.

SPECCPU2006

communication

Network-intensive application

The usage of CPU and network is high.

Dubbo

idle

System in idle state

The system is in idle state and no applications are running.

N/A

Rating

search results about are found