Rate This Document
Findability
Accuracy
Completeness
Readability

Kunpeng Glossary

A

Term

Definition

accelerated analysis

The accelerated analysis function is used to scan selected code files, identify functions and assembly instructions that can be replaced with those in Kunpeng libraries, and generate reports.

acceleration sensor mock

A technology that emulates acceleration sensors on mobile phones. Acceleration sensor mock (status mock) enables the acceleration sensor function on cloud phones. Then upper-layer services can sense the acceleration.

ACPI

It refers to Advanced Configuration and Power Interface (ACPI).

AES

Advanced Encryption Standard (AES) is a specification released by the U.S. National Institute of Standards and Technology (NIST) on November 26, 2001. It is one of the most popular symmetric key encryption algorithms, and supersedes Data Encryption Standard (DES). AES adopts a symmetric-key algorithm publicly accessible for both data encryption and decryption. The cipher block size is fixed at 128 bits, and the cipher key size can be 128 bits, 192 bits, or 256 bits.

Android container

An Android container is responsible for running the Android operating system in Docker containers.

Android emulator

An Android emulator is an application that emulates the Android operating system on non-mobile phone hardware.

Android image

An image file generated by packaging compiled files of Android modules.

Annotation

Annotations are introduced into the Java language with JDK 1.5. They give you the ability to provide additional metadata alongside a Java entity (such as classes, interfaces, and enumerations). Annotations can be declared before packages, classes, fields, methods, local variables, and method parameters to describe and comment on these elements.

AOSP

Android Open Source Project (AOSP) is an open source operating system development project initiated by Google.

ARDC

The ARDC projection software is developed by the Advanced Resource Development Center (ARDC). It is used to project the screen of a computer, mobile phone, or tablet to a larger screen. The software features fast projection, high definition, and high stability. It is widely used in conferences, education, and exhibitions.

audio engine

A core engine suite provided by Huawei for audio processing in cloud phone scenarios.

audio SDK

The audio software development kit (SDK) is provided on cloud phones and user terminals for the server to capture audio and for the client to play audio.

AVX2KI

AVX2KI is a Huawei-developed Kunpeng library that converts intrinsics such as AVX into Kunpeng instructions when an application that uses such intrinsics is ported from a traditional platform to Kunpeng, and encapsulates the instructions as an independent interface module (header file in C language). AVX2KI reduces repeated development in a project where a large amount of code can be ported.

AVX2Neon

A library for translating AVX instructions to NEON instructions.

B

Term

Definition

bare metal

A bare metal server is a physical machine (sometimes called a host) that provides a hardware environment for virtual machines.

BC

A BC file is an intermediate file (IR) generated by compiling the source code using LLVM. It is the binary representation of the IR.

bcache

Bcache is a cache in the Linux kernel's block layer.

BIOS

The basic input/output system (BIOS) is a relatively small program that resides in programmable, non-volatile memory on a server or server device and that is responsible for booting the device and performing certain operating system–independent I/O operations.

BiSheng Compiler

The BiSheng Compiler is a high-performance compiler developed based on the open source LLVM and optimized for the Kunpeng platform. It uses Flang as the default frontend compiler for the Fortran language.

BiSheng JDK

Based on OpenJDK, the BiSheng JDK is a high-performance OpenJDK release that can be used in production environments. It accumulates a large number of application scenarios and addresses the problems and requirements raised by Java developers, resolves multiple problems encountered during service running, and optimizes the performance of the Arm architecture.

BMC

The baseboard management controller (BMC) complies with the Intelligent Platform Management Interface (IPMI) standard, responsible for collecting, processing, and storing sensor signals, and monitoring the operating status of each component. It provides hardware status and alarm information of managed devices for the chassis management module.

Build affinity

A feature of the Kunpeng DevKit Affinity Analyzer. It analyzes the content in Makefile and CMakeLists.txt that can be replaced with content in the Kunpeng library, and provides replacement suggestions and function repair.

Byte alignment check

A feature of the Kunpeng DevKit Affinity Analyzer. It checks the structure variables in the user software, analyzes the memory allocation, and provides feedback to the user.

C

Term

Definition

CA

A client application (CA) is an application that works with trusted applications (TAs) in a rich execution environment (REE) and is responsible for external communication.

Cache line alignment check

A feature of the Kunpeng DevKit Affinity Analyzer. It checks the 128-byte alignment of structure variables in the C/C++ source code to improve memory access performance.

Calculation precision analysis

A feature of the Kunpeng DevKit Affinity Analyzer. It locates the precision differences of the Fortran, C, and C++ languages caused by x86 and Kunpeng instructions.

Calico

Calico creates and manages a flat layer-3 network (no overlay is required) and assigns each container a routable IP address. Communication does not require encapsulating or decapsulating packets. This means low network performance loss, easy fault location, and flexible horizontal scaling.

Calico also provides rich and flexible network policies based on iptables to ensure that multi-tenant isolation, security groups, and other reachability restrictions can be implemented based on the ACL on each node.

CCOS

The confidential computing OS (CCOS), also called confidential OS, is an upgrade of the iTrustee TEE OS. It supports containerized deployments and simplifies application deployment, porting, and development.

Ceph client

The Ceph client contains plugins used to access a Ceph storage cluster, such as object gateways, Ceph block devices, databases, and Filesystem in Userspace (FUSE) tools.

Ceph CRUSH

The Ceph Controlled Replication Under Scalable Hashing (CRUSH) is used by the Ceph client and object storage daemon (OSD) to calculate object location information.

Ceph file system

Ceph file system (CephFS) is a POSIX-compatible file system that uses Ceph storage clusters to store data.

Ceph object storage

Object storage products, services, and capabilities of the Ceph system.

cloud phone

A cloud phone is an emulated mobile phone running in a data center. It is operated by a cloud phone service vendor and sold to end users. Users access the cloud phone through the Internet.

cloud phone Turbo toolkit

The Kunpeng BoostKit for ARM Native solution leverages homogeneous Arm instruction sets to support lossless migration of mobile apps to the cloud. It delivers a cloud phone Turbo toolkit by incorporating the Kbox cloud phone container, instruction stream engine, video stream engine, touch engine, audio engine, and other, helping achieve the ultimate performance of cloud phones.

CloudTest

CloudTest is a one-stop test platform that allows developers to conduct API and performance tests and manage these tests in the cloud. Developed on the basis of the DevOps Agile testing concept, CloudTest helps developers improve management efficiency and deliver high-quality products.

CMakeLists

Configuration file of the software build tool CMake. This configuration file defines the software compilation process.

compression algorithm

A compression algorithm is used for data compression. It is also known as signal coding in the field of electronics and communications, which involves compression (encoding) and restoration (decoding).

confidential OS

It refers to the next-generation TEE OS for Huawei Kunpeng confidential computing. It is enhanced for easy deployment, porting, and development of applications.

confidential computing TrustZone kit

A deliverable of the Kunpeng BoostKit for Confidential Computing, containing an SDK (including documents, demos, and tools), TEE OS, and REE patches. It is open-sourced, and its source code is released to specific users.

containerd

containerd is an industry-standard container runtime with an emphasis on simplicity, robustness and portability. It is available as a daemon for Linux and Windows. It manages the complete container lifecycle of its host system, including image transfer and storage, container execution and supervision, low-level storage, and network attachments.

control engine

A core engine suite provided by Huawei for control processing in cloud phone scenarios.

control plane

The control plane transmits instructions and calculates entries. It covers protocol packet forwarding, protocol entry calculation, and maintenance.

control SDK

The control software development kit (SDK) is provided on cloud phones and user terminals for the client to capture operations and for the server to inject operations.

CPI

Cycles per instruction (CPI) is a ratio of CPU cycles to retired instructions, indicating the clock cycle consumed by each instruction.

CPU Cycles performance event

Based on the event sampling principle and performance events, performance analysis can be performed on performance metrics related to processors and operating systems. This metric can be used to locate performance bottlenecks and hotspot code. CPU Cycles is the default performance event, which is also called clock tick. The sampling is performed based on tick interrupts. That is, sampling is triggered when a tick interrupt occurs, and the current context of the program is determined in the sampling point.

critical region

A critical region, or critical section, is a piece of code that can only be executed by one process or thread at a time. It will usually terminate in fixed time, and a process will only have to wait a fixed time to enter it. Some synchronization mechanism is required at the entry and exit of the critical section to ensure exclusive use.

CRUSH algorithm

The Controlled Replication Under Scalable Hashing (CRUSH) algorithm is used by the Ceph client and object storage daemon (OSD) to calculate object location information.

CT

