Click Here to Install Silverlight*
United StatesChange|All Microsoft Sites
Microsoft
PressPass - Information for Journalists 

Remarks by Bill Gates, Chairman and Chief Software Architect, Microsoft Corporation
SC05 (Supercomputing 05 Conference)
"The Future of Computing in the Sciences"
Seattle, Washington
November 15, 2005

BILL GATES:
Thank you. Well, it may seem strange to have somebody that works at the very lowest end of computing here addressing the supercomputing audience. My earliest work was writing the BASIC interpreter that would run in a 4-K-byte machine, and I spend day and night trying to find any little byte that I could save so that the interpreter, the data, everything could run in that small, little kit computer, which was called the Altair.

Well, that very low cost computing led to high volume personal computing, and today we have over 800 million of those machines in use, really moving towards the original vision of a computer on every desk and in every home.

Multimedia Resources

You can use PowerPoint Viewer 2003 to see the PowerPoint presentation.



Now, this has meant that software has moved to the center. It's moved to the center for communications, for creativity, for visualization, and it's amazing to see how far software has come and yet how much more we need to do. In terms of security, ease of use, high level descriptions software really is just at the beginning.

But what we're seeing is that many of these challenges we face in software – connecting machines together, having parallel algorithms that allow many compute systems to work on a problem and combine their results together – these problems are very similar to the problems that exist in high-end supercomputing. And so it's exciting to think that we can get the best range from supercomputing and mass computing, bring those together and make great progress in the decade ahead.

Part of the reason this is so fantastic is that computation has become a tool for all the sciences, and so by solving these problems we help advance so many critical issues, whether it's product design or biology, inventing new medicines, understanding the environment, things that are very important to all of us.

Three Classes of Computing

So business computing moved from a few very expensive machines to now hundreds of millions of very inexpensive machines working together. This is where techniques around database and rich protocols and productivity software were developed.

Consumer computing, with its focus on media, video, graphics, has also thrived, and that's why we see better and better computer games and people connecting up in new ways around social type networks.

I would say that technical computing is almost the third type of computing with a lot shared and a lot of special problems that need to be focused on. And so Microsoft is committed to work in each of these areas, understanding where our work can play in and how the state of the art can be advanced.

Industry Megatrends

Now, our industry moves at a really incredible pace. The benefit of having the exponential increase in the number of transistors on these chips has really allowed us to be more and more ambitious every year, taking on very tough problems. We recently made the transition from a 32-bit address base to a 64-bit address base, and that's very important for the large data sets that come up not only in the business realm but, of course, in the technical and scientific realms.

The performance of the hardware is better and better, and that means that in a sense what was low-cost or good-priced performance computing and what's high-end computing really have more and more in common; using a state-of-the-art, high-volume microprocessor connected up with the best software really is the solution to almost all types of computing problems.

Now, as we get this extra power we do have some interesting challenges. The challenge of parallelism is becoming a very important challenge, particularly as the clock speed of the microprocessor won't be increasing at the rates that it did in the past. That clock speed improvement allows single thread software to simply make record benchmarks again and again and again. Now, as we reach about a 6-gigahertz to 8-gigahertz limit for some period of time, we'll have to bring in techniques around parallelization and those are techniques, of course, that the high end has been working on and understanding for a very long period of time.

The nature of these computers in terms of where we have them, how we use them is also changing. As they become cheaper, smaller, as the screens become better, we can think of even something like reading moving over to the digital realm and so that instead of having a library of papers, simply by being connected to the Internet through wired Internet or wireless Internet you can browse the full library of knowledge and annotate that and communicate relative to that in a far better way than paper systems would have allowed in the past.

Users are working with multiple devices, so understanding their preferences, their needs, their willingness to be interrupted, their interest in being notified of things, that's become a cross-device type thing where there will be services running in the Internet that work on behalf of users to make that possible.

We're driving forward with new form factors like the Tablet PC that means that input won't just be the keyboard but it will also be speech, it will be ink, and we'll have lots of cameras so that we can see what's going on, understanding whether you're paying attention to the computer or talking to someone else, and literally take meetings and be able to provide that video, create a natural transcript, let people access the things that are of interest.

The way that we're composing software together has advanced. With the rich protocol descriptions that we're getting to connect machines across the Internet, so-called Web services, we're now formalizing the idea of the boundaries between two pieces of software in a much better way. Over time we have to use contracts that are very rich and things that we can do proofs on so that we can spot software errors earlier on, spot them at a smaller level of scale and therefore have large systems that have much greater reliability.

