Rate This Document
Findability
Accuracy
Completeness
Readability

Creating a Math Library Project

The Kunpeng Math Library ( KML ) provides high-performance mathematical functions which are optimized based on the Kunpeng platform. All interfaces are implemented by C/C++ and assembly languages. Some interfaces are compatible with Fortran and some interfaces are encapsulated using Java.

Prerequisites

  • You have logged in to the Kunpeng DevKit.
  • The Kunpeng Development Assistant has been installed. You are advised to install the Compiler and Debugger before creating a project for future compilation and debugging.
  • The environment-modules components have been installed in case the module command is used to load environment variables.

Procedure

  1. Click in the shortcut menu bar on the left pane or click next to Development Assistant. The Kunpeng Application Projects page is displayed. See Figure 1.
    Figure 1 Kunpeng Application Projects
  2. Click HPC Application. On the displayed HPC Application page, select Template project for the Project Type, and select a sample project. Click Create to create a math library project.
    Figure 2 Creating a math library project
    Table 1 Parameter settings

    Parameter

    Description

    Project Type

    The options are:

    • Empty project
    • Template project

    Sample Project

    The options are:

    • Hyper MPI
      • Hyper MPI
    • Math Library
      • KML_MATH
      • KML_LAPACK
      • KML_BLAS
      • KML_SPBLAS
      • KML_FFT

    Project Name

    Name of the project to be created. The default project name is xxx_ProjectN, which can be modified as required.

    NOTE:
    • N is an integer starting from 1 in ascending order.
    • The project name can contain 1 to 64 characters, including only letters, digits, periods (.), hyphens (-), plus signs (+), parentheses (), and underscores (_). It cannot start with a period (.).

    Project Location

    Storage path of the project to be created. The default project location is C:\Users\username\KunpengProject, which can be modified as required.

    Table 2 Math library types

    Math Library Type

    Description

    KML_MATH

    KML_MATH is a basic library for mathematical operations. It mainly implements basic mathematical operations and trigonometric, hyperbolic, exponential, and logarithmic functions. It is widely used for scientific calculations in industries such as meteorology, manufacturing, and chemistry.

    KML_LAPACK

    KML_LAPACK is a library for linear algebra operations. It provides routines for solving systems of linear equations, eigenvalue problems, and singular value problems.

    KML_BLAS

    KML_BLAS is a basic linear algebra operation library. Based on the Kunpeng architecture, KML_BLAS provides three levels of high-performance vector operations: vector-vector operation, vector-matrix operation, and matrix-matrix operation. It is the base of numerical calculation, and is widely used in fields such as manufacturing, machine learning, and big data.

    KML_SPBLAS

    KML_SPBLAS is a basic linear algebra operation library of sparse matrices. It provides high-performance vector and matrix operations for sparse matrices in compressed format based on the Kunpeng architecture.

    KML_FFT

    KML_FFT is a 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.

    If you have not downloaded the SDK, click here to download.

  3. After the math library project is created, click Open Project to open it in the current window.
    Figure 3 Opening a project
    Figure 4 Viewing the math library project

    If a project folder or file is added, deleted, modified, or renamed, you can synchronize the change to the remote server. For details, see Synchronizing Code to a Remote Server.

    If you want to compile and run the project demo in the Compiler and Debugger, add a user-defined environment command in the working directory text box.

    source /opt/gcc_for_openeuler_profile