Kunpeng DevKit code migration tool

1. What is a code migration tool

Due to the different instruction sets supported by processors, developers need to migrate code across platforms. Usually, code migration is a complex and cumbersome task, which requires developers to manually analyze, check and identify software packages, source codes, and dependent library files, and manually correct relevant differences between different instruction sets. These differences mainly Involves syntax, instructions, functions, and library file support. The Kunpeng Porting Advisor Kunpeng code migration tool is used to solve the problem of low efficiency of manual investigation of user code migration.

The Kunpeng Code Migration Tool is a tool that simplifies the process of migrating applications to Kunpeng architecture servers. It quickly and automatically scans and analyzes massive codes to help developers achieve efficient code migration.

2. Functions of the code migration tool

3. Functional characteristics

  • Software Migration Assessment

    Check the software installation package provided by the user, identify the dependencies, and provide the official download link of the package OS release version of the package corresponding to the rpm of the so dependent library of the Kunpeng compatible version

    Check the software installed by the user on the x86 server, identify the dependencies, and provide the official download link of the package OS release version corresponding to the rpm of the so dependent library of the Kunpeng compatible version.

  • source migration

    Check the user's C/C++/assembly/Fortran code software construction project file, and guide the user how to migrate the file. 

    Check the link library used by the user's C/C++/assembly/Fortran/python/Java/Scala/Go software construction project file, and provide portability information. 

    Check the user's C/C++/assembly/Fortran software source code, and guide the user how to migrate the source file.

  • Package Refactoring

    Software package reconstruction, analyzing the composition of user x86 software packages, and refactoring into software packages suitable for the Kunpeng platform.

  • Special software migration

    Special software migration, based on rich experience in software migration, helps users quickly migrate the four major solution software of Web, database, big data, and high-performance computing.

  • Kunpeng Affinity Analysis

    Currently, it includes 64-bit operating mode check, structure byte alignment check, cache line byte alignment check, memory consistency check, and construction miscellaneous sum check.

4. Application scenarios

  • Provides migration guidance for C/C++ code
  • Identify and convert the most commonly used X86 assembly instructions
  • Supports automatic migration of open source software and construction of Kunpeng software packages

Dedicated to software migration (one-click download of open source code, compiling, and building Kunpeng software packages) and software package reconstruction (quickly building Kunpeng software packages, supporting packages in RPM and DEB formats)

5. Deployment method

Two User Access Modes

CLI mode (command line mode)

Web/IDE method (use the functions of the code migration tool remotely through browsers and IDEs, and the final migration analysis results are output to .csv and .html files, and users can process according to migration suggestions)

6. Source code migration

7. Source code migration business process

1. Input: source code files (c/c++, java, go...), assembly source code files, software component files

2. Analysis and processing: user c/c++... code needs to be migrated to identify parts, assemble source code with the same function instruction set, and compatible instruction set

In the migration part, identify the compilation dependent library that needs to be migrated/replaced from the construction project configuration file, and give migration guidance and suggestions based on the knowledge base

3. Report file: analysis file, analysis time cut-off and other information; summary of key modification content, brief description, detailed csv or htm report, line number of the code to be modified, change point and guidance suggestion; compilation dependency library migration or replacement suggestion; Migration Estimated Effort

8. Assembly translation

9. Software migration assessment process

10. Memory consistency

  • Static inspection, check and repair possible weak memory order problems that may exist when user software is migrated to the Kunpeng platform
  • Automatic repair function, update the GCC compiler used by users, and automatically complete the repair of weak memory order problems during the compilation process of user software
  • Support downloading of BC files generated by static inspection tools, and scan and analyze BC files according to actual needs
  • Combined use of static inspection tools and compiler automatic repair tools, one-click repair
  • Support automatic generation of intermediate files of the target project, no need for users to modify the compilation script

Guess you like

Origin blog.csdn.net/qq_63802547/article/details/127928950