Porting/Building Code: Overview

Article ID: 84
Last updated: 17 Feb, 2016

When you are developing code for NAS systems, testing a new compiler version, or porting a code from one platform to another, the following guidelines can help ensure that your code runs correctly and/or reproduces results from the platform it was ported from.

  • Start with small problem sizes and use just a few time steps/iterations to quickly check whether the program is running correctly; setting up your PBS script and data files can often be done with 10 minute jobs.
  • Run your test jobs on the PBS debug queue for quicker turnaround.
  • Make as few code changes as possible when porting, and use the same data sets on both old and new platforms to compare results.
  • Keep in mind that an absence of error messages does not necessarily mean that the code is running correctly on either platform.
  • Be attentive to porting data files: for example, unformatted Fortran files (FORM='unformatted') are not necessarily portable.
  • If there are any problems with code ported to a new platform, do not assume that the new code is wrong and the previous code is right—both may be wrong.

The articles in the Porting/Building Code section provide information about compilers and libraries, as well as methods for porting, debugging, and analyzing performance.

Contact Us

General User Assistance

Security

  • Report security issues 24x7x365
  • Toll-free: 1-877-NASA-SEC (1-877-627-2732)
  • E-mail: soc@nasa.gov

User Documentation

High-End Computing Capability (HECC) Portfolio Office

NASA High-End Computing Program

Tell Us About It

Our goal is furnish all the information you need to efficiently and effectively use the HECC resources needed for your NASA computational projects.

We welcome your input on features and topics that you would like to see included on this website.

Please send us email with your wish list and other feedback.