Code Migration: Ampere Porting Advisor for x86 to AAarch64 — SitePoint

By admin
This article was originally published by

Ampere Computing
ORG

.

The demand for efficient software porting solutions is increasing. With the transition from legacy x86 to AArch64 and particularly Ampere processors gaining momentum, developers are looking for ways to expedite the migration for existing codebases.

Today
DATE

, we are announcing the Ampere Porting Advisor, a new software porting advisor via our

GitHub
ORG

page promising to simplify this process.

The Ampere Porting Advisor offers a streamlined migration process, allowing developers to save time and effort. It automates many of the manual steps involved in porting code, reducing the risk of errors, and ensuring consistency throughout the migration. By analyzing the source code, the advisor provides detailed insights into the required changes, highlighting potential pitfalls, and recommending optimal modifications. This guidance enables developers to navigate the intricacies of transitioning between architectures more efficiently, accelerating the overall migration process.

The AArch64 architecture has gained significant traction across various software packages. By leveraging the software porting advisor, developers can tap into this expanding ecosystem and take advantage of the benefits offered by AArch64-based platforms. The advisor is a static command line tool that analyzes the make environment and source code for known code patterns and dependency libraries and generates a report with incompatibilities and recommendations. The advisor includes the following features:

Language support : Python

3
CARDINAL

+, Java 8+, Go

1.11+
CARDINAL

, C,

C++
PERSON

,

Fortran
PERSON

.

: Python

3
CARDINAL

+, Java 8+, Go

1.11+
CARDINAL

, C,

C++
PERSON

,

Fortran
PERSON

. Architecture specific code detection : missing corresponding AAarch64 assembly, architecture specific instructions, architecture specific flags in make files.

: missing corresponding AAarch64 assembly, architecture specific instructions, architecture specific flags in make files. Dependency checks : for versioning,

JAR
ORG

scanning, and dependency files.

: for versioning,

JAR
ORG

scanning, and dependency files. Easy to run : via Python script, binary, or containers.

: via Python script, binary, or containers. Multiple output formats: terminal for quick checks, HTML for easy distribution, and

CSV
ORG

for post-processing.

The advisor will not make code modifications, nor API level recommendations, and it will not send data back to Ampere.

Migrating code from x86 to AArch64 architecture does not have to be an intimidating process. The software porting advisor significantly reduces development costs by automating various tasks involved in the migration. By minimizing the need for manual intervention, developers can allocate their time and resources to other critical aspects of the project. Furthermore, the advisor’s comprehensive analysis and recommendations reduce the risk of post-migration issues, eliminating the need for costly debugging and rework.

The introduction of the new

Ampere Porting Advisor
PRODUCT

provides a significant advancement in simplifying the migration of x86 code to AArch64 architecture. By streamlining the migration process, reducing development costs, and enabling access to a wider ecosystem, the advisor empowers developers to embrace the benefits of the AArch64 architecture more quickly and effectively. We invite you to learn more about our developer efforts, find best practices, insights, and join the conversation at developer.amperecomputing.com and

community.amperecomputing.com
PERSON

.

Built for sustainable cloud computing,

Ampere
ORG

’s first Cloud Native Processors deliver predictable high performance, platform scalability, and power efficiency unprecedented in the industry.

Download and try the Ampere Porting Advisor from

Ampere
ORG

’s GitHub, and join fellow developer conversations at

the Ampere Developer Community
ORG

.