|
| |
CRAIG MUNDIE: Thank you, Ray.
|
|
| |
Good afternoon, everyone.
|
|
| |
In the next 20 minutes I am going to try to explain to you a bit why we believe so strongly that the world is going to be this balanced environment between what happens on the client devices and what happens in the cloud.
|
|
| |
To some extent the computing industry as we've known it almost since its inception has been one where it moves back and forth over time cyclically like a pendulum. We all started with mainframe computing, and as we wanted to get more access to it, we put some terminals as the edge but the computing was in the middle. And we developed a usage model that was consistent with that. But then the computer got smaller or less expensive, and it started this, if you will, slide down the wire, and we got the minicomputer industry as it slid down the wire a little bit. And then there was a real disruption, which was the arrival of the microprocessor.
|
|
| |
And the computer industry as we know it today, the birth of Microsoft, the creation of the layered nature or horizontal structure of the industry, in many ways tracks to the disruption that came from that fundamental shift from discrete component construction to the highly integrated circuit, and ultimately the condensation of that to be the microprocessor. And so computing has gradually moved back and forth, and to some extent you could say that the model that we have now known for 20 years of personal computing is one that is going to evolve again.
|
|
| |
We've really been thinking a lot about this, and this slide here kind of is important to remember about why is it that we do this long-term research, why is it that while Ray can focus on the issues that we have in the next few generations, that my job in succeeding Bill is to make sure that the company continues to invest in these long-cycle environments. We talk about the need to be responsive in some of the work we're doing in search and advertising and others is in part derived from that long-term investment, and we talked about that a little bit last year.
|
|
| |
Today what I really want to talk about is disruption, this pendulum-like environment, and why just when you think you might know what the computer industry is and how it might evolve, that in fact it's probably going to be disrupted by some very fundamental changes.
|
|
| |
One of the questions that I think will exist perhaps a decade from now is: Will the pendulum ultimately come to rest in this balanced position between personal computing, or computing at the edge, and centralized computing where you can have this large centrally managed aggregated resource. The nature and role of the microprocessor in getting us to this point, and importantly the role of the microprocessor in getting to the next level, is going to be essential to understand.
|
|
| |
Three years ago my friend Pat Gelsinger at Intel - then was the CTO, now runs their small microprocessor business - at one of their technical forums put up this slide. If you weren't among the cognoscenti in the technical world, you might have said, “Hmm, that's kind of interesting - you know, how important is this slide?” But basically he pointed out the yellow line is the growth over the time period from the original Intel microprocessor to essentially the Pentium circa this point in time. And it grasps the power density of the chip. You know it's how hot is that thing in terms of the heat it generates per unit of area. And in case - this is measured in watts per square centimeter. And the red arrows show other things and how hot they are under a similar measure. And you can see that the microprocessor basically has graduated from roughly the core temperature of a nuclear reactor to something in the little beyond rocket nozzle in terms of how hot it is. So it's small, but that little small thing - you know, why that laptop sits on your lap in the airplane and gets so warm, it all comes from this problem.
|
|
| |
And in a world where we want more mobility, in a world where you don't want to apply mainframe or supercomputing cooling technologies - you know, refrigerated cooling and other things to your laptop or your cell phone - this has essentially become an unmanageable problem. Bill alluded to it this morning when he talked about the fact that the clock rate isn't going to go up. And the reason is exactly this: in the popular silicon technologies the clock rate goes up as a function of frequency. And so since we don't know what to do with the heat any more, they basically had to stop increasing clock rate at the rate that we've always enjoyed.
|
|
| |
For the software industry this represents something that we really never had to deal with before. The whole industry, and in fact almost all of the world's programmers to this day, still if asked would predict likely that we're just going to have computers and they just got faster and faster and faster, that what they interpret Moore's Law to mean was that they almost had an entitlement that every year the computer got faster. Gordon Moore never said anything about that. He just said every year we'd have more transistors in the same amount of area. That, coupled with clock rate improvement, made machines bigger and faster. But in essence we're at the point in transition where the free lunch for traditional models of software is over. That perfect extension of performance is not going to happen anymore. In fact, the industry is going to have to make, and arguably has already made at the hardware level, a big right turn. And, in fact, most of you've bought a laptop any time in the last year or two, even the laptops are now Intel core duos or something else. They're essentially machines with two processors - Intel and soon probably AMD will start to announce their bigger chips that have four processors. And we already know that there's a road map that says that that could continue.
|
|
| |
But those processors are sort of the old style processors. They're the ones that are as hot as the rocket nozzle. And in a world where you can't really make them go faster, what we're really going to do is make them a lot simpler and have a lot more of them. And so it's more likely over the next few years that we'll not only see these three-gigahertz clock rates and maybe eight cores; the question is what happens after that and what are the implications for the world that we all know as software.
|
|
| |
In a sense this picture is really what the future will start to look like increasingly in about five years' time. And then it will come like a tsunami to completely redefine the way all computers are built. Today we do build them all out of microprocessors, but by and large those microprocessors are either unicore or today a small number of cores in an individual die. But what you see depicted graphically here might be three chips, each physically somewhat different in size. The really big ones might go into fixed machine servers. But the chips will start to be architected by arraying different types of computing elements that are fine-tuned architecturally to different parts of the computing mission. And we're going to see these heterogeneous high core count processors become the standard issue microprocessor in the industry. Everything, including ultimately your cell phones, will be built out of these architectures. In fact, cell phones today are a precursor of this where you have a CPU that's doing the logical processing like the graphical interface, and usually another CPU that's running the phone stack and perhaps some DSPs, digital signal processors, that are doing part of the signal processing associated with the radio part of the telephone.
|
|
| |
And so the world is going to move more and more away from one CPU that is multiplexed to do everything to many CPUs, and perhaps specialty CPUs. This is not the world that the programmers target today. This kind of complexity was historically reserved only for the wizards who wrote the core operating system; or, in the world of supercomputing in science and engineering, people who had the ultimate requirement for computational performance built big machines like this and have used them to solve some of the world's tough computational problems. That was always a niche part of the industry.
|
|
| |
This presages a change where the industry at large, the whole concept of applications, will ultimately have to be restructured in order to think about how to take advantage of these machines, because they won't just get faster every year. They'll get more powerful, but in fact only if you're able to master these problems of concurrency and complexity.
|
|
| |
The concurrency is a real challenge, because the way the industry has grown up writing software - the languages that we chose, the model of synchronization and orchestration, are actually not things that lend themselves toward either exposing parallelism or allowing large-scale composition of big systems and it's in part why we and everybody else, as the software grows in scale, you know, deal to a greater and greater degree with the difficulty of perfecting the software, making it absolutely secure, being able to predict every aspect of its operation. And so today we face the dual challenge of having the prospect of meeting even bigger, more sophisticated pieces of software to do the powerful things that we want, and to do it in an environment where to get that performance at the client on an individual application will require the mastery of parallelism.
|
|
| |
So this is an area we've been doing a lot of computer science research for quite a long time, and I think today we are without a doubt the best prepared company in the industry, simply because we are the largest computer science research asset in the world today. And so this really is a computer science problem and it's going to affect the whole stack, from the architecture of the machine itself to the tools that the programmers of the future will use, and ultimately to how we conceptualize and build these applications.
|
|
| |
But there's another - and so you say, “Well, what is the nature of the application of the future, and how is it different?” Well, if you were going to attach just a few adjectives to these future pieces of software or whole systems end to end, they would be loosely coupled, and that's what this software plus service is an example of: It's a loosely coupled system. Part of it is in the client devices and the software attendant there; the other part is essentially up in the cloud - but not just in one computer in the cloud; it's in millions of computers in the cloud, whether they're in data centers or in fact the Internet Web servers that we deal with today. How to program even that environment will become more of a challenge.
|
|
| |
It's going to be an asynchronous environment. Things will have to be built to deal with the vagaries of long-distance communication to a degree that we don't today. They'll be highly concurrent. They'll have to be composed, because the way we can build big buildings and bridges and things that don't fall down depends on sort of the structured layering of technologies and processes, and more of that will have to come to the industry we call software. It's clearly an area we're focusing on at Microsoft, and I think will give us improved capability to do these large-scale things in the future. They'll be decentralized. And of course just as we see the architecture of the mega data center developing resiliency through redundancy, the nature of these chips would allow similar resiliency to occur even in the smallest devices by using the redundancy to gain some resiliency.
|
|
| |
So our ability to do these things and build these software is a prerequisite - not only for us to meet our mission mandate in the future, but I think ultimately to create the opportunity for the platform to move forward again.
|
|
| |
When I think about this world, it poses yet another challenge to Microsoft, and that one is essentially what do you do with this power? Let's say that these machines, courtesy of these architectural changes in a five- to 10-year time horizon, they cost the same for the chip, they use the same or less power potentially, and maybe they're 50 to 100 times more powerful than the one you have in your desktop, laptop or cell phone - not 5 percent, 10 percent or 100 percent - maybe 50 to 100 times. It's pretty clear to me that if I told you that, hey, no problem - Word, Excel and PowerPoint, they'll just be 50 times faster. You'd say, well, so, is that really interesting? Clearly the things that Word, Excel and PowerPoint do for people is interesting, but if we're really going to use all this computing power in some beneficial way, then we're going to have to find conceptually, qualitatively, changes that we can make not only to our traditional class of applications but also probably create the invention of a whole new family of applications that provide a qualitatively different level of support or value for acquiring and using the technology.
|
|
| |
So I sit and ask myself, “What would be the attributes of those applications and how would it change the nature of what we think in all of the client devices?”
|
|
| |
Today the way I think about the computer we have in our hands and on your desks in front of you is really a computing system that's not fully productive. And in fact one of the reasons that there's a tendency today to think that, well, maybe you could just suck that whole thing back up the wire now that we have broadband connectivity and huge data center facilities stems in part from the fact that the model of work in computers today, the model of how we utilize them broadly, is one that's been fine-tuned to make the machine responsiveness to your action. It waits for you to fall on your mouse button or click a key on the keyboard and then, you know, very instantaneously it tries to do something. That something may be more and more interesting and valuable, but it's still largely something that's responsive to your own actions.
|
|
| |
The net effect is as the machines have gotten faster, but the paradigm of the application was really evolved when Bill Gates started Microsoft and the industry evolved from Lotus 1-2-3 and WordStar. When those were the paradigm of word processing and spreadsheets, they were matched to the capability of that microprocessor. But as the microprocessor has grown dramatically in capability, as has the whole system, the concept of the app hasn't fundamentally changed that much. And so the question that looms in my mind for Microsoft and ultimately for the industry is: What are those future applications and what might they look like? And in fact can we move to use all of the power that's there - not just to make them responsiveness to a new class of demand from you, but ultimately to do things for you that are more like what people who help you do for you?
|
|
| |
So on the right-hand side, I listed another few adjectives that define what I think of as how we might move in this direction. The machine will become contextually aware. It essentially has infinite memory or recall capability, and the whole model of search at the global scale is just sort of an indication that there's not really that much limitation to what we can remember and our ability to go find it. The question is we don't find it in a way that makes it generally useful to people to build new applications. So the second thing that will happen - and here by "context" I mean not only what you do but the environment in which the machine sits - you know, sensors, video sensors, audio sensors - these all will essentially accumulate context and define the environment. That will then be represented in models that will present a new class of services that the world's programmers could use to make applications that were just genuinely more useful.
|
|
| |
One of the things that will make them more useful is that they'll be more personalized. We're moving to an era where IT will make a lot of things more personal. People talk about moving from just-in-time manufacturing to personal manufacturing. Clearly the world of health care aspires to move in that direction to personalize medicine and health care. But think if the computer was really much more personalized in terms of what it did for you, even if it was derived from some generic capability. I think one of the big changes, it will become more humanistic - your ability to interact with the machine more the way you would interact with other people will accrue from this big increase in power. As such, all these things will allow it to adapt more to the environment and your needs and the things that are going on around you. And we'll see the emergence of many new technologies for interacting with the machine - not only speaking and listening, but as Bill showed today with the Surface computing - more and more computing will be in the environment around you at your physical location. And the way in which you will be able to interact with it will be significantly changed.
|
|
| |
And so these I think represent compelling ideas about how a computer and its software can move today from a tool to one where in fact it is more and more a great assistant. Today certainly I, and perhaps many of you, enjoy having people who work to help you get things done - an administrative assistant or some type of staff. The great thing about people in those roles is that they are not automatons. They think. They learn about you. They understand what you value. They understand what's important. They make decisions. And, perhaps interesting, they speculate about what might be interesting. And so one of the things I dream about personally is being able to move to where the computer is also able to speculate, to do things on the anticipation that it might turn out to be useful for you. Today and for years we've done this at the level of speculative execution of individual instructions in the machine itself, but only for the purposes of trying to make the machine go faster. To me the question is: Can we combine all these things with software that is wildly more complex and sophisticated than we know today, but well suited to this class of machine that will emerge in the next 5 to 10 years, and not just talk about making the things we do today for productivity or entertainment or other things faster, but to make them qualitatively different and better, to make the machine something that really borders on being your staff? And today the world is full of people who don't have the luxury of that level of personal support. But if we could do that, then I think that the same value proposition that the original PC brought to the individual, why they went out and bought the beige box, put it on their desk in an era where mainframe computing perhaps and departmental machines was important, I think that era can be reborn. And you know my goal, and the people at Microsoft's goal, is to intercept this inevitable change in the architecture of the machine, and to bring forward from our computer science research the tools, the technology, and hopefully the insight to be able to capitalize on this tremendous opportunity. And if that happens, then I think that this world that we've been talking about - I'm sorry, wrong way - I think that Ray introduced and many of my colleagues talked about today, perhaps will find a balanced point where there will be a persistent level of services and integration that comes from the global environment, but in fact we'll see local execution, importantly things that would not be plausible to do at scale in the cloud. Why? Both ends of the wire are built out of the same chip. The only reason you could do some of those things in the cloud is because there's low utilization or slow utilization by the people at the edge. But if the machine actually moves to become fully productive, to anticipate things and to attempt things on your behalf, then, they would be qualitatively different and more valuable, and I think we will see the revolution begin again.
|
|
| |
So, with that, Ray and I would be happy to take some questions. Ray?
|
|
| |
Due to the varying sound quality and subject matter of tapes, the information in this transcript may contain inaccuracies.
|
|
|