One of the building blocks for this has been XML, and this really grew out of some work in the late '90s that Microsoft and some smaller companies were doing around document formats and thinking about taking that and extending that into data formats. And so today XML has really moved to the mainstream and is critically important in terms of the types of rich data that come out of not only the business world but the scientific world as well.

We can say that we're moving towards digitization of everything. A lot of compute clusters now are doing things like simulating new product designs. A new plane, a new car will be done on a digital basis, and there should be a deep understanding of what happens in a crash or how does it wear over time by using these digital models instead of having to figure those things out in the physical world.

So all of this leads to a need for software breakthroughs, being able to let people specify things not in terms of thousands of lines of code but rather in terms of rich declarative models, being able to let people specify the application they want to run and having software figure out exactly what computer resources it should be matched against, whether it's local things like a small compute cluster, or going out on the network and even bidding for resources that might be available there to run that job and bring those results back. We have a lot of work to do in the visualization side as well, making it easy to take all this rich data and find the deep insights that are in that information.

We see that this huge amount of data is coming up in many different realms. In the business world it's about sales information or who clicked on the Web site, what type of customer purchased the product and which type of ad works best. But we also see it in all the different sciences. One of the pioneering projects here was one that Jim Gray at Microsoft Research did looking at how different databases with astronomical data could be brought together so that a researcher who wanted to pose a theory or explore data patterns about observations of different galaxies could do that without going to each of those individual databases. It was taking all of those databases and creating a logical database that you could connect to through rich Web services. And so it's an amazing amount of information and yet all of it important to test the insights that people have in that field.

Computation Transforming the Sciences

Well, many of the sciences generate even more data than in astronomy. The life sciences with genomic and proteonomic data, it's an explosion of information that people around the world should be able to benefit from the results that other people are gathering together. In the social sciences, understanding economics and how decision-making is done – again, massive amounts of data.

And so in the same way that mathematics has been a tool of all the sciences, in the years ahead we can think of computer software that manages lots of information, that lets you mine that information, that will likewise be a very critical tool.

And so it's people who understand software and have access to these great tools who will be in the best position to make the advances in these different sciences.

Computational Modeling

Now, of course, at the core of lots of supercomputing has been the idea of modeling things computationally and doing that at a finer and finer level of detail. And that leads to this really unbelievable demand for computation. Many of these problems are of the type that can be parallelized in a very straightforward way. And so the arrival of lots of low-cost microprocessors, the ability to connect those together with a fairly high-speed data network has led to an exciting new way of thinking about running these high-end applications. More and more things run against lots and lots of these microprocessor-based systems. That's complementary, of course, to the problems that require vector supercomputing, and we'll have a mix of those two techniques there.

We see as a key trend here is that we'll have supercomputers of all sizes, including one that will cost less than $10,000 and be able to sit at your desk or in your department and be very, very accessible, and you'll be able to use that for preliminary results or simple problems and yet will have an architectural continuity that means that when you want to take that same computation and do it with a finer level of detail, submitting it off to a cluster that's dramatically larger and can do more will be extremely straightforward. So we need an approach here that scales from the smallest supercomputer that will be inexpensive up to the very largest.

Now, the grains inside these machines more and more will be multi-core type devices, and so the idea of parallelization won't just be at the individual chip level, even inside that chip we need to explore new techniques like transactional memory that will allow us to get the full benefit of all those transistors and map that into higher and higher performance.

Technical Computing

So the computational modeling piece is a very important piece, but I think in terms of where software can help out, where we can do a better job, we should think about the entire workflow. In a sense, one way to measure this is to say, what is the time to insight? If you're a scientist who wants to gather a lot of information, compute around that information, look into that information, how can we make all the steps involved there far more efficient than they are today? And here we can see that for many problems the man hours involved in terms of changing the data formats and bringing up the different software tools and trying to see what the data is saying, that's the overwhelming percentage, and breakthroughs there would have incredible leverage, even beyond just the part about the computational modeling.

And so now we need to take the techniques that have been developed for things like business intelligence and data mining that goes on around that and think how we can apply those in these realms as well, how we can take every step of the process and have it be very visual and only require as much software understanding as is absolutely necessary.

Vision for Scientific Workflow

So here I've got a little diagram that's a typical workflow, looking at data acquisition, modeling, bringing those things in to data stores, combining them with information that somebody else has already gathered, using different algorithms to sort through that data and then finally coming up with the insight that's valuable that will really advance the state of the art in that science.

