Introduction
The best practices described in this document demonstrate the functions of each tool of the Kunpeng DevKit. You can refer to these best practices when analyzing and optimizing your development projects in the Kunpeng DevKit. See Table 1.
Tool |
Feature |
Best Practice |
Description |
|---|---|---|---|
Porting Advisor |
SMARTdenovo is a de novo sequence assembler for PacBio or Oxford Nanopore. It is open source software written in the C language. Use the Porting Advisor to analyze the SMARTdenovo source package, helping to port applications. |
||
Megahit is an ultra-fast and memory-efficient NGS assembler optimized for metagenomes. Use the Porting Advisor to analyze the Megahit source package, helping to port applications. |
|||
Netty is an NIO-based client and server programming framework. Use the Porting Advisor for assessment before porting the Netty software package. |
|||
Practice 2: Assessing CMake Software Porting - Analyzing Software Packages |
CMake is an open source, cross-platform family of tools designed to build, test, and package software. Use the Porting Advisor for assessment before porting the CMake source package. |
||
Practice 3: Assessing Ragel Software Porting - Analyzing Installed Software |
Ragel is a finite-state machine compiler. It compiles regular expression–based state machines into parsers of traditional programming languages such as C, C++, D, Java, and Ruby. Use the Porting Advisor to assess installed Ragel software, helping to port installed applications. |
||
Affinity Analyzer |
wtdbg is a fast and efficient genome algorithm written in C language. Use the Affinity Analyzer to analyze development projects written in C language and provide modification suggestions for byte alignment. |
||
Practice 1: Dynamic Memory Consistency Analysis - Automatic Compiler Repair |
fifo is a common lock-free queue test demo for a single producer and consumer. Use the Affinity Analyzer to analyze development projects written in C/C++ and provide modification suggestions. |
||
Development Assistant |
Practice 1: Creating an Empty Secure Computing Application Project |
An empty project provides the hello-world code sample and contains the CA and TA projects for invoking. This document uses the empty secure computing application project as an example to describe how to create, compile, and run a secure computing application project and how to deploy SDKs, helping you quickly get started with application development. |
|
Practice 2: Creating an RSA Secure Computing Application Project |
An RSA project contains source code and abundant samples, which greatly improve coding efficiency. This document uses the RSA project as an example to describe how to create, compile, and run a secure computing application project and how to deploy SDKs, helping you quickly get started with application development. |
||
You can create empty, Hyper MPI, and KML projects under a Kunpeng HPC project. This document uses the basic math library as an example to describe how to create, compile, and run an HPC application project and how to deploy SDKs, helping you quickly get started with application development. |