Connection tracking (conntrack, CT) refers to tracking (and recording) connections and their states. It is the basis of many network services and applications, such as Kubernetes Service, ServiceMesh sidecar, software layer 4 load balancer (L4LB) LVS/IPVS, Docker network, Open vSwitch (OVS), and iptables host firewall.

CTS

Compatibility Test Suite (CTS) is a test suite developed and maintained by Google for ensuring compatibility of Android framework implementations across platform releases. The suite also includes instrumentation tests and the GTest framework.

CUDA

Compute Unified Device Architecture (CUDA) introduced by NVIDIA is a general purpose parallel computing platform and programming model that leverages the parallel compute engine in NVIDIA GPUs to solve many complex computational problems in a more efficient way than on a CPU.

CUDA-GDB

CUDA-GDB is the NVIDIA tool for debugging CUDA applications running on Linux and QNX. CUDA-GDB is an extension to GDB, the GNU Project debugger. CUDA-GDB delivers a seamless debugging experience that allows developers to debug both the CPU and GPU portions of an application simultaneously.

CUDA information

CUDA information displayed during CUDA program debugging.

CUDA Toolkit

CUDA Toolkit consists of all CUDA tools delivered by NVIDIA.

CV

The coefficient of variation (CV) is a statistical metric that measures the relative variability of data by expressing the standard deviation as a proportion of the mean. It indicates how dispersed the data points are relative to the average, making it useful for comparing variability across different data sets.

D

Term

Definition

DAS

Data Analysis Service (DAS) provides data analysis services in storage systems' production and running states to support smart data prefetch and improve storage service performance.

data plane

The data plane, also known as the user plane, forwards and processes user services based on instructions from the control plane.

data scrubbing

Data scrubbing is the process of detecting and correcting (or removing) corrupt or inaccurate records from a record set, table, or database. Used mainly in databases, the term refers to identifying incomplete, incorrect, inaccurate, irrelevant, etc. parts of the data and then replacing, modifying, or deleting this dirty data.

DDR

Double Data Rate (DDR) is a type of memory technology that transfers data on both the rising and falling edges of a clock signal. This doubles the memory bandwidth and increases the speed of data transfer.

DDRC

A DDR memory controller is a core control unit that interfaces between a processor and DDR memory. It is responsible for translating the processor's read and write requests into physical command sequences that comply with the DDR protocol specification.

DEB

File name extension of Debian software packages.

dedicated software porting

A feature of the Kunpeng Porting Advisor. It automatically ports, compiles, and builds common software source code in big data, database, high-performance computing, and web scenarios to generate software packages compatible with the Kunpeng platform. This feature is available only on the Kunpeng platform.

Deflate

In computing, Deflate is a lossless data compression algorithm based on the LZ77 algorithm and Huffman Coding.

dEQP

drawElements Quality Program (dEQP) is a GPU testing suite.

device-cloud synergy engine

The device-cloud synergy engine is a core component that implements real-time interaction between physical terminals and cloud phones. It consists of the video stream engine and instruction stream engine.

DH

Diffie-Hellman (DH) key exchange is a public key algorithm that allows two communication parties to establish a shared key by exchanging some data instead of transmitting the key.

DML

Data manipulation language (DML) is an instruction set used for accessing data for database objects.

Docker

Docker is an open source containerization platform. It enables developers to package applications into containers—standardized executable components that combine application source code with all the OS libraries and dependencies required to run the code in any environment. Containers use the sandbox mechanism, which eliminates interface between containers.

domain name

A domain name consists of digits and slashes (/) or a character string. Each domain name corresponds to an IP address.

Donau Scheduler

Donau Scheduler is a Huawei-developed HPC cluster scheduler that provides job scheduling with high resource utilization and throughput for large clusters.

DPAK

The Kunpeng Data Processing & Acceleration Kit (DPAK) provides a unified software framework for data processing units (DPUs) and SmartNICs. With the Kunpeng DPAK, Huawei will cooperate with users and peer vendors to build a complete software ecosystem. The southbound APIs are available to DPUs and SmartNICs of multiple vendors, and the northbound APIs are provided to reduce the device adaptation workload and development costs.

DPDK

The Data Plane Development Kit (DPDK) is a set of libraries that accelerate packet processing on a variety of CPU architectures.

DPU

A data processing unit (DPU) is a dedicated data-centric processor. It is a network adapter that has the acceleration capability and can offload the CPU function of a server. It uses software-defined technologies to support infrastructure resource virtualization and implement infrastructure services such as storage, security, and quality of service (QoS) management.

DSL

A DSL is a computer language designed for a specific application domain or service scenario. It encapsulates underlying complex logic and interfaces to provide highly abstract programming interfaces.

DTOE

The direct TCP offload engine (DTOE) is a TOE technology deeply optimized by Huawei. It is used for TCP/IP offload and provides the partial TCP offload function. The three-way handshake is implemented by the OS protocol stack and then offloaded to the chip for TCP processing. The DTOE supports user-mode passthrough and accelerated offload of upper-layer services. It supports standard socket interfaces.

Dynamic Memory Consistency Check

It is a feature of the Kunpeng Affinity Analyzer. It checks for any memory inconsistency problems in dynamic mode when C/C++ source code is running on the Kunpeng platform, and also provides check reports and memory barrier insertion suggestions.

E

Term

Definition

eBPF

Extended Berkeley Packet Filter (eBPF) is a kernel technology that lets programs run without need to modify the kernel source code.

EC instruction acceleration

CPU instructions are used to implement erasure code computing and deliver higher computing performance than software programming languages.

ECN

Explicit Congestion Notification (ECN) is an extension of Internet Protocol (IP) and Transmission Control Protocol (TCP).

EC Turbo

EC Turbo is a Huawei-developed feature library for optimizing the performance of Ceph erasure code storage pools.

erasure code

A storage mode in which 1.x data copies are stored to achieve low data redundancy but high data reliability. Data is divided into data fragments of a fixed length. Based on the erasure code (EC) algorithm, every M continuous data fragments are calculated to generate N parity fragments. The value of N is smaller than that of M.

F

Term

Definition

FFmpeg

A project for handling audio, video, and other multimedia files and streams.

file transfer

The act of downloading files from or uploading files to a remote computer by using the File Transfer Protocol (FTP).

flame graph

Flame graphs, introduced by Brendan Gregg, are a visualization of hierarchical data, created to visualize stack traces of profiled software so that the most frequent code-paths to be identified quickly and accurately.

FlexDA

FlexDA is an open programming framework that provides flexible APIs and a toolchain for developers.

G

Term

Definition

GC

Garbage collection (GC) is process of reclaiming the runtime unused memory automatically. In other words, it is a way to destroy the unused objects.

GCC for openEuler

GCC for openEuler is a high-performance compiler for Kunpeng 920 processors in Linux. It is developed based on open source GCC 10.3. It has optimizations in software and hardware collaboration, and explores the ultimate performance in fields such as OpenMP, Scalable Vector Extension (SVE) vectorization, and math libraries.

GDB

GDB is the GNU Project debugger that allows you to see what is going on inside another program while it executes or what another program was doing at the moment it crashed.

gdbserver

gdbserver is a control program for Unix-like systems, which is installed on the to-be-debugged node and allows you to connect your program with GDB.

glibc

The GNU C Library (glibc) is the GNU Project's implementation of the C standard library.

GPS mock

A technology that emulates GPS on mobile phones. The technology injects predefined data (fixed GPS information, which cannot be dynamically changed) through the predefined interface of GPS mock. The cloud phone obtains the GPS mock information during running, ensuring the GPS availability of the cloud phone.

graph analysis algorithm library

The Spark GraphX library leverages a distributed computing framework to process large-scale graph data. It includes a series of graph algorithms for graph data computing and analysis, such as graph search, clustering, pruning, and traversal. Kunpeng BoostKit provides a graph analysis algorithm library, which has deep optimization in algorithm principles and Kunpeng affinity based on the native Spark algorithms, bringing about higher algorithm execution efficiency.

GRO

Generic receive offload (GRO) aggregates several small packets into a large one and then transmits the aggregated packet to the kernel IP stack.

GSO

Generic segmentation offload (GSO) is a widely used software implementation of TCP Segmentation Offload (TSO), which reduces per-packet processing overhead.

guest OS

A guest OS is the operating system (OS) installed on either a virtual machine (VM) or a partitioned drive.

guest physical address

To implement memory virtualization and enable a guest to use an isolated and continuous memory space starting from zero, KVM introduces a guest physical address (GPA). GPA is not a real physical address but only a mapping of a virtual address of the host in the guest address.

gyroscope mock

A technology that emulates gyroscopes on mobile phones. Gyroscope mock (status mock) enables the gyroscope function on cloud phones. Then upper-layer services can sense the gyroscope usage.

gzip

GNU zip (gzip) is a lossless data compression algorithm.

H

Term