And so if we think about this entire process, we need to be more explicit about how this model works. In fact, what we'd like is almost a visual diagram identical to this conceptual diagram that you literally work through at the various stages of the process.

Well, to talk about a vision of how this might be done in the years ahead, I decided to take a specific project and talk through the possibilities. There's a project being pulled together called NEPTUNE, and that's being done by Dr. John Delaney and a team he's got at the University of Washington that would like to put sensors out over the fault that's just off the coast here and understand these so-called "black smokers". These come about where you have spreading plate boundaries undersea and they're very interesting because when you've got these smokers there's a lot of nutrients there and exotic microbes, and there's a lot of people that think as we understand those we can understand the beginning of life itself. In fact, it will be interesting to see as we do exploration of the moons of Jupiter whether the same sort of phenomenon is taking place there and the same sort of life forms have appeared there as well.

So the idea is that we'd be able to put out sensors, lots and lots of sensors and that they would be there so at the various times the activity takes place you can actually get the data immediately in real time. You can be notified of what's going on, you can get insight, you can even have the sensors gather different information as you explore and see what's taking place there.

And so the idea is that there would literally be thousands and thousands of sensors, and we can see this in many of the sciences, that low-cost sensors that give us overwhelming amounts of data, and yet that we want to control in real time will be feasible.

So these will simply connect over the Internet, they'll be a source of XML data. In fact, that XML data won't just be the raw data, but they'll have meta tags, including things like what version of the sensor was there, what version of the software was running on that sensor. And so in the future as you're looking at different versions of the data, you can always go back and understand exactly what the provenance of that information was. You'll be able to have very rich visual diagrams that show you which sensors are bringing you which information and even send out software updates so that if you have a new piece of micro code to run in the sense, that's simply a point and click type operation.

As that data comes in, as I said, it's the XML, the HTML will show you the URL that you associate with these data sources, but all the data itself is in a rich XML packet. That means as you extend the sensors, as you get more resolution, get more information, that you have upwards compatibility, you're not breaking all the software that does the processing, you're simply adding in tags that if they understand they use that information and if not it doesn't affect what that software is able to do.

I can't emphasize enough how much this XML revolution has changed all the software that we do and I think the entire industry has worked on. We announced our commitment to this back in the year 2000 and we've actually gone through three versions of our software to get XML absolutely to the core. The first version we've put converters up on the top of the software, the second version we put it sort of in the middle of the software to have some native understanding. Now, the actual stores themselves in our SQL database, in our Office file formats, in the way that Windows tracks and describes things, those are actually native XML.

So it's just the database coming out this year that completes in that third iteration of complete adoption of XML, and in the case of the productivity packages it's actually the release we make next year that gets XML to be exactly the format we use whenever you do an Open command or Save command. And it means that moving data in and out of these products is dramatically easier, because there's not a mismatch in terms of the schema understanding the typing system, it simply is XML. For something like a spreadsheet it means that the data import that in the past required working through the user model of the spreadsheet, now there's just a pure data model where you take an XML named range and move that information in and out.

So here with our sensors we have lots of XML data coming in, and how would we like to work with that. Well, instead of just always having to go down and work at the source code level we'd like to be able to do visual programming. We'd like to be able to take the various sources of information, represent those, track their state at a very high level.

Now, each of these bubbles are things that we can click on, dive into, get more insight, and eventually if you click enough times you are taking to a source code editing environment, but most of the time you shouldn't need to do that. The bubbles represent the data acquisition, the databases. The workflow itself is another thing that you can save, share with other people, they can edit it and apply their own version, but this type of level of activity can be described in a very formal way as a visual type program.

As you're working with this data, of course you want to invoke a lot of different computing resources, and here we show as we've moved into a part of the visual diagram where we're actually doing this processing.

Now, here in this case this is a future vision, we're actually sending part of the computation off to one compute cluster and another part off to another compute cluster. And one of those clusters can be a very traditional cluster that wasn't designed around XML or Web services, but by putting a thin layer of software on top of it we can wrap it and actually have this nice visual representation and still be able to invoke it in this nice workflow.

The other compute cluster was designed from the beginning to expose its capabilities, describe its availability and be invoke-able in a rich way through standard scheduling type protocols. And so here on the left we see the idea of being able to track the progress in that computation and see the various clusters or even click in and zoom in and see which part of the problem is the slowest, where there's any errors taking place, so we have a complete way of tracking exactly what's going on there, and still for this we haven't had to write much code to pull this together.

