Published:
March 19 2009, 05:03 PM
|
no comments
by
Reg Harbeck
Two weeks since SHARE and I'm still feeling the glow of information!
Strange, really, that it's taken two weeks to get to this one, as it's been on my mind since the System z Keynote at 10:30 AM Monday morning, March 2.
Moore's Law is over!
Well, not really: Intel's Gordon Moore originally (in 1965) was just observing that the number of integrated circuits that fit in a given amount of space doubled every two years (see http://en.wikipedia.org/wiki/Moore's_law). But since then, this observation has been dubbed Moore's Law, projected out into the future, and applied to everything from disk capacity to processor speed, and even changed from two years to eighteen months for the doubling effect to take place.
In any case, we have come to rely on Moore's Law to make computers exponentially smaller, faster, higher capacity and cheaper for most of the past few decades. So seeing even one of those trends "hit the wall" can be a bit of a shock.
As it turns out, the one it happened to first was processor speed.
According to IBM at their System z Keynote, processor speed has hit a ceiling of roughly 5 GHz, due to the sheer limitations of physics.
Before I go any further, I have to admit that this is a bit embarrassing for me: I'd written an article recently about what we were going to do when we reached the limits of Moore's Law, and didn't even realize that, in this one area, it had already happened (see http://www.cmg.org/measureit/issues/mit54/m_54_11.html). I mean, how would you feel about predicting something and then finding out it had already taken place?
To be clear: it is theoretically possible that this ceiling will be lifted. I've heard that IBM has a CPU running at 500 GHz - but it's bathed in liquid helium, a rather impractical coolant for most computing environments.
For now, however, we get to find out what happens when the apparently unlimited becomes limited. And I certainly have some opinions on the matter.
The first opinion is, welcome back to the concept of scrupulous computing, and the mainframe that embodies it! While other platforms have clogged their systems with more and more software demands, so even the most advanced seem to take forever to boot, the mainframe has continually been optimized for greater and greater performance.
As I understand it, distributed (i.e. non-mainframe) machines tend to run an average of 5-10% busy, and can't handle being much more than 30% busy at the best of times. That may seem reasonable if you can just keep getting faster and faster CPU's, but what do you do when you've hit a hard limit?
The first answer, of course, is to go parallel. But, as IBM also pointed out in their keynote, there are also diminishing returns in that direction. Get enough parallel CPU's and your performance actually starts to drop. Of course, IBM made it clear that they're working very hard to push that limit back, but it's a real limitation regardless.
So, the fact that a mainframe can run at roughly 100% busy in a sustained fashion suddenly looks even more attractive. If you can't add speed, you certainly want to take maximum advantage of what speed you have available!
Of course that also implies another thing I think this entails: greater optimization is going to be necessary. In fact, I'm quite curious to see whether there's a resurgence of Assembler (or at least "C") programming as people look to squeeze every last bit of performance out of their CPU's.
Two other things I'll be watching for the impact they receive are: emulation and virtualization.
We've been doing both of those for a long time, but they're getting a lot of attention these days.
Emulation is the one I expect to be hit hardest. Why use up significant amounts of one architecture's power just so you can pretend to be another architecture? When there's not enough power to go around, you want to run as close to the bare metal as possible.
I have more hope for virtualization. IBM has demonstrated that it's possible to do virtualization very well and very close to the metal - so much so that you can't really run a mainframe without some virtualization; it's optimized for it.
However, whether you're talking cloud computing or PC virtualization or any other way of introducing a layer abstraction between yourself and the hardware, I think we're going to see a real focus on getting closer and closer to the absolute minimum of insulating fluff (that's a technical term :-) ).
Strangely, whenever I blog about some emergent opportunity or challenge, I always seem to end up here: I'm glad to work on the mainframe, the one platform that has the best prospects for dealing with this effectively!
By: Reg Harbeck
Reg Harbeck is CA's Product Management Director for Mainframe Strategy. In the more than two decades since he received his Bachelor's Degree in Computer Science he has worked with operating systems, networks, security and applications on mainframes, UNIX, Linux, Windows and other platforms. Reg...
Read More..