Definition

HAF

The Homogeneous Acceleration Framework (HAF) provides user-friendly programming methods and application programming interfaces (APIs) to quickly, effectively, and securely offload and push specified acceleration segments of your service programs to offload nodes, optimizing the offload effect.

hardware acceleration library

A library that is optimized by using hardware acceleration technologies.

HCCS

The Huawei Cache Coherence System (HCCS) is a Huawei-defined protocol for maintaining data consistency across multiple sockets.

HHD

A hybrid hard drive (HHD) is a large-capacity storage device that contains both conventional drives and flash memory modules.

HMPP

Kunpeng Hyper Media Performance Primitives (HMPP) provides functions for allocating and releasing vector buffers, vector initialization functions, vector mathematical operation functions, vector statistics operation functions, vector sampling functions, vector conversion functions, filtering functions, and transform (such as fast Fourier transform) functions. It complies with the IEEE 754 (a technical standard for floating-point arithmetic) and can be used on the Kunpeng platform.

HMPPA

An audio library in Kunpeng's Hyper Media Performance Primitives (HMPP).

HMPPS

A signal library in Kunpeng's Hyper Media Performance Primitives (HMPP).

host OS

A host OS is the operating system (OS) installed on a computer system that communicates with the underlying hardware.

hosting

Applications or games are hosted on the cloud and they run automatically without the need to present the application/game user interface on a physical terminal.

HPC

High-performance computing (HPC) is a computer cluster system that connects computer systems using interconnection technologies. It relies on the integrated compute capability of all the connected systems to execute computing tasks at scale. For this reason, HPC is also often referred to as an HPC cluster.

HPRE

The High Performance RSA Engine (HPRE) is the kernel-mode driver of the HPRE accelerator module.

HTL

The Hyper Thread Library (HTL) is a lightweight user-level thread library built on kernel-mode threads. It is used to resolve application performance deterioration and system resource contention when a large number of kernel-mode threads are running, especially in nested parallel scenarios with extreme low performance. This library improves concurrency and performance while reducing resource consumption.

HTTPS

Hypertext Transfer Protocol Secure (HTTPS) is an extension of the Hypertext Transfer Protocol (HTTP). It uses encryption for secure communication over a computer network, and is widely used on the Internet.

Hyper MPI

Based on Open MPI 4.1.1 and Open UCX 1.10.1, Hyper MPI supports parallel computing APIs of the MPI-V3.1 standard, and optimizes the collection communication framework.

Hyperscan

A high-performance regular expression matching library.

I

Term

Definition

I/O passthrough

The I/O passthrough tool is an I/O process optimization tool for Ceph clusters in general-purpose configuration. It automatically improves Ceph cluster performance.

ICMP

The Internet Control Message Protocol (ICMP) is a network-layer protocol that provides message control and error reporting between a host server and an Internet gateway.

IMEI mock

A technology that emulates International Mobile Equipment Identity (IMEI) numbers on mobile phones, enabling the IMEI function of cloud phones. IMEI mock injects the IMEI information provided by users into cloud phones so that IMEI works on cloud phones.

instruction stream cloud phone

A cloud phone solution established on basic cloud phones, the instruction stream engine, and other reference prototypes, which can implement real-time interaction between physical terminals and cloud phones.

instruction stream engine

Secondary development package for cloud phone instruction streams, including the client and server development packages. Its main functions include the acquisition of image instructions from the server and the execution of rendering instructions on the client, and rendering display.

instruction translation

A process that translates one instruction set into another.

instrumentation

In program development, instrumentation refers to inserting extra logic (such as logging, performance statistics, and debugging information) into code to detect, debug, or analyze program running behavior without changing original functions.

interrupt

A temporary suspension of a process. The computer suspends one activity in case of an exception and starts processing another activity. The computer resumes the interrupted activity after completing the other activity.

IPC

Instructions per cycle (IPC) is the average number of instructions executed by a CPU in each clock cycle. It reflects the smoothness of CPU execution. If a four-transmitter Kunpeng 920 processor executes four instructions in each clock cycle when its pipeline operates in full load, the IPC is 4.0. An IPC value closer to 4.0 indicates that the program uses the processor features to a greater extent.

IPsec

Internet Protocol Security (IPsec) is a protocol family defined by the Internet Engineering Task Force (IETF). By authenticating and encrypting each IP packet of a data stream, this protocol family provides high-quality, interoperable, and cryptology-based security for IP packets.

IPU

The infrastructure processing unit (IPU) is an advanced network device with hardened accelerators and Ethernet connectivity that accelerates and manages infrastructure functions using a tightly coupled, dedicated, programmable core. The IPU provides complete infrastructure offload and provides an additional security layer by functioning as a control point of the hosts running infrastructure applications.

ISA-L

The Intelligent Storage Acceleration Library (ISA-L) is a collection of optimized low-level functions used primarily in storage applications.

iSCSI

The Internet Small Computer System Interface (iSCSI) is an IP-based standard for connecting to data storage devices over a network and transferring data by carrying SCSI commands over an IP network.

Istio

Istio is an open source service mesh that layers transparently onto existing distributed applications. Its powerful features provide a uniform and more efficient way to secure, connect, and monitor services. The Istio control plane provides an abstraction layer above the underlying cluster management platform such as Kubernetes and Mesos.

iTrustee SDK

The software development kit for trusted applications (TAs) and client applications (CAs), including the basic rsa-demo and secstorage-demo source code.

J

Term

Definition

JAR

A Java software package format.

JDK

Java Development Kit (JDK) is a software development kit in Java. It is mainly used by Java applications on mobile devices and embedded devices. JDK is the core of Java development. It contains the Java operating environment (JVM + Java system class library) and Java tools.

journal

A log appending model.

JVM Jitter Detector

A diagnosis tool in the Kunpeng DevKit. It dynamically observes the JVM internal status, detects JVM exceptions that cause application performance fluctuation, analyzes associated events, and provides mitigation suggestions, achieving exception detection, demarcation, and mitigation in minutes.

Java Virtual Machine

A virtual machine capable of running Java bytecode, implemented as a stack machine. It is a part of the Java platform and can run software programs written in Java. The JVM has a comprehensive hardware architecture, including processors, stacks, and registers, along with corresponding instruction sets.

K

Term

Definition

KAE

Kunpeng Accelerator Engine (KAE) is a hardware acceleration solution based on the Kunpeng 920 processor.

KAE encryption and decryption

Encryption and decryption enabled by the Kunpeng Accelerator Engine (KAE).

KAE MD5 digest algorithm

The KAE MD5 digest algorithm leverages the Kunpeng hardware acceleration module to implement the MD5 algorithm. It provides high-performance symmetric and asymmetric encryption and decryption based on the lossless user-mode driver framework. It is compatible with OpenSSL 1.1.1a and later versions and supports synchronous and asynchronous mechanisms.

KAEzip

KAEzip is the compression module of the Kunpeng Accelerator Engine (KAE). It uses the Kunpeng hardware acceleration module to implement the deflate algorithm and works with the lossless user-mode driver framework to provide an interface for high-performance compression in Gzip or zlib format.

KAE zlib compression

KAE zlib compression is an implementation of the KAEzip zlib library in a Ceph cluster. It is used to maximize the CPU's capability of processing OSD processes in Ceph balanced scenarios with large block read/write. Data is compressed and decompressed in the OSD engine. The compression and decompression processes are accelerated by the zlib hardware compression engine of the Kunpeng 920 processor.

KAEzstd

KAEzstd is the compression module of the Kunpeng Accelerator Engine.

Kbox basic cloud phone

A cloud phone solution based on the Kbox provided by Huawei.

Kbox cloud phone container

The Kbox cloud phone container solution is an important part in the cloud phone Turbo toolkit of Kunpeng BoostKit for ARM Native. It is the base software for running Android native applications.

kernel mode

When a task (process) executes kernel code upon a system call, the process is in kernel mode. In this case, the processor is executed in the kernel code with highest privilege (level 0). When a process is in kernel mode, the executed kernel code uses the kernel stack of the current process. Each process has its own kernel stack.

TLS

It refers to Transport Layer Security (TLS) socket kernel offload. TLS offload permits the kernel to send and receive data over a socket using TLS where the TLS framing and encryption is performed in the kernel rather than userland.

key

A key is a parameter that is entered when converting plaintext into ciphertext or ciphertext into plaintext. Keys are classified into symmetric keys and asymmetric keys.

KML

The Kunpeng Math Library (KML) provides high-performance mathematical functions and algorithms which are optimized based on the Kunpeng platform and used in basic linear algebra operations, vector operations, scalar operations, Fourier transforms, etc. All function interfaces are implemented by C, C++, and assembly languages. Some interfaces are compatible with Fortran, and some interfaces are encapsulated using Java. Based on the Kunpeng hardware features, the KML provides high performance through vectorization, data prefetch, data rearrangement, assembly optimization, and algorithm innovation, being widely used in meteorology, fluid mechanics, quantum mechanics, and other high-performance computing fields.