Now, as we're gathering the information, we, of course, want to be able to connect up to research that other people have done, connect up to their data, check their results, see if we're consistent, and so the digital realm also will affect the way that research is done.

There are lots of specialized search engines now being built to navigate not only the world of text but also the world of authors, the world of structured data, and we think this is a very important thing. Search is a deep topic, which obviously will be dramatically better in the years ahead than it is right now.

In this navigation we need communities where we have reputation, where various people have rated things so you can look at things and understand which of your colleagues that you respect have actually said this is important work. That's an important element. As we've connected up the ability to create information to anyone, now understanding who's doing that in a reliable way is extra important, and yet software around reputation and communities can provide that.

Now, these papers that you call up on the Internet won't just be the text, they will literally link back to all of the information, even linking back to the code itself and having these metadata tags. And so the ability to look at the analysis that somebody else has done and see if you agree with that, see what steps they take, see where you diverge from them will be far greater than just looking at their paper and having to essentially call them up and ask them what went on. And particularly as we have these gigantic datasets and lots of algorithms being applied, this ability to navigate in down to the lowest level of information is very, very important.

A lot of these papers will have graphs that you can change the parameters in or animation so that understanding the information becomes a very, very interactive thing, not just reading off of paper.

The publishing process obviously will involve a lot of collaboration. This is where a lot of the work we've done around Office makes us feel like there's new frontiers that can be pulled in here. Going beyond e-mail to be able to share things with people, have multiple authors, we think is very important.

We're also taking things like math equations and building understanding of those into, say, the word processor and taking the ability to have a Tablet-like device where you might just ink out a math equation here, make sure that the ink recognition can deal with that in a very straightforward way, and that's available in all the software; so very rich information in these documents that you can navigate.

So that was a vision of how NEPTUNE might be able to take all the way from the sensor data to the idea of looking at research and doing publication in a far more efficient way than traditional approaches.

Anticipating Tornados

There are projects that are already underway that take some of these ideas and put them into practice. One that's fairly exciting is called Project LEAD and this takes data that's being gathered about potential tornadoes with new Doppler radars – that's the actual deployment of the radar – and LEAD is a software environment that takes that data and makes it accessible where you can actually be warned of things, run different processing algorithms, and really apply the software in a far more dynamic way.

The benefit of this one in terms of improving the detection rates and reducing false alarms is very exciting, but I think it's a great example of a richer software environment, a far more interactive software environment and what that can mean about the workflow that these Web services approaches allow.

So as we move this software forward, this is going to take all the work from the universities, from commercial companies that are focused on technical computing and the computer industry as a whole. And Microsoft wants to play a role here to be a participant and work with partners to see how our software fits in these solutions.

These solutions will often be extremely heterogeneous, and of course UNIX and Linux have been very important in this environment, down on the workstations Windows has had some role, and so making sure that all these things are going to work together, they can connect up, the data can be shared is just one element of how software can do a better job for scientists and designers.

Deep Investments

We're reaching out to a number of the top high-performance computing centers. We've recently strengthened our relationship with the 10 different institutes. We originally were working with Cornell and continue that as an important relationship, but here you see nine others that we're working with to understand what should we be doing in our software, how can it connect up to the other software that they have in a better way.

Putting the Pieces Together

We're also doing more product work to make sure that our software fits into this environment in a very rich way. For example, our spreadsheet Excel in the new release of it comes out next year. We have a server version of that's dramatically more scalable and multithreaded that means that processing scientific data through that spreadsheet can now be organized into a rich workflow, and not run into the limitations that would have been there in the past. We have collaboration tools like OneNote that are for laboratory notebooks, letting you gather up information including snippets of things that come from across the Web. I mentioned the broad sort of XML we're doing in all of these tools.

We also are making sure we connect up in very high performance ways. Last week, some people who work on Internet 2 used Windows machines to actually get the backbone to run at over 8 gigabits. So, that's a record. That was the connection from Seattle to Tokyo to Chicago to Amsterdam and back, and that represents a more than 10 percent increase and actually using lower cost NICs than in previous records. And so, that performance of getting the information around and making sure that the various software pieces are not a bottleneck, that's getting better and better.

