One of the many extraordinary aspects of NASA’s successful landing of the Curiosity rover onto the surface of Mars Aug. 5 was ensuring the spacecraft had the information it would need to make its own decisions in the final moments of its descent without any help from mission controllers at Jet Propulsion Laboratory in Pasadena, Calif. And at least some of the credit can be attributed to the advanced work of two earthbound high performance computing systems called Nebula and Galaxy.

“What’s most nerve-racking is that the first time Curiosity goes through the whole landing sequence is on Mars,” said Ben Cichy, JPL’s chief software engineer for the Mars Science Laboratory, which includes the Curiosity rover and its scientific instruments. “By the time we heard about it, it was already over.”

It takes 14 minutes for a signal from Mars to reach Earth. It takes seven minutes for Curiosity’s descent from the moment it touches the atmosphere to the moment it lands on the surface-what JPL scientists and engineers call “seven minutes of terror.”

Curiosity’s computer was able to make exactly the right choice for each of what Cichy said was “hundreds of those critical decisions across the landing sequence.” Those decisions included six vehicle configuration changes while the rover decelerated from its atmospheric entry speed of 13,200 mph to its final landing speed of 1.5 mph.

“We had to teach Curiosity how to do it all on her own,” Cichy said.

“We program into the onboard software what the rover should do under all the different conditions she might encounter on her entry to Mars. We tell the rover – we teach it in a way – that if you’re seeing a really thick atmosphere, you should wait to deploy the parachute. Or if you’re seeing a really thin atmosphere, you’re going to need to deploy your parachute early. We put that all in the software. We teach it how to respond to all these different conditions it might encounter on landing day. Since we can’t predict [those conditions], it must be smart enough to react to a whole wide range of different environments on Mars. Because there are so many possibilities for it, I really do feel like it’s learning.”

The number of environmental conditions the rover might have encountered are endless. Yet Curiosity had to be prepared for them all.

That required extraordinary computing capacity, not on the rover itself, but on the ground – all to figure out well ahead of time what Curiosity might encounter and then program it into the onboard computer so it would be ready. Perhaps most surprisingly of all, JPL used off-the-shelf computers to figure out all the possibilities.

JPL’s work was done on Dell PowerEdge servers configured to operate as two large high performance computing “clusters” named Nebula and Galaxy. You wouldn’t find these machines in your home, but you would find them in enterprises and datacenters.

“Those clusters have thousands of compute processors together,” said Cichy. “We’ve run millions of simulated landings, and we run one landing on each node [processor],” he said.

The computers played an important role because it wasn’t financially possible to build a realistic test vehicle, which would have likely cost about the same $2.5 billion as the real thing, and there were other limitations.

“It’s not like simulating crashing a car and then checking it in reality,” said Tim Carroll, global director of research computing solutions at IT services and computer maker Dell. “We couldn’t do that here.”

“In each one of those landings,” said Cichy, “we vary the conditions that Mars might throw at us by just a little bit and see how the software will react. That’s how we build up our confidence in the landing system. If I have a 1,000-node computer cluster, I can run 1,000 different landings all at the same time. We don’t need what would traditionally be called a supercomputer, where all these processors are running together, because we aren’t trying to run one large landing sequence.”

Supercomputers are used for complex processes like modeling Earth’s climate or the actions of the human heart. In those cases, even though each processor may run a separate piece of the problem, they must eventually communicate with one another to exchange information and continue the work. That information exchange wasn’t necessary for the Curiosity mission.

“What we’re trying to do is run a whole bunch of individual landings,” Cichy said. “Each individual run itself doesn’t require a supercomputer, but we want to run a million of them. That requires us to have a compute cluster.”

Regarding those minutes of terror, Cichy said, “When you do something the first time, there is always a lot of nervousness. We had that sort of nervous anticipation, but at the same time, we were very confident. We felt like we had done everything we had to do. The amazing thing about landing on Mars is that at that point, all you have to do is sit back and wait. When you’re sitting in Mission Control, and you’re watching the decisions, we feel like coaches in a way. Our athlete was performing, and every single [decision] was a perfect 10.”

The last two rovers the U.S. sent to Mars were Spirit and Opportunity, in 2003. Each was expected to operate for the 90 days needed to complete their missions. Spirit continued operating for more than seven years, and Opportunity is still exploring the Red Planet’s surface. “We are all very hopeful that Curiosity will see the same kind of extended warranty,” Cichy said. “We hope she will keep returning science from the surface of Mars for a very long time to come.”