KML_BLAS

Based on the Kunpeng architecture, KML_BLAS performs in-depth mining on the computing efficiency of Basic Linear Algebra Subprograms (BLAS) by means of vectorization, data prefetch, compilation optimization, and data rearrangement, so that the performance of BLAS interface functions can approach the theoretical peak.

KML_EIGENSOLVER

KML_EIGENSOLVER is an eigenvalue solving library, which solves some eigenvalues and eigenvectors of a large symmetric or conjugate matrix and supports MPI running on multiple nodes.

KML_FFT

KML_FFT is a Kunpeng math library of fast Fourier transform (FFT). It is the fast computing methods of discrete Fourier transform (DFT) and inverse discrete Fourier transform (IDFT), and is widely used in the fields of engineering, science, and mathematics. KML_FFT reduces the complexity of Fourier transform calculation from O(n2) to O(n log n), and is listed in the top 10 algorithms in the 20th century by the IEEE Computing in Science & Engineering.

KML_JAVA

A Kunpeng math library based on the JNI technology and encapsulated in Java.

KML_LAPACK

KML_LAPACK optimizes the Linear Algebra PACKage (LAPACK) computing efficiency based on the Kunpeng architecture by means of block division, algorithm combination, multithreading, and BLAS interface optimization.

KML_MATH

KML_MATH is a basic math library that provides functions with high performance that is based on Kunpeng processors by means of reducing periodic functions and improving algorithms.

KML_NUMPY

Python NumPy module encapsulated using the Kunpeng Math Library (KML).

KML_SCALAPACK

KML_SCALAPACK is a distributed library for linear algebra operations on the Kunpeng platform. It optimizes the computing efficiency of the native Scalable Linear Algebra PACKage (ScaLAPACK) library by means of block division, algorithm combination, and multi-process optimization.

KML_SOLVER

KML_SOLVER is a sparse solvers library. It provides direct solvers and iterative solvers, and supports multiple threads on a single node and multiple MPI processes in a cluster.

KML_SPBLAS

KML_SPBLAS (Sparse Basic Linear Algebra Subprograms) provides high-performance vector and matrix operations for sparse matrices in packed format based on the Kunpeng architecture. Based on the instruction set and architecture features of Kunpeng, this library is developed to improve the service performance of HPC and big data solutions.

KML_SVML

KML_SVML is a short vector mathematical library that processes input vectors in batches by using methods such as NEON instruction optimization and inline assembly. It makes full use of register features in the Kunpeng architecture to improve performance of Kunpeng servers.

KML_VML

KML_VML (vector mathematical library) performs vectorization on input data by using methods such as NEON instruction optimization and inline assembly. It makes full use of register features in the Kunpeng architecture to improve performance of Kunpeng servers.

KML_VSL

KML_VSL is a Kunpeng vector statistical library that provides multiple random number generation functions to generate random numbers that conform to different distributions.

K-NET

K-Network

KOVAE

The Kunpeng Online Vectorized Analysis Engine (KOVAE) works at the MySQL execution layer. It is a lightweight implementation of the secondary engine and logically locates below the optimizer layer. The KOVAE presents itself as a MySQL plugin.

KQMalloc

Kunpeng Quick Malloc (KQMalloc) is a high-performance memory library designed for single-threaded applications. This allocator can only improve performance of single-threaded applications.

Kube-OVN

Kube-OVN integrates the OVN-based network virtualization with Kubernetes. It offers an advanced container network fabric for enterprises with rich functions and the easy operations. The software is open-sourced based on Apache 2.0.

Kubernetes

Kubernetes, also known as K8s, is an open-source system for automating deployment, scaling, and management of containerized applications. It groups containers that make up an application into logical units for easy management and discovery. Kubernetes builds upon experience of running production workloads at Google, combined with best-of-breed ideas and practices from the community. Kubernetes classifies network scenarios into the following types: communication between containers in the same pod, communication between pods, communication between pods and services, and communication between systems outside the cluster and services.

Kunpeng Automatic Tuning

The Kunpeng DevKit AutoTuner supports the top 10 big data and database applications. Using built-in AI algorithms, it automatically applies optimal parameter combinations to real-world applications, enabling out-of-the-box optimization for typical workloads.

Kunpeng BoostKit for ARM Native

Kunpeng BoostKit for ARM Native is a set of software that ports Android applications to Arm servers without any loss. It uses the homogeneous advantages of the Arm instruction set of the Kunpeng processor, implementing cloud-based computing of device workloads.

Kunpeng BoostKit for Virtualization

Kunpeng BoostKit for Virtualization consists of a set of software packages and references. It provides high-performance open source components, basic acceleration software packages, and references. It gives full play to the advantages of Kunpeng multi-core computing and provides abundant computing resources. CPU resources constructed based on physical cores provide better resource isolation for virtualization scenarios, and the performance data curve is smooth. Rich computing resources provide higher VM density. The number of servers to be deployed is reduced while ensuring the same computing power, reducing capital expenditure.

Kunpeng Health Inspector

A diagnosis tool in the Kunpeng DevKit. It collects hardware information about CPUs, memory, NICs, and PCIe devices, generates a health report, and provides tuning suggestions to eliminate performance deterioration caused by hardware faults or configuration errors.

Kunpeng Debugger

A tool for CUDA application debugging and HPC parallel debugging on the Kunpeng platform.

Kunpeng Performance Boundary Analyzer

The Kunpeng Performance Boundary Analyzer supports one-click collection of multi-dimensional performance data, including memory access statistics, NUMA behavior, microarchitectural metrics, and miss latency. After analyzing the collected data, it generates time series diagrams for each metric, illustrating resource usage over time from the service layer down to the processor layer.

KVM

Kernel-based Virtual Machine (KVM) is an open source virtualization technology built in Linux. Specifically, KVM helps users turn Linux into a hypervisor that enables a host computer to run multiple isolated virtual environments, i.e., virtual clients or VMs.

L

Term

Definition

LACP

Link Aggregation Control Protocol (LACP) is a dynamic link aggregation protocol that improves the transmission speed and reliability. The two ends of the link send LACP packets to inform each other of their parameters and form a logical aggregation link. After the aggregation link is formed, LACP maintains the link status in real time and dynamically adjusts the ports on the aggregation link upon detecting the failure of a physical port.

large-scale container networking

In the container-based microservice scenario, network plane components Open vSwitch and Calico are used to deploy container nodes in large-scale clusters so that containers within a node or between physical nodes can communicate with each other. Users can select network plane components based on the actual scale, function requirements, and performance requirements of their service scenarios.

librados

An interface library of Ceph's core module RADOS.

libvirt

libvirt is an open source API, daemon, and management tool for managing hardware virtualization. It can be used to manage KVM, Xen, QEMU, and other virtualization technologies. libvirt built-in APIs are widely used at the orchestration layer of hypervisors in developing cloud solutions.

Link Latency Detection

A CLI tool of the Affinity Analyzer. It provides Kunpeng network detection and analysis functions, collects latency statistics of the network protocol stack, and analyzes network performance bottlenecks.

load balancer

A server node that provides the load balancing function. Load balancing is a technology that distributes load among multiple computers (computer cluster), network connections, CPUs, drivers, or other resources, so as to optimize resource usage, maximize the throughput rate, minimize the response time, and prevent overload. Using multiple server components with load balancing instead of a single component improves reliability through redundancy. Implemented by dedicated software and hardware, load balancing properly distributes a large number of jobs over multiple operation units, aiming to achieve high concurrency and high availability.

LRO

Large Receive Offload

M

Term

Definition

machine learning algorithm library

MLlib is Spark's machine learning library. Its goal is to make practical machine learning scalable and easy. It provides a series of machine learning algorithms including classification, regression, and clustering. Kunpeng BoostKit provides a machine learning algorithm library, which has deep optimization in algorithm principles and Kunpeng affinity based on the native Spark algorithms, bringing about higher algorithm execution efficiency.

Make

An open-source C/C++/Fortran software build tool led by GNU.

Makefile

Configuration file of the software build tool Make. This configuration file defines the software compilation process.

Mangled Name

A mechanism used by the compiler to rename functions and variables. It is mainly used to resolve name conflicts and ensure that each symbolic name is globally unique after compilation.

Matricization check

A feature of the Kunpeng DevKit Affinity Analyzer. It checks matricizable source code snippets and provides modification suggestions.

MCP

