Rate This Document
Findability
Accuracy
Completeness
Readability

Introduction

In this practice, the Kunpeng Performance Boundary Analyzer is used to quickly identify the problem scope. Preliminary results indicate a high branch misprediction rate, with the performance bottleneck located in microarchitectural metrics. The System Profiler is then used for deeper microarchitectural analysis, revealing a high CPU misprediction rate for conditional branches. Further inspection of the source code shows that the issue is caused by using data in conditional statements before it has been properly processed. To address this problem, the data is sorted in the source code, optimizing CPU branch prediction, increasing the branch prediction success rate, and improving overall application performance.

Networking environment

This practice uses CentOS 7.6 as an example. Perform similar operations for other OSs on the Kunpeng platform.

Table 1 Networking environment

Item

Description

CPU

Kunpeng processor

OS

CentOS 7.6

Tool

Kunpeng Performance Boundary Analyzer and System Profiler

Practice demo

Link

Tuning Strategy

  1. Use the Kunpeng Performance Boundary Analyzer to locate application issues.
  2. Then, use the System Profiler to analyze the microarchitecture and identify a high branch misprediction rate. After detailed analysis, optimize the source code and verify the effectiveness of the optimization.