PROFILE - RapidMind: the foresight and science behind a multi-core monopoly

By Scott Valentine on August 28, 2007 - Comments (View)
"We really don't have to explain our value proposition to customers anymore. Our potential market is every software company in the world."

What’s the number-one challenge facing the software development industry today?

Skittish venture capital markets? Fierce competition for high-end tech talent? A global shortage of energy drinks?

According to Ray DePaul, President and CEO of Waterloo’s RapidMind, the challenge is the advent of multi-core processors.
RapidMind
Software performance has traditionally benefited from increasing processor clock speeds. That’s changed.

“Instead of turning out faster processors, vendors are now cramming multiple CPUs on one chip,” says Depaul. “The theoretical performance is great, but software developers have no idea how to use it. Software companies kind of a had a free ride for the last 20 years, that’s over now”.

To keep up with Moore’s law, software development companies now have to ‘parallelize’ across multiple cores, a complex procedure with a steep leaning curve, even for experienced developers.

Companies who want to be market leaders either have to code for multi-core processors themselves or find a platform that will let developers code in a standard environment, which can then be parallelized.

If they lag behind, their software is going to do the same.

Rapidmind

A comparison of hardware and software performance


The founder’s story
Meet “Dr. Mike McCool”:http://rapidmind.com/management.php. McCool is an associate professor at the University of Waterloo, and RapidMind’s founder and chief scientist. Dr. McCool understands things like global illumination, parallel computing, and Monte Carlo methods so you don’t have to.

Dr. Mike McCool

Dr. Mike McCool, founder and chief scientist



He started researching the challenges and opportunities of multi-core in the late 90’s, about five years before the rest of the software world caught on.

“It was clear when we started that there was a need to solve the potential for multi-core” says McCool. “Being able to map code to a parallel platform, without sacrificing structure and modularity for performance, [was] key.”

McCool developed the early iterations of his platform with the help of a few graduate students before incorporating his intellectual property in the form of RapidMind.

In January of 2006, DePaul joined RapidMind from RIM and, very quickly, the race was on to commercialize product and ship to the first customer.

Partnerships with IBM, the Business Development Bank of Canada and others who ‘got it’ helped launch the company, as did the supportive climate of Waterloo’s tight-knit tech community.

A multi-core monopoly
If you really want to wrap your head around what RapidMind brings to the multi-core table, consider this: Every top-end software development company in the world knows it has to master multi-core soon if it wants to stay competitive.

And RapidMind is the only company in the world with a commercial platform that can help them.

“We really don’t have to explain our value proposition to customers anymore,” says DePaul. “Our potential market is every software company in the world.”

PeakStream, the only other company in RapidMind’s space, was acquired by Google in June, 2007, to help manage that behemoth’s own requirements.

And that leaves RapidMind standing all alone at the top of the multi-core mountain.

“I like the view,” says DePaul. “In a way it reminds me of launching the Blackberry with RIM. We had to go out and create a market by getting people to think differently.”

The key for both Rapidmind’s technology and business model is keeping things simple.

“Yes, it’s rocket science,” says DePaul. “But people don’t need to know that. They just need to know how to make multi-core work.”

How it works
RapidMind’s platform delivers expedited multi-core programming through a three-step process.

First, programmers key in standard C++ code into RapidMind’s proprietary API. This stage requires the developer to replace numerical types with the equivalent RapidMind platform types. The average programmer needs just 30 minutes of training to get going.

RapidMind

RapidMind’s process*



Next, the RapidMind platform captures the user’s application while it is running, records sequences of numerical operations, and compiles them to a program object within the platform.

Finally, the RapidMind platform manages parallel execution of program objects on the hardware platform, which can be a GPU, the Cell processor, or a multi-core CPU.

RapidMind’s platform has increased processing speeds by a factor of 3x to 30x over traditional single core platforms, an enormous leap forward for the software industry.

The result is multi-core optimized code developed in a fraction of the time it might otherwise take a developer to write across several parallelizations, and at a fraction of the cost.

As a technology, the value proposition of RapidMind’s platform seems bulletproof.

So what’s the catch?

First-to-market pains: the bleeding edge can be sharp
DePaul says that big software developers are “somewhat concerned” with limitations being placed on their future development efforts.

Actually, they hate it.

One of the hurdles his sales team has to overcome is vendor lock-in, a kind of technological fear-of-commitment.

In this case, software developers fear being shackled to RapidMind’s API and platform if something better comes along.

“It’s something we’ll continue to address as a company,” says DePaul. “The moment you think you’re done and say, ‘here’s our offering,’ someone else will come along in the space. We keep a healthy dose of paranoia at hand.”

RapidMind also has a significant gap in their platform in that it doesn’t work with single-core Intel and AMD. Not yet at least. “We actually introduced some new ideas at SIGGRAPH’07”, says DePaul. “Nothing that is scheduled for launch yet, but some interesting teasers.”

Finally, there is the matter of defining what may well become the de facto standard of multi-core programming. While it’s always great to be first out of the gate, the reality is that multi-core programming is still very much in its infancy, and the jury is still out on what the final technical standards may be.

“There is just so much stuff involved in multi-core.” says McCool. “The level of detail required just to program a machine is grotesque”.

“We try and focus on what the most important elements of multi-core are to expose and automate the rest,” he says. “Really, we want to focus on the most important decisions and help developers avoid costly errors.”

These concerns aside, the software world has taken notice, and RapidMind is well on its way to becoming the 800-pound, geeky gorilla of the multi-core programming space.

Racing ahead
Over the last several months, RapidMind has hit the trifecta of emerging tech companies: funding, recognition and personnel.

In April, 2007, RapidMind secured US$10 million of private venture financing to build out their technology and expand the sales mission. “Investors always make you dumb things down so much more than customers,” says DePaul. “It was a great experience to help us understand our business plan.”

RapidMind CEO Ray DePaul

Ray DePaul, President and CEO of RapidMind



In June, 2007, the company won a prestigious Best of Tech-Ed Awards 2007 in the Most Innovative Product category by Penton Media’s Windows IT Pro, SQL Server Magazine and Office & Sharepoint Pro.com – a significant endorsement of both the RapidMind platform and the challenges that multi-core represents, according to DePaul.

And finally, RapidMind is adding to their bank of human capital by hiring for both technical and business roles.

Generally, tech companies go through a human resources cycle that dictates expenditures on technical talent early-on, then migrate to recruiting key sales staff once products are more mature. But because RapidMind is the lone player in what is set to be an explosive space, the company is building its talent pool from both ends simultaneously.

“Because we are still early-market it’s a different kind of sale,” says DePaul. “We heavily recruit sales engineer types . . . we think investing in our customers early-on will yield results down the road.”

Given RapidMind’s market potential and its revenue growth, can an IPO be far behind?

“Our goal right now is to build a healthy business,” says DePaul. “But if there is one thing I learned from people like Jim Balsillie, it’s not to undershoot,” he says.

“Build a world leader and good things will happen.”