The Model Context Protocol (MCP) is an open protocol that standardizes how applications provide context to LLMs. You can think of MCP as similar to the USB-C port of an AI device—it offers a universal way to connect different peripherals and accessories, much like USB-C does for hardware devices.

MCU

A microcontroller unit (MCU) is an embedded small system used for data processing unit (DPU) management. It is independently mounted on the mainboard.

MD5

Message Digest Algorithm 5 (MD5) is a common hash algorithm used to convert data of any length into a fixed-length hash value (usually 128 bits). It is a one-way encryption algorithm and is irreversible. That is, the original data cannot be restored from the hash value.

memory consistency check

A feature of the Kunpeng DevKit Affinity Analyzer. It checks for memory inconsistency issues in C/C++ source code running on the Kunpeng platform and provides check results and suggestions for inserting memory barriers.

Memory Fabric

This feature constructs a global memory pool based on a new network pattern to implement cross-node memory access, accelerating cross-node data sharing and exchange of distributed applications.

memory fragment

Memory fragments refer to all unavailable free memory in a system. These memory resources are small and scattered in different locations in a discontinuous manner, which is difficult for the memory allocator to allocate them to a new process.

memory interleaving

In computing, memory interleaving is a design that compensates for the relatively slow speed of dynamic random-access memory or core memory, by evenly spreading memory addresses across memory banks. Continuous memory reads and writes use each memory bank in turn, resulting in higher memory throughput by reducing the wait time for the memory banks to become ready for the operations.

middleware

Middleware sits between an operating system and the applications that run on it to provide a method of communication and data management. Middleware makes it easier for software developers to implement communication and input/output, so they can focus on the specific purpose of their application.

mpirun

mpirun is a utility used to start parallel MPI applications and provide functions such as communication and cleanup between processes.

MPAM

Memory System Resource Partitioning and Monitoring (MPAM) is a new feature available in Armv8. It allocates and monitors resources including the cache, memory bandwidth, and system memory management unit (SMMU). Its counterpart is the Resource Director Technology (RDT) of x86. MPAM reduces performance interference between different workloads at the hardware layer, ensuring stable performance for prioritized tasks. MPAM has brought substantial benefits in virtualization and x86+Arm hybrid deployments.

MSS

Maximum Segment Size

MySQL fine-grained lock tuning

A solution for fine-grained lock splitting based on service requirements.

MySQL lock-free tuning

A solution that unlocks locks based on service requirements.

MySQL parallel query tuning

A solution that uses data segmentation, multiple worker threads for parallel processing, and the leader thread to summarize result sets to accelerate the query capability.

N

Term

Definition

NEON instruction

Arm NEON instruction set.

network acceleration

Network acceleration means that software or hardware solutions are used to improve network packet forwarding performance and reduce CPU usage.

NFS

Network File System (NFS) is a distributed file system protocol that enables clients to access files on servers in a way similar to how you access files through local storage.

NFVI

Network Functions Virtualization Infrastructure (NFVI) is a set of resources used to host and connect virtual functions. Specifically, NFVI is a cloud data center that includes servers, hypervisors, OSs, VMs, virtual switches, and network resources.

NIC

A network interface card (NIC), also known as a network adapter, is a hardware component, typically a circuit board or chip, which is installed on a computer so it can connect to a network.

NUMA

Non-uniform memory access (NUMA) is a CPU architecture that consists of multiple CPU modules. Each CPU module consists of multiple CPUs (for example, four CPUs) and has its independent local memory and I/O slots. The nodes in the NUMA architecture can connect to each other and exchange information through an interconnect module, enabling each CPU to access the memory of the entire system.

NVIDIA GPU

NVIDIA is the inventor of graphics processing units (GPUs). A GPU, also called a display core or a video processor, is a specialized electronic circuit initially designed to accelerate computer graphics and image processing (either on a video card or embedded on the motherboards, mobile phones, personal computers, workstations, and game consoles).

NVMe

Non-Volatile Memory express (NVMe) is a logical-device interface specification (similar to AHCI, and equivalent to the application layer in the communication protocol) for accessing a computer's non-volatile storage media usually attached via PCI Express (PCIe) bus (e.g., SSDs with flash memory). The PCIe bus protocol is not necessarily required.

NVMe-oF

Non-Volatile Memory express over Fabrics (NVMe-oF) is an extension of the NVMe protocol on the network that extends far beyond current SSD-based servers. NVMe was around back in 2011, while fabric extensions were first standardized in 2016. NVMe-oF inherits all the advantages of NVMe, including lightweight and efficient command sets, multi-core awareness, and protocol parallelism. NVMe-oF is network agnostic because it supports all common fabrics, including Fibre Channel, InfiniBand, and Ethernet.

NVMe SSD atomic write

A technology that ensures that an I/O operation is completely executed.

O

Term

Definition

OCF

The Open CAS Framework (OCF) is a high-performance block storage caching meta-library written in C language.

OCK

Open Computing Kit (OCK) is a base software platform developed by the Huawei Computing Product Line. It provides cross-domain capabilities for Huawei Kunpeng, Ascend, and Cluster Computing products.

offload

Offload is the process of transferring functions from software to hardware, which shortens the CPU execution path, reduces CPU overhead, and improves processing performance.

OLAP

Online Analytical Processing (OLAP) is a major application of data warehouse systems, which is designed specifically to support complex analysis. OLAP can quickly and flexibly perform complex query and processing of a large amount of data based on the requirements of analysis personnel, and provide query results for decision-making personnel in an intuitive and easy-to-understand manner so that they can obtain accurate information about the enterprise operating status, learn the demands, and make correct decisions.

OLTP

Online Transaction Processing (OLTP) is a transaction-oriented processing system, which immediately sends customers' raw data to the computing center for processing and provides the processing result within a short period of time. OLTP is a main application of traditional relational databases. It processes basic and routine transactions, such as banking transactions.

OmniAdvisor

The Spark and Hive big data engines have a large number of parameters that require tuning to get the optimal performance. However, manual tuning is often far from being efficient. OmniAdvisor aims to improve the tuning efficiency through AI-based automatic parameter recommendation.

OmniData

It is an operator pushdown feature. It pushes operators of a big data engine to storage or offload nodes to implement near-data computing. This reduces network bandwidth consumption and improves the query performance of the query engine.

OmniHBaseGSI

HBase has a built-in primary key index. However, if a non-row key is used for query, the entire table must be scanned, which consumes a large number of resources and also prolongs the query duration. OmniHBaseGSI, the HBase global secondary index feature, creates global secondary indexes for non-row key columns to accelerate queries on these columns.

OmniMV

It is a materialized view feature. It uses AI algorithms to recommend the optimal materialized view from historical SQL queries, automatically matches SQL statements with a materialized view in Spark or ClickHouse, and replaces part of the SQL statements in an execution plan with the matched materialized view. OmniMV greatly reduces repeated calculations and increases query efficiency.

OmniOffload

It is an operator offload feature. It offloads operators of a big data engine to a data processing unit (DPU) to implement near-data computing. This reduces network bandwidth consumption and improves the query performance of the query engine.

OmniOperator

It is an operator acceleration feature. It uses native code (C/C++) to implement big data SQL operators to improve query performance. With columnar storage and vectorized execution technologies as well as the Kunpeng BoostKit Library, OmniOperator improves operator execution efficiency and query performance of the query engine.

OmniRuntime

Runtime base of big data applications. It is the collection of OmniData, OmniOperator, OmniShuffle, OmniMV, OmniAdvisor, and OmniHBaseGSI features.

OmniShield

The OmniShield feature runs in the TEE and provides data, network, and drive encryption and decryption as well as application-level remote attestation capabilities for Spark. This feature ensures data security throughout the lifecycle of storage, transmission, and computing.

OmniShuffle

It is a shuffle acceleration feature. Based on network media such as TCP and RDMA, OmniShuffle optimizes the cross-node data write, transmission, and read processes during data analysis to improve the data shuffle and analysis performance.

OmniVec

It is an in-memory columnar data structure. The data storage structure processed by OmniOperator is OmniVec.

OOM

Out of memory (OOM) is an often undesired state of computer operation where no additional memory can be allocated for use by programs or the OS. Such a system will be unable to load any additional programs, and since many programs may load additional data into memory during execution, these will cease to function correctly. This usually occurs because all available memory, including drive swap space, has been allocated.

Open CAS

Open Cache Acceleration Software (Open CAS) is an open source project encompassing block caching software libraries, adapters, tools and more. Open CAS Framework (OCF) is the foundation on which Open CAS depends to provide complete caching solutions.

open source QEMU basic cloud phone

A cloud phone solution based on open source QEMU.

open source Robox basic cloud phone

A cloud phone solution based on open source Robox.

OpenFlow

