Application Scenarios
The Kunpeng DevKit consists of the Porting Advisor, Affinity Analyzer, Development Assistant, Compiler and Debugger, System Profiler, Java Profiler, and System Diagnosis. The application scenarios are as follows.
Porting Advisor
- Software porting assessment: The tool analyzes the software packages (non-source packages) and installed software to be ported, and assesses the porting feasibility.
- Source code porting: You can use this tool to analyze the source code to be ported to a server powered by Kunpeng 916 or 920 processors and obtain porting suggestions.
- Software package rebuild: You can use this tool to rebuild software packages applicable to the Kunpeng platform.
- Dedicated software porting: You can modify the software porting warehouse provided by Huawei, compile, and generate an installation package of the specified software version for the Kunpeng platform.
Special Scenario |
Constraints |
|---|---|
Build file |
|
C/C++ code analysis |
If the custom macro header files, third-party header files, or some system header files are missing, some macros to be modified may not be identified and accurate modification suggestions cannot be provided. |
Intrinsic functions |
The tool cannot provide accurate replacement suggestions for more than 130 intrinsic functions related to the Intel coprocessors. |
Assembly code |
|
Affinity Analyzer
The tool checks 64-bit running mode, structure byte alignment, and cache line alignment on x86 and Kunpeng platforms (GCC 4.8.5 to GCC 10.3.0) before porting 32-bit applications to 64-bit platforms. It can also check memory consistency on the Kunpeng platform.
Special Scenario |
Constraints |
|---|---|
Byte alignment |
If dependency files are unavailable when header files are used in recursion, the analysis accuracy decreases. |
System Profiler
Task Type |
Description |
||||
|---|---|---|---|---|---|
Comparison analysis |
Currently the supported analysis tasks are overall analysis and hotspot function analysis. |
||||
HPC cluster check |
Password-free login must be enabled for each node in the MPI cluster. For configuration items that do not comply with the best practice of the Kunpeng platform, the tool provides optimization suggestions. |
||||
HPC application analysis |
During OpenMP data collection, the kernel parameters /proc/sys/kernel/kptr_restrict and /proc/sys/kernel/perf_event_paranoid are enabled to collect call graph data and PMU events. After the collection is complete, the two kernel parameters are restored to their original values. |
||||
Microarchitecture analysis |
You must have the root permission to perform the following operations.
|
||||
Memory access analysis |
This function is available on openEuler and CentOS 7.6 with the Statistical Profiling Extension (SPE) feature. The supported openEuler kernel versions are 4.19 and later and the supported CentOS 7.6 kernel versions are 4.14.0-115.el7a.0.1, 4.14.0-115.2.2.el7a, 4.14.0-115.5.1.el7a, 4.14.0-115.6.1.el7a, 4.14.0-115.7.1.el7a, 4.14.0-115.8.2.el7a, and 4.14.0-115.10.1.el7a. |
||||
I/O analysis |
The system kernel must support ftrace collection. |
||||
Process/Thread performance analysis |
If the sysstat version is earlier than 11.0.0, the process/thread performance analysis result may contain abnormal data. |
||||
Resource scheduling analysis |
You are advised to use an OS whose kernel version is 4.19 or later to run resource scheduling analysis tasks. |
||||
Roofline analysis |
Set /proc/sys/kernel/perf_event_paranoid to 0 or a smaller value. |
||||
Lock and wait analysis |
The environment must support the extended Berkeley Packet Filter (eBPF) configuration. |
Java Profiler
Task Type |
Description |
|---|---|
Real-time profiling |
|
Sampling profiling |
The JDK must be BiSheng JDK 8.302 or later or OpenJDK 9 or later. |
System Diagnosis
Task Type |
Description |
|---|---|
Memory usage diagnosis |
|
Memory overwriting diagnosis |
The application must be compiled using GCC 4.9 or later. |
Network I/O diagnosis |
The OS must have a kernel version ranging from 4.15.0 to 5.4.0, and UOS 20 is not supported. |
Storage I/O diagnosis |
Do not use logical disks or existing files for pressure tests. |