This topic describes the kernel features and interfaces supported by Alibaba Cloud Linux. This topic is intended for users who are familiar with the Linux kernel and want to use Linux kernel features.
|Memcg Exstat feature
|Alibaba Cloud Linux 2 kernel version 4.19.91-18.al7.x86_64 and later
|Alibaba Cloud Linux 2 provides the Memcg Exstat feature. Unlike community versions of the Linux kernel, Alibaba Cloud Linux 2 kernel supports the following cgroup v1 interfaces for the Memcg Exstat feature: memory.events, memory.events.local, and memory.stat. Statistics on the latency caused by changes in the global minimum watermark and backend asynchronous reclaim are provided.
|Memcg global minimum watermark rating
|Alibaba Cloud Linux 2 provides the memcg global minimum watermark rating feature. The global minimum watermark of resource-consuming tasks is increased to trigger direct memory reclaim. The global minimum watermark of latency-sensitive tasks is decreased to prevent direct memory reclaim. When a resource-consuming task requests a large amount of memory, the global minimum watermark is increased to throttle resources used for the task for a short period to prevent direct memory reclaim for latency-sensitive tasks. After a specified amount of memory is reclaimed by means of global kswapd backend reclaim, the resource-consuming task is no longer throttled.
|Memcg QoS feature of the cgroup v1 interface
|The memcg quality of service (QoS) feature can be used to control locks and limits on memory usage in a memcg. In community versions of the Linux kernel, this feature is supported only by the cgroup v2 interface. In Alibaba Cloud Linux 2, the memcg QoS feature is also supported by the cgroup v1 interface.
|Memcg backend asynchronous reclaim
|Alibaba Cloud Linux 2 provides the backend asynchronous reclaim feature for memcgs. This feature differs from the global kswapd kernel thread because it uses the workqueue mechanism instead of a corresponding memcg kswapd kernel thread.
|Memcg OOM priority policy
|Alibaba Cloud Linux 2 and Alibaba Cloud Linux 3 provide the memcg out of memory (OOM) priority policy feature. When the memcg OOM priority policy feature attempts to perform an OOM operation, it determines the priorities of cgroups and selects the low-priority cgroup to perform the operation.
|Alibaba Cloud Linux 2 kernel version 4.19.91-24.al7.x86_64 and later
|Alibaba Cloud Linux 2 provides the Transparent Huge Page (THP) reclaim feature. You can use the THP reclaim feature to fix memory usage issues caused by THPs, such as out of memory (OOM) errors.
|Alibaba Cloud Linux 2 and Alibaba Cloud Linux 3 support the hugetext feature. This feature is applicable to business scenarios that involve large code segments. You can use this feature to put the executable parts of applications and dynamic-link libraries (DLLs) into huge pages to reduce instruction translation lookaside buffer (iTLB) misses and increase the 2 MB iTLB utilization of CPUs. This way, the performance of applications is improved.
|Alibaba Cloud Linux 3 kernel version 5.10.60-9.al8.x86_64 and later
|Alibaba Cloud Linux 3 is tuned to support Shared Memory Communications over RDMA (SMC-R). SMC-R is based on Alibaba Cloud eRDMA and can transparently replace TCP in applications without loss of functionality. SMC-R enables direct, high-speed, low-latency, and memory-to-memory communications and provides higher performance than TCP in a variety of scenarios such as in-memory databases, remote procedure calls (RPCs), and transmission of large files.
|Alibaba Cloud Linux 2 supports TCP-layer service monitoring (TCP-RT). TCP-RT is a TRACE method. TCP-RT allows you to configure event tracking in a kernel-based TCP stack to identify a request and response when a single connection carries only one concurrent request and response. You can then obtain information such as the amount of time taken to receive the request in the TCP stack and the amount of time taken to process the request. In addition, TCP-RT supports statistical analysis in the kernel system and generates statistical information of specified connections on a regular basis.
|Change the TCP TIME-WAIT timeout period
|In Linux kernels, TCP/IP connections remain in the TIME-WAIT state for 60 seconds. The length of this period cannot be changed. However, in specific scenarios such as heavy TCP loads, network performance can be improved if this period is shortened. To resolve this issue, Alibaba Cloud Linux 2 provides a kernel interface to change the period of time that TCP/IP connections remain in the TIME-WAIT state before the system closes them.
|Enable the cgroup writeback feature
|Alibaba Cloud Linux 2 provides the cgroup writeback feature for the cgroup v1 interface. This feature allows you to limit the buffered I/O rate when you use the cgroup v1 interface.
|Configure the weight-based throttling feature of blk-iocost
|Alibaba Cloud Linux 2 provides the weight-based throttling feature (blk-iocost) based on the cost model. This feature is an improvement to the weight-based disk throttling feature of the I/O subsystem (blkcg) within a kernel.
|Enhance the monitoring of block I/O throttling
|Alibaba Cloud Linux 2 provides interfaces to better monitor Linux block I/O throttling.
|Use the JBD2 optimization interface
|JBD2 is the kernel thread of ext4 file systems. JBD2 often experiences the shadow (BH_Shadow) state when it is being used, which can affect system performance. To resolve this issue, Alibaba Cloud Linux 2 provides an interface to optimize JBD2.
|Create a hard link across project quotas
|By default, ext4 file systems have constraints that forbid hard links to be created across project quotas. However, some scenarios require hard links to be created. Alibaba Cloud Linux 2 provides a custom interface to bypass the constraints of ext4 file systems and create hard links across project quotas.
|Track I/O latency
|Alibaba Cloud Linux 2 optimizes the /proc/diskstats interface that provides raw data for the I/O latency analysis tool iostat. Alibaba Cloud Linux 2 can calculate the durations of read, write, and special I/O (discard) operations on the device side. In addition, Alibaba Cloud Linux 2 provides the bcc tool to track I/O latency.
|Detect I/O hangs of file systems and block layers
|An I/O hang occurs when the system becomes unstable or even goes down due to time-consuming I/O requests. Alibaba Cloud Linux 2 extends the core data structure and provides the feature to identify and detect I/O hangs at low system overheads.
|Alibaba Cloud Linux 3 kernel version 5.10.60-9.al8.x86_64 and later
|Alibaba Cloud Linux 3 supports Unified Kernel Fault Event Framework (UKFEF) in the kernel of the 5.10.60-9.al8.x86_64 version. UKFEF is used to collect the exception events on Alibaba Cloud Linux 3 that may cause risks and generate event reports in a unified format.
|Enable the PSI feature for cgroup v1
|Alibaba Cloud Linux 2 provides the Pressure Stall Information (PSI) feature for the cgroup v1 interface. This feature allows you to monitor CPUs, memory, and I/O performance.
|Enable the CPU burst feature for cgroup v1
|Alibaba Cloud Linux 2 provides the CPU burst feature for the cgroup v1 interface. The CPU burst feature allows CPU-throttled containers to burst their CPU utilization for higher performance and lower latency.
|Group identity feature
|Alibaba Cloud Linux 2 provides the group identity feature. This feature allows you to configure different identities for CPU cgroups to prioritize process tasks in the cgroups.
|Statistical status change of anonymous pages in the /proc/meminfo file
|In Alibaba Cloud Linux 2 kernel version 4.19.91-22.al7.x86_64 and later, the statistical
Inactive(anon) states of anonymous pages in the /proc/meminfo file are changed. If your application uses these statistics, data queried before and after the change is inconsistent.
|Enhance the visibility of container resources
|Alibaba Cloud Linux 2 provides kernel interfaces for the container resource visualization feature to enhance the visibility of container resources.