An important protocol in software-defined networking (SDN). It functions as the communication channel between the control plane and the forwarding plane. It uses standard open interfaces to separate the control plane from the forwarding plane and implements control and management on the forwarding plane.

OpenFlow flow table

It is a forwarding table irrelevant to services, mainly including matching fields and operations. The forwarder matches the packet with the matching entry in the flow table. If the matching succeeds, the forwarder performs the corresponding operation. For example, if the matching field of the flow table is a source MAC address, and the operation is forwarding to a port, the forwarder forwards the packet matching the MAC address to a port according to the flow table.

OpenGL for Embedded Systems

The Open Graphics Library (OpenGL) defines a professional graphics program interface that supports programming across languages and platforms. As a subset of the OpenGL, OpenGL for Embedded Systems (OpenGL ES) is provided for embedded devices such as mobile phones and tablets.

OpenStack

OpenStack is a platform that uses pooled virtual resources to build and manage private and public clouds. The tools that comprise the OpenStack platform handle core cloud computing services, such as computing, network, storage, identity, and image services. More than a dozen optional projects can be bundled to create unique, deployable clouds.

operator pushdown

With the operator pushdown feature, data processing operations (such as filtering, mapping, and aggregation) in the compute engine are pushed to underlying data sources for execution, instead of being performed in upper-layer applications or compute nodes. Operator pushdown improves the data processing efficiency because it reduces unnecessary data transmission and computing.

OS

An operating system (OS) is software that manages computer hardware resources and provides common services to computer programs.

OSD

Object storage daemon (OSD) processes object storage devices that belong to physical or logical storage units (drives or partitions). An object storage device can be a physical drive or partition or a logical volume. In addition, OSD processes data replication, and rebalances the cluster after nodes are added or deleted.

Out-of-band data

Data that is irrelevant to servers and collected by the BMC.

oVirt

oVirt is an open source distributed virtualization solution designed to manage the entire enterprise infrastructure. oVirt uses the trusted KVM hypervisor and is built on several other community projects, including libvirt, Gluster, PatternFly, and Ansible.

OVS

Open vSwitch (OVS) is a virtual switch mainly used in virtual environments. It supports multiple virtualization technologies such as Xen/XenServer, KVM, and VirtualBox. In a virtualization environment, a virtual switch performs mainly the two functions: transmitting traffic between VMs and implementing communication between VMs and external networks.

OVS flow table NIC acceleration

The OVS flow table NIC acceleration feature leverages the OVS flow table offload solution for SmartNICs to offload the datapath forwarding path in the system kernel mode to SmartNICs. The table lookup process of the original kernel-mode software is replaced by the table lookup process of the NIC hardware, which accelerates flow table lookup and improves the packet forwarding performance.

OVS flow table normalization

The OVS flow table normalization feature accelerates OVS flow table processing based on the XPF network acceleration framework. Based on the open source OVS+DPDK solution, it normalizes flow tables and reduces the number of table lookups for data processing in some open source scenarios to accelerate the data packet forwarding in cloud computing. A typical application scenario is VXLAN+CT networking.

P

Term

Definition

PA

A protocol adapter (PA) is a hardware unit within the CPU that translates communication protocols between different chips. The ring bus is an on-chip interconnect, and the PA can monitor the bandwidth of data streams exchanged between itself and the ring. Communication involving the PA and the ring occurs in two scenarios: inter-CPU chip communication, and communication between the CPU and GPU when they are linked via UnifiedBus.

PA2Ring

Bandwidth of data streams from the PA to the ring.

passphrase

It is used when generating a key.

passthrough

In hardware passthrough mode, hardware resources of a physical host are directly mounted to a VM without being simulated and filtered by the hypervisor. Commands sent by the VM are directly sent to the physical device. By this means, the VM access performance is similar to that of hardware.

PCIe

PCI Express (PCIe) is a local serial interface that provides a high-speed data path between the processor and attached devices. Unlike previous PCI implementations that used a parallel bus architecture, PCIe uses point-to-point serial links called lanes.

perf

perf is a performance profiling tool built in the Linux kernel source code tree. Based on the event sampling principle and performance events, perf analyzes performance metrics related to processors and operating systems. It can be used to locate performance bottlenecks and hotspot code.

PF

A Physical Function (PF) is a PCI Express (PCIe) function of a network adapter that can be associated with multiple Virtual Functions (VFs). The PF driver of a single root I/O virtualization (SR-IOV) device is used to manage the PFs of devices capable of SR-IOV. The SR-IOV specification defines the PCIe functions that support the SR-IOV capability. PFs include the SR-IOV extended capability in the PCIe configuration space. The capability is used to configure and manage the SR-IOV functionality. PFs have all PCIe functions and can be discovered, managed, and processed as any other PCIe devices. PFs also have all configuration resources and can be used to configure and control PCIe devices.

PGO

Profile-guided optimization (PGO) improves application performance by reducing cache-thrashing, code length, and branch mispredictions, as well as reorganizing code layout.

PID

A process identifier (PID) is a unique number to identify each process running in an operating system. It is allocated by the operating system when the process is running and does not represent a fixed process.

plaintext

In cryptography, plaintext refers to the original readable text before it is encrypted.

PMU event

A group of data provided by the Performance Monitor Unit (PMU, a CPU hardware unit) that reflects the performance of the processor.

pod

A pod is the smallest deployable unit in Kubernetes. A Kubernetes pod is a group of one or more containers running instances of an application.

PPA

With protocol parsing acceleration (PPA), the NIC hardware supports IPv4 and IPv6 packet parsing and flow table management. The software works with the NIC hardware to parse and accelerate packets of specified protocols based on the message formats defined by the protocols.

private key

A private key is the secret key used to encrypt and decrypt messages between communicators. It is a form of symmetric encryption, for the same key is utilized for both encryption and decryption purposes. Private keys must be protected from being obtained by unauthorized agents.

proxy

A special network service through which a device (usually a client) indirectly connects to another network device (usually a server). Some network devices including gateways and routers can be used as proxies. The proxy service helps ensure the privacy or security of network devices.

public key

A public key is the non-secret key in an asymmetric key pair. It is used to encrypt data (such as session keys) that can only be decrypted by the corresponding private key, and to verify digital signatures created using that private key.

PuTTY

PuTTY is a connection tool supporting Telnet, SSH, rlogin, pure TCP, and serial ports.

Q

Term

Definition

QCA

The quoting client application (QCA) is the dedicated client application used in remote attestation. It receives remote attestation challenges in the rich execution environment (REE) and then requests attestation reports from the QTA. It must be used together with the quoting trusted application (QTA).

QEMU

QEMU is a hosted virtual machine image. It emulates a CPU through dynamic binary translation and provides a set of device models that enable it to run multiple unmodified client OSs. QEMU can be used with KVM to run virtual machines at near-native speed.

QTA

The quoting trusted application (QTA) is the dedicated trusted application used in remote attestation. It provides attestation report requests in the trusted execution environment (TEE). It must be used together with the quoting client application (QCA).

query optimizer

A technology that performs internal optimization base on service requests, generates (or reuses) execution plans, and transfers the plans to the storage engine to operate data.

R

Term

Definition

RBD

RADOS Block Device (RBD) is a Ceph component that enables a Linux block device to be striped over multiple distributed data stores.

RDE

The RAID DIF Engine (RDE) is responsible for accelerating RAID DIF computation.

RDMA

Remote Direct Memory Access (RDMA) is a function that enables a computer to directly transmit data to the memory of another computer over a network.

rebalancing

Rebalancing is to migrate data between storage nodes once the storage service status becomes abnormal.

REE

A rich execution environment (REE) refers to a standard operating system that a device is running. Compared with a trusted execution environment (TEE), an REE is a traditional server running environment.

region

Regions are divided by geographical location and network latency. Public services, such as elastic computing, block storage, object storage, virtual private cloud (VPC) network, elastic public IP address, and image, are shared in a region. Regions are classified as universal regions and dedicated regions. A universal region provides universal cloud services for common tenants. A dedicated region provides services of the same type only or for specific tenants.

remote attestation

Remote attestation is a method of verifying the integrity of a server. When a client of a confidential computing application interacts with a remote server, the client initiates a challenge to the server asking the server to prove its integrity. Remote attestation is executed in a trusted execution environment (TEE).

remote instruction rendering

The cloud replicates application rendering instructions and sends them to the device for rendering.

replication

Like Ceph clients, object storage daemons (OSDs) use the CRUSH algorithm. However, the OSDs use it to compute where replicas of objects should be stored (and for rebalancing).

REST

Representational State Transfer (REST) is a software architectural style. Generally, REST services use HTTP as the communication protocol and use HTTP primitives to express service requests.

RGW

The RGW is a Ceph object gateway that provides RESTful APIs compatible with S3 and Swift.