Another new development we have is creating a version of Windows focused on compute clusters that we call Compute Cluster Server 2003. So, increased investments in this area, both because of the importance of this area, and because of the advances here we think apply very broadly. The kind of workflow vision that I presented for Neptune actually paralleled very closely the kind of things that people want to do in data mining for business intelligence. And so we think that bringing lots of research to bear will have payoffs in many, many different areas.

Key Partnerships

We're working with a lot of software developers. In fact, we've been very excited at the reception we've got as we've come in and said that we want to do more in this space, and we need their support. All the top ISVs are working with us to connect up to the various software products. We've also got the people who build 64-bit Windows hardware doing a great job and coming up with the different form factors, and packaging that are appropriate for these marketplaces, and all of these are helping us achieve our goal of interoperability, working with the systems that are out there.

Well, to give you a sense of how we see this coming together, and some of this new software work, let me ask Kyril Faenov, who is our Director of High Performance Computing, to come out and show us technical computing at work. Welcome, Kyril. (Applause.)

KYRIL FAENOV: Thank you, Bill.

Hello, everyone. What I want to show you is a scenario that demonstrates some of the concrete steps towards the vision that Bill is describing. The scenario I'll talk about is the one of cancer research, and show how some of the products and technologies available today can help the research improve their productivity through easier data management, and integration of the distributed computing resources into their workflow. Now, early detection is super important in successful cancer treatment. Current diagnostics methods involve invasive and expensive biopsies. And ideally what you'd be able to do is collect blood tests and be able to study it for biomarkers of the disease. This is both an inexpensive and fairly rapid procedure.

Recent improvements in protein mass spectroscopy are making proteomics a promising area for exactly this type of thing. So, what I'll show you is how our research work in proteomics can benefit from some of the tools. We have 216 patients both in cancer and normal groups, and the data has been downloaded from mass spectroscopy machine. Now, typically it's in a flat file. This is the file for one of the patients. It has 350,000 rows, they're both map charts, and intensity information for that map chart, and they total about 1.2 gigabytes of data. The database is an ideal way to structure query and to be able to store metadata about these experiments. So, what we've done is created, imported all this data into a SQL database. There are two tables I want to call your attention on. That definition table acts as a metadata tracking the prominent information about these experiments. So, for each one of the patients, we have the time stamp of when the data was added, so that's a marking, is it a control or is it a cancer patient. And you can imagine additional columns being added. For example, the make and model of the machine that produced the data, the last time it was calibrated, and additional information. The sector samples is the table into which we'll import all the files that I've showed you, and we'll have about 75 million data points.

Now, Visual Studio 2005 Integration Services has their rich visual development environment that we've designed and ran through this workflow to import that data. We can look for new files, fold information from those files and store them into the sector table. And then, kick off preprocessing on a computational cluster to be able to signal analyze that data. This workflow, after being designed and debugged in this rich way, can then be stored on the SQL Server and run in the regular basis as an automated workflow.

There's also a rich toolbox that will allow us to drag and drop components such as downloading data from an FTP site, or to be able to process that from a Web service, integrated directly into this workflow that we've already configured. So, now the data is in the SQL Server. I'm not going to show you running it, but this workflow was used for that. And let's imagine us stepping to a workstation where a proteomics researcher is sitting using a familiar technical computing environment and a workstation such as MathLab with Bioinfomatics toolbox. We can use the rich UI to query and visualize the data out of the database. In this case, we have 350,000 data points in the X axis, the cancer and control samples represented on the Y axis, and the intensity of the measured molecule on the Z axis. What we want to do is to kick off a computation to pull out from 350,000 possible values 20 MZ values that can best discriminate between cancer and control patients. Now, in broad board way, this would require testing 10 to the 92nd sets of MZ combinations. Using genetic algorithms, this makes it a little bit more trackable, but it's still about 10 to the 9 statistics model needs to be created and tested to identify discriminate features that achieve high confidence.

So, tuning an algorithm, a genetic algorithm, is an iterative process that we want to do in an interactive fashion, and for that we need readily available computational resources. So, when I click find biomarkers, the job right from the workstation was scheduled on a personal cluster running with this computer cluster server, such as this prototype, which is a 25-gigaflop machine. It has four nodes, each with a dual-core Intel processor, and has a built in gigabit Ethernet switch that turns it to the self-contained cluster. It's under $10,000. You can imagine buying something like this from your favorite OEM and just putting it in your office, and all you need to do is just plug in the power into the outlet, and to be able to plug in an Internet connection or a network connection into that box. And I think an accelerator for what you're doing.

