Email
Password
Remember meForgot password?
    Log in with Twitter

article imageNASA wants you to make its ancient software 1,000 times faster

By James Walker     May 4, 2017 in Technology
NASA has launched a competition designed to attract programmers familiar with an obsolete language used to build one of its mission-critical design systems. The company now wants the program to run orders of magnitude faster, using the ancient technology.
The competition centres on NASA's FUN3D software. Written in the 1980s with the Fortran programming language, it is used during the development of experimental aircraft. FUN3D can simulate how air flows around an aircraft during flight, making it an invaluable aid during the design process.
There's just one small problem with FUN3D: It's slow, bottlenecked and filled with highly complex code. NASA has realised that the software is creating inefficiencies in its development process, leading it to search for a way to speed the program up. This has its own set of issues as Fortran hasn't been widely used for decades and most modern programmers are unfamiliar with it.
NASA wants to recruit members of the public who may still have knowledge of the language. The overarching aim is to improve performance by around 10,000 times, although gains of between 10 and 1,000 times would also be notably beneficial. Successful competitors will share a prize pool of $55,000.
While the challenge sounds imposing, analysis of FUN3D already completed by NASA suggests experienced Fortran programmers may not find it too difficult. The organisation has identified several heavily bloated routines within the program that are run thousands or millions of times whenever it is executed. Tuning the routines so they run a few milliseconds faster each would lead to massive improvements over the course of a full simulation.
"We think there are several approaches to finding solutions that will help NASA achieve 1,000x performance improvement and they don't all require you to be an aeronautical engineer," said NASA in the competition's introduction. "Ideas and approaches may include, but are not limited to, exploiting algorithmic developments in such areas as grid adaptation, higher-order methods and efficient solution techniques for high performance computing hardware".
Any modifications made to the code must not impact the accuracy of its output. NASA will be testing the revised software to ensure it still performs as expected. Programmers will be expected to identify bottlenecks in the system, conduct analysis to find the best possible solution and then suggest implementation details.
NASA also has a few limitations around the competition itself. Because FUN3D was developed by the U.S. government and funded by taxpayers, it's subject to strict export laws that define who can take part in the scheme.
Entrants must be above 18 years old and living in the U.S. Before starting work, a copy of the software – usually run on the Pleiades supercomputer – will need to be acquired from the government using an application process. It can then be run on a regular computer to test the impact of changes to the code.
More about NASA, fortran, Programming, Code, Supercomputer
 
Latest News
Top News