Ring2PA

Bandwidth of data streams from the ring to the PA.

Robox

Robox is a solution that emulates the Android operating system based on the container technology and supports multiple Android system instances.

RoCE

RDMA over Converged Ethernet (RoCE) is a network protocol that allows remote direct memory access (RDMA) over Ethernet. Two versions of RoCE, RoCE v1 and RoCE v2, are available. RoCE v1 is a data link layer protocol. It allows any two hosts in the same Ethernet broadcast domain to communicate. RoCE v2 is a network layer protocol and its packets can be routed.

rollback

Rollback is a return to a prior state by undoing the last operation or a series of operations under a certain condition (for example, a given period of time).

RPC

Remote Procedure Call (RPC) is a computer communication protocol. The protocol allows a program running on one computer to call a subroutine in another address space (usually a computer on an open network) without the programmer having to additionally program this interaction (without attention to detail), just as if it were a local program.

RPM

A Linux software package format.

RSA

Rivest-Shamir-Adleman (RSA) is an asymmetric cryptographic algorithm named after the inventors: Ron Rivest, Adi Shamir, and Leonard Adleman. It was proposed in 1977 and has developed into one of the best asymmetric cryptographic solutions.

S

Term

Definition

SCR Lock

The Smart Cache Remote Lock (SCR Lock) feature accelerates remote lock access and improves application operation performance based on new network media.

SDK

A software development kit (SDK) is a set of software development tools for software engineers to create application software for specific software packages, software frames, hardware platforms, and OSs. Generally, an SDK refers to the SDK used to develop application programs running on Windows. An SDK provides API files for a programming language and may also provide hardware that communicates with an embedded system.

SDN

Software-defined network (SDN) is an implementation of network virtualization. Its core technology, OpenFlow, separates the control plane from the data plane of network devices, thereby implementing flexible control of network traffic, making the network more intelligent as a channel, and providing a good platform for core network and application innovation.

secure computing

Secure computing is a technology where data is processed confidentially. Secure computing projects (including CA and TA projects) are built based on TrustZone.

serialization

Serialization is the process of translating a data structure or an object state into a format that can be stored (for example, files in secondary storage devices and data buffers in primary storage devices) or transmitted (for example, data streams over computer networks) and reconstructed later (possibly in a different computer environment).

server

A server is a computer program that provides resources and services to another computer program, also known as the client.

SFTP

Secure File Transfer Protocol (SFTP) enables secure and encrypted file transfers between a client and a server.

64-bit running mode check

A feature of the Kunpeng Affinity Analyzer. It checks C/C++ software for porting software from 32-bit to 64-bit mode. The Kunpeng Affinity Analyzer compiles software in 64-bit mode and provides modification suggestions for the porting.

Slurm Scheduler

Slurm is an open-source, highly customizable, scalable, and high-performance cluster management system. It provides resource management and job scheduling functions and is widely used in high-performance computing and cluster computing fields, such as physics, chemistry, biology, and astronomy.

SM2

SM2 is an asymmetric cryptographic algorithm, also called elliptic curve digital signature algorithm. It is mainly used for digital signature and key exchange.

SM3

SM3 is a cryptographic hash algorithm. It is mainly used for digital signature and verification, message authentication code generation and verification, and random number generation.

SM4

SM4 is a symmetric cryptographic algorithm, which is one of the Chinese commercial cryptographic algorithms. It is mainly used for data encryption.

smart prefetch

A cache prefetch policy for system software to calculate a proper value for the size of prefetched data. This is suitable for the read application with a single bit stream or to the scenario where you cannot determine whether the data is read in sequence, for example, file read/write.

smart write cache

The smart write cache feature consists of the bcache kernel patch and related tools. It uses I/O passthrough, bcache QoS policies, writeback policies, and garbage collection policies to improve bcache performance and Ceph cluster performance.

SME

Scalable Matrix Extension (SME) introduces a dedicated scalable matrix register based on SVE, enabling more efficient execution of core computations such as matrix multiplication through outer-product operations.

SMMU

The system memory management unit (SMMU) provides memory management services to system bus masters.

Snappy

A lossless data compression algorithm.

SO dependency dictionary

A list that records the SO files and software packages supported by the Kunpeng platform and provides download links (for installation from binary packages or installation from source). You can download and update the dependency dictionary.

SO dependency library

Linux shared object (SO) file, whose name format is similar to libname.so.1.1.1.

soft link

A soft link, also called a symbolic link, is a file whose purpose is to point to a file or directory (called the "target") in various file systems by specifying a path thereto.

software acceleration library

A library that is optimized by using the processor instruction set or software algorithms.

software package rebuild

A feature of the Kunpeng Porting Advisor. It analyzes an x86 software package and attempts to build the Kunpeng platform software package based on the provided resource files. This feature is available only on the Kunpeng platform.

software porting assessment

A feature of the Kunpeng DevKit Porting Advisor. It analyzes the SO library files in a software package installation path in the x86 environment and checks whether these files are compatible with the Kunpeng platform.

Source code porting

A feature of the Kunpeng DevKit Porting Advisor. It analyzes the portability of software written in C/C++/ASM/Fortran/Go/interpreted languages.

SPE

Statistical Profiling Extensions (SPE) is a mechanism provided by Arm, which uses random sampling to dynamically analyze programs.

SPDK

The Storage Performance Development Kit (SPDK) provides a set of tools and libraries for developing high-performance, scalable user-mode storage applications.

SR-IOV

Single root I/O virtualization (SR-IOV) is a specification developed by PCI-SIG. It is a technical implementation of virtual channels, virtualizing one PCIe device into multiple PCIe devices.

SSH

Secure Shell (SSH) is set up by the Network Working Group of the Internet Engineering Task Force (IETF). It is an application layer protocol.

SSL

Secure Sockets Layer (SSL) is a security protocol that works at a socket layer. This layer exists between the TCP layer and the application layer to encrypt/decrypt data and authenticate concerned entities.

SSL certificate

A Secure Sockets Layer (SSL) certificate is an SSL-compliant digital certificate issued by a trusted root certificate authority.

Static Memory Consistency Check

It is a feature of the Kunpeng Affinity Analyzer. It checks for any memory inconsistency problems in static mode when C/C++ source code is running on the Kunpeng platform, and also provides check reports and memory barrier insertion suggestions.

strace

A debugging utility in the Linux environment for monitoring the system calls and signals of a specific program.

SVA

Shared virtual areas (SVAs) are a computer architecture that allows multiple devices (such as CPUs, GPUs, and FPGAs) to share a virtual address space. SVAs improve system performance and efficiency because different devices can directly share data without copying data from one device to another.

SVE

Scalable Vector Extension (SVE) is a vector-length-agnostic SIMD instruction set that allows the same code to automatically achieve optimal performance on Arm processors with different vector widths.

System Methodology Profiler

The Kunpeng DevKit System Methodology Profiler supports one-click collection of multi-dimensional performance data, including cache misses, memory access statistics, NUMA behavior, microarchitectural metrics, and miss latency. After analyzing the collected data, it generates time series diagrams for each metric, illustrating resource usage over time from the service layer down to the processor layer.

T

Term

Definition

TA

A trusted application (TA) is an application deployed in a trusted execution environment (TEE) to process confidential data in the TEE. It works with client applications (CAs).

TAR

A Linux software package format.

TCP

In Transmission Control Protocol/Internet Protocol (TCP/IP), a protocol used to break down data information into packets and send them over the IP protocol. The packets received via the IP protocol are checked and reassembled into complete information. TCP is a connection-oriented reliable protocol that ensures error-free transmission of information. It corresponds to the transport layer in the ISO/OSI benchmark model.

TEE

A trusted execution environment (TEE) is a hardware security feature that is isolated from a normal operating system, for example, a rich execution environment (REE).

TEE OS

An operating system running in the trusted execution environment (TEE). Compared with a general-purpose rich execution environment (REE) operating system, a TEE OS is simpler and less exposed, and is therefore more secure.

telephony mock

Telephony mock is a function of simulating basic telephone information, such as the International Mobile Equipment Identity (IMEI), network operator name, and network operator code. Telephony mock enables telephony basic information for cloud phones. It injects information such as IMEI provided by the user in advance into the cloud phone to ensure that upper-layer services can obtain the telephony basic information preset in the cloud phone.

TLS

Transport Layer Security (TLS) and its predecessor, Secure Sockets Layer (SSL), are cryptographic protocols that provide communications security over a computer network.

TOE

TCP Offload Engine (TOE) is a technology used in dedicated network interface cards (NICs) to process partial or all TCP/IP stacks.

TOR

A top of rack (TOR) switch is a switch (with only a few ports) that sits on the very top or near the top of a Telco rack in a data center.