The results came back, the red lines represent the best selected 20 molecules because of those eight genetic algorithm iterations. What we're seeing is the performance of the algorithm and the confidence, so it's pretty decent, and we'll run it several times to be able to get the kind of performance that we want. Once we're satisfied with the algorithm's general performance, we want to kick off a much larger computation to be able to pull out the actual peptides that we'll use in the further research. We want to do that to run about 320 samples. This will take over an hour on a workstation, and possibly an hour in a personal cluster. So, we'll go ahead and request 320 processors to do that, and kick off the computation again.

Now, a researcher does not want to worry about where the resources come from. He just says, I need that much computing power, and so the job gets scheduled through the personal cluster. The scheduler in the compute process server has been configured by an IT manager to know about two additional computational resources, in this case larger clusters in the environment that the job will be forwarded to if it exceeds the program threshold. In this case, it was eight processors. And we all know that HPC is a heterogeneous environment, and integration with existing infrastructure, so it's super important to maximize utilization.

To demonstrate this, backstage we have a cluster of 60 nodes, 32 processors, it's a Dell box, and it's running Linux, and Class Form LSF Job Schedule is being used to schedule the jobs on that. The other cluster is in Intel's remote access location halfway across the state connected over SCinet and InfiniBand networks, and it's a 64-node machine, two processors, dual core, so it's 256 core total, and it's running Windows Compute Cluster Server.

And so now, if you look at the monitor here, we need to switch it to Workstation 2, we can see the job running on both of those computers either standard performance monitoring tools built into both Windows and the client. The jobs have completed. They're just wrapping up here. The results will start appearing back on the workstation. MATLAB with distributed computing toolbox was running on both of those compute nodes, and now the results are coming back. We're seeing that with increasing number of iterations, we're getting a higher degree of confidence. Now, it's important to note here that because we have a very large number of MZ values, 350,000, and a small number of patients, only 216, there's a high likelihood that the marker says that each genetic algorithm pulled out will demonstrate high classification performance, but might not be actual significance. This is why to maximize the confidence, we're running these multiple iteration of the algorithm while measuring for probabilities of the model. So, here you're seeing black lines demonstrating the procure probability.

And so, the performance of this algorithm was quite good. We're satisfied with the results. The red 20 markers we'll save for further use, for additional clinical experiments, or additional analysis, and at this point the researcher was able to successfully get the results done.

What I show in this demo is how directly into the workflow of a researcher we can integrate data management tools that take raw data from the experiments and put them in a structured format, add the metadata information, how computation directly weaves into a rich visual environment by integrating both remote, heterogeneous and personal clusters like this, and improve the kinds of insight that the researcher can achieve through using advanced computation. So this demo that you just saw was a collaborative effort over the last few weeks, pulled together by teams from MassWorks, Platform, Cynet, Open ID, Intel, and [SilverStorm], and Microsoft, and I want to thank those members for contributing to this. And if you're interested to see more details, I invite you to stop by our booth and pick up a white paper that describes what you saw in more detail.

Thank you very much. (Applause.)

BILL GATES: I think that demo is a great example of how we see the pieces coming together. Different types of compute clusters, a single ability to schedule across all the different resources, and then very rich visualization tools, some from ourselves, but mostly from our partners.

As we're applying computation to the sciences, one of the most interesting things is coming up with new algorithms, not just more performance, to kind of brute force these things, but actually new approaches that wouldn't have been possible without advances in computer science being brought together with understanding in the specific sciences.

A great intersection where this is taking place is looking for an AIDS vaccine. This actually brings some of the work I do in my foundation together with some of the most advanced machine learning work, and Microsoft research. Of course, this is a very, very important problem, and it's fascinating to see that deep software understanding is being used to make progress here.

Let's go ahead and hear from some of the scientists who are doing this work.

(Video segment.)

I recently was out speaking to computer science undergraduates in six top institutions in the United States. And I had a chance to share with them my view that the next 10 years are really going to be the most exciting, not just in computer science, but in all the sciences, as we can take the advances in software, as we can take these new computational capabilities and apply these to some of the world's toughest problems. This is going to take a lot of breakthroughs, a lot of insights, a lot of people working together, but certainly we're committed to do our part, and we're excited to work with all of you and to see where this can lead.

Thank you. (Applause.)

 

Related Links


© 2009 Microsoft Corporation. All rights reserved. Contact Us |Terms of Use |Trademarks |Privacy Statement