Pure Science, Plain And Simple

When it comes to multicore, our future is in the hands of mathematicians.


In a rather striking bit of irony, tools for creating semiconductors are able to use multicore architectures just fine. The problems these design tools are trying to solve can be parallelized to the point where simulations and models can be created in hours instead of weeks, or versus months in the case of Excel spreadsheets.


The real question, though, is whether the multicore designs they are creating will be able to run software in parallel. There has been much debate over this subject, in these pages as well as in development labs at Intel and IBM and research universities around the globe. The good news is that work is under way to solve these issues and money is being thrown at the problem like never before. The bad news is there are still arguments about just what is possible and what isn’t.


Personally, I’m not convinced this problem is solvable for most applications—at least not using the conventional approach. Engineers will never think in parallel. They program sequentially, and if functions aren’t obviously redundant then good luck reprogramming the human brain.


But I’m not totally pessimistic, either. Generally when a problem can’t be solved, it’s the interpretation of the problem that’s wrong rather than the lack of a solution.  Find a better way to state the problem—easier said than done—and the answer magically appears.


Unlike hardware, which is defined by physics, software is defined by applied mathematics. Mathematicians are convinced theirs is the only pure science and they usually do figure out things that no one ever thought of, including the answers to some incredibly complex problems. And sometimes they even figure out ways to do it on computers.


But mathematicians don’t always arrive at the answer quickly. Pure science needs to be thought out, tested and re-tested. This is not a process that has worked well under deadlines. In fact, some problems have taken hundreds of years to solve. That could put a whole new wrinkle on the concept of time to market.


–Ed Sperling