touch engine

A core engine suite provided by Huawei for touch data processing in cloud phone scenarios.

transcoding

Dynamic translation of AArch32 instructions into AArch64 instructions.

Transparent TIO

The Transparent Tiered I/O (TIO) feature uses high-performance storage media and the prefetch capability to cache I/Os in a back-end storage system to high-performance media in advance, shortening the I/O access path of applications and improving application performance.

TSO

The TCP segmentation offload (TSO) technology uses a small amount of the processing capability of an NIC to reduce the data sending load of CPUs. This technology requires NIC and driver support.

two-node HA

Two-node high availability (HA) is an effective solution to ensure service continuity. There can also be more than two nodes, including active nodes and standby nodes.

U

Term

Definition

UACCE

User Space Accelerator (UACCE) is an accelerator driver framework module that provides a unified user-space driver interface.

UADK

The User Space Accelerator Development Kit (UADK) is a general accelerator solution based on the User Space Accelerator (UACCE) kernel module and Linux Shared Virtual Addressing (SVA). This solution provides a user-space library, and users can call related APIs to accelerate hardware capabilities.

UCX

Unified Communication X (UCX) provides an optimized communication layer for Message Passing Interface (MPI), PGAS/OpenSHMEM libraries and RPC/data-centric applications.

UDF

User-defined functions (UDFs) are used to execute functions compiled based on the Hive UDF framework, receive input columns, perform operations on inputs, and return operation results in the form of values.

UDP

The User Datagram Protocol (UDP) is a standard TCP/IP protocol that allows an application program on one end to send datagrams to an application program on the other end. UDP uses IP to deliver datagrams, providing application programs with unreliable connectionless packet delivery services. Therefore, UDP messages may be lost, duplicated, delayed, or delivered out of order. The destination does not proactively confirm whether it has received the correct data packets.

upper-layer application workload

Workload analysis is to dynamically modify upper-layer application code and embed hooks to collect specific application performance data, helping users obtain the code performance and locate specific code.

USE

The Utilization, Saturation, and Errors (USE) method is a methodology for system performance profiling. This method locates resource bottlenecks and errors according to the structured list of system analysis.

user mode

In computer architecture, user mode has two concepts. For the CPU design, user mode is a non-privileged state. In this state, the executed code is restricted by the hardware and cannot perform some operations, to prevent security risks to the operating system. For the design of an operating system, user mode is a non-privileged execution state. The kernel prohibits code in this state from performing risky operations, such as writing system configuration files.

UT generator

An automatic Java unit test generation tool designed for Maven and Gradle projects. As a plugin of IntelliJ IDEA, UTgen provides unit test case generation support with out-of-the-box availability.

unit test

A way of testing the smallest piece of code that can be logically isolated in a software application.

UWAL

The Unify Write Ahead Log (UWAL) feature provides the unified write-ahead logging capability based on solid-state drives and new storage media. It improves application write performance.

V

Term

Definition

vDPA

An open source specification and framework for device acceleration. The vHost Data Path Acceleration (vDPA) specification requires that the data plane of the device implement the data plane of the VirtIO (a type of virtual device). The control plane of the device can be implemented in the format defined by the vendor. vDPA assists in converting VirtIO control plane commands to the vendor's control plane commands.

Vectorization check

A feature of the Kunpeng DevKit Affinity Analyzer. It checks vectorizable source code snippets and provides modification suggestions.

VF

A Virtual Function (VF) is a NIC or an instance virtualized from a physical NIC that supports the single root I/O virtualization (SR-IOV) capability. It is presented as an independent NIC. Each VF has its own exclusive PCI configuration area. In addition, a VF may share the same physical resource (the same physical network port) with other VFs. A VF is a lightweight PCI Express (PCIe) function that can share one or more physical resources with a Physical Function (PF) as well as other VFs associated with the same PF.

VFIO

Virtual Function I/O (VFIO) is a user-mode driver framework. On the Intel platform, VFIO makes full use of the direct memory access (DMA) remapping and interrupt remapping features implemented by technologies such as VT-d, to ensure the DMA security of pass-through devices while delivering I/O performance close to that of physical devices.

video decoding

Video decoding is to decode a compressed video and restore it to the original video.

video encoding

Video encoding is to convert a video file from a format into another by using a compression technology.

video stream cloud phone

A cloud phone solution established on basic cloud phones, the video stream engine, and other reference prototypes, which can implement real-time interaction between physical terminals and cloud phones.

video stream engine

Secondary development package for cloud phone video streams and cloud game video streams, including the client and server development packages. Its main functions are image obtaining, H.264 stream generation, and playback.

VirtIO

Virtual I/O (VirtIO) device is a standardized interface that allows VMs to access simplified "virtual" devices such as block devices, network adapters, and consoles. Accessing the device via VirtIO on a VM improves performance over more traditional "emulated" devices because the VirtIO device requires only the minimal setting and configuration needed to send and receive data, while the host handles most of the setting and maintains the actual physical hardware.

VirtIO block device

An implementation of virtual drives on the KVM platform.

VirtIO network device

A virtual Ethernet NIC that supports the sending and receiving of network packets in multiple queues.

VirtIO SCSI device

A paravirtualized Small Computer System Interface (SCSI) controller device.

virtualization

A technology that virtualizes a physical computer into multiple logical computers, which reside on the same physical computer. The OSs running on these logical computers can be different, and the applications running on these OSs work independently from each other. Therefore, the working efficiency of the physical computer is significantly improved.

VM

A virtual machine (VM) is a digital version of a physical computer. VM software can run programs and OSs, store data, connect to networks, and perform other computing functions, and requires maintenance such as updates and system monitoring. Multiple VMs can be hosted on a single physical machine (often a server), and then managed using virtual machine software. This provides flexibility for compute resources (compute, storage, and network) to be distributed among VMs as needed, increasing overall efficiency.

VMM

A virtual machine monitor (VMM) is a software program that combines virtual machine functions with service configuration management functions. It manages third-party software applications in VMs.

VNF

Virtual Network Function (VNF) is a software implementation of network functions, such as directory services, routers, firewalls, and load balancers. It can be easily deployed on virtual resources such as a virtual machine. VNF mainly provides services for the infrastructure layer and is key to network virtualization.

VPAM

VirtIO device passthrough acceleration and migration (VPAM) is a private live migration solution based on hardware offload. This solution implements live VM migration for VirtIO-net passthrough devices. It provides the following functions: live migration link establishment, VM configuration migration, vNIC configuration migration, storage configuration migration, live memory migration, and live migration rollback. The service interruption during a live migration is less than 1s. The configuration, memory, and drive data of a VM are not lost after a live migration.

VXLAN

Virtual Extensible Local Area Network (VXLAN) is a network virtualization technology that attempts to ameliorate the scalability problems associated with large cloud computing deployments. It is an extension of the VLAN. It is a powerful tool that can tunnel Ethernet (Layer 2) traffic over an IP (Layer 3) network. It addresses the portability limitations of a virtual memory system (VMS) by encapsulating traffic and tunneling it to a Layer 3 gateway so that it can access servers on an external IP subnet.

V-Turbo

V-Turbo uses the CPU overcommitment technology to allocate two vThreads to each vCore of a VM after the virtual hyper-threading function is enabled. Each vThread corresponds to a physical core. In the guest OS, there are two physical CPUs and four hyper-threads. To ensure that the VM density remains unchanged, 1:2 overcommitment is enabled for physical cores.

W

Term

Definition

WaaS

The Workload Aware Acceleration System (WaaS) identifies resource pressure faced by services based on service characteristics, and automatically accelerates applications to achieve better service performance.

WAL

A standard method for ensuring data integrity. The central concept of write-ahead logging (WAL) is that modifications to data files (storing tables and indexes) can be written only after these actions are logged, that is, after the log records describing these changes are flushed to persistent storage.

WD

Warpdriver (WD) is a unified user-space driver interface.

weak password

A weak password can be easily guessed or cracked.

Wi-Fi mock

A Wi-Fi emulation technology. Wi-Fi mock (status mock) enables the Wi-Fi function on cloud phones by forwarding Wi-Fi traffic. Then upper-layer services can sense the Wi-Fi usage.

X

Term

Definition

XPF

Extensible Packet Framework (XPF) is a Huawei-developed library. The XPF function module implements an intelligent offload engine module in the Open vSwitch (OVS) software. This module is used to trace all flow tables and connection tracking (CT) tables of data packets in the OVS software. It comprehensively orchestrates the executed CT behavior and all flow table behavior items into a comprehensive behavior item, and generates an integrated flow entry with reference to the unified matching item.

Z

Term

Definition

ZIP

A file compression format.

zstd

Zstandard, or zstd, is a lossless data compression algorithm.