 So I have with me, a special show, I have with me Bill Kramer of NCSA and the Blue Waters Project in John Zebarth, also Blue Waters in the Creel Institute. It's actually a different setup, we're actually in the same room for once, so if you guys could please introduce yourselves and give a little bit of background. I'm John Zebarth with the Creel Institute and I work to help the Blue Waters Project, especially with respect to the Great Lakes Consortium for Pedestal Computing, which are the 28 universities and other educational institutions that came together to support the proposal that went to the National Science Foundation for the Blue Waters system. I'm Bill Kramer, I'm the Deputy Project Director for Blue Waters, which means that I take care of the day to day issues of the project, but right now in the deployment phase of crafting the system and getting it delivered and deployed, and going through additional activities to do software development for it and some value-added activities. And then we'll go into a five-year period where we operate the system for science and engineering applications at scale. Okay, so can you get a quick summary of exactly what Blue Waters is? What is its goals? So Blue Waters is used in two terms. One is a computer system that is the leading system of its generation for open science. The other part of Blue Waters is a large project that not only is about taking a system and putting it in place, but all the ecosystem, if you will, the infrastructure that goes around that system, including all the support that goes around that system. One of the main focuses that makes this project a little bit different is we're doing a lot of very early work, even before the technology is available, to help applications prepare for running at scales that Blue Waters will be able to run at and doing transformative science problems. We're actually engaged with 18 science teams right now that will increase over the next year or two, but we're working with them on their single CPU performance. We're working with them on how their code scale, re-engineering things, working on IO bottlenecks, other types of bottlenecks, and also improved methodologies in terms of the programming environment tools that they use to work to understand their applications. Modeling of their applications in a more formal manner in a variety of other support activities. So when the machine comes into existence at full scale, all these science teams are able to start running their real science rather than spending six months or a year tweaking and tuning and trying to figure out what to do. So we're actually doing that upfront work now through the simulation and modeling and other things and eventually access to hardware in order to get helping the science teams get ready for such a novel system. So actually we had a question off of Twitter that requested, how many people do you actually expect to, will be able to take advantage, will it just be the 16 teams that will be able to actually take advantage of a petaflop type system at day one? And then how many do you expect that six months, 12 months, what's kind of the ramp up in the resources available? So we think that there are many areas of science that can use the capability of a sustained petaflop and to us that means really time and solution. So what you have to measure is some way that people can understand. It really is taking the applications that people need to use or applications of the future a couple years in advance. Challenging problems, putting them together and then wanting to solve that problem in a certain amount of time. And there's two ways to look at this. One is who can use the entire system at a rate that translates into a sustained petaflop and that's actually some of the benchmarks. The other thing is what I call the sustained system performance. So if you think about a range of applications and their performance on their problem and their application, regardless of does it use the whole system or quarter of the system or a tenth of the system, and you look across all those things that are going to be running simultaneously, the system still will perform above a petaflop process. And that's the other way that we measure this. So it's not just a couple of big things. It's taking a system that is targeted to be probably the most productive system coming out of the DOPER program, the HPCS program, the most productive system for people to use and helping them make very effective use of that regardless of the scale of the system. Now we expect that in initial operation there will be about 30 to 40 science teams that are allocated the vast majority of the time on the system. Those teams will almost certainly have multiple parties on it, but they are all trying to solve one science problem in a way that hasn't been done before. They may use multiple codes, as a matter of fact most of them right now are double. We know at the moment there's been about 18 teams identified. There is another call for proposals out that will double that number. And then we have some other teams as well. The GLCPC has an allocation process in addition to this for some additional teams, but in general the criteria is that people are proposing to do something at a scale well above what they can get in their normal resource allocations, be that on track twos or be that at the university computing areas. So we expect that there's a large number of science problems that need this type of resource. And the other thing is there's a very balanced resource. So it's not just raw flops, but it's memory bandwidth, it's slow latency communication, all of which are unique features of this machine. So what is actually the allocation process? He said there was a call for participation. The Great Lakes region has its own access for this. What exactly are you looking for when someone submits a proposal for time on Blue Waters? So the Blue Waters project in MCSA is not the arbiter of who gets on the system. The vast majority of the time, at least 80% of the time, will be allocated through a new process that the National Science Foundation has set up called the PRAC process, Pedascale resource allocation, or Pedascale computing resource allocation, the letters they got switched to have a say will happen. That process will allocate 80% of the time, and that's where we're expecting this 30 to 40 teams to come from. There are a few other allocations for smaller percents. One is the Great Lakes consortium that John can speak about. We have another one for general education and probably some adjustment in a small amount of discretionary time that we could do for start-up projects. So there are multiple ways to start, but the large allocations are going to come from the National Science Foundation. Do you want to add to that? The GLCPC charter members of which University of Michigan is one, they have an allocation and there will be a process so that teams of scientists at those universities can submit problems to go on to this system and hopefully then scale those up so that they fit under the PRAC allocation process in the future. In a sense they're start-up accounts, but they're really start-up accounts of real science that has the potential of scaling. So what can a like I'm an assistant admin at the University of Michigan who is a member of this consortium as well as highly involved in NSF being a local resource provider, but I don't care if people use my local resource, I just want to enable science at my institution. What can I do as an admin to enable people to access either a Blue Waters resource or some other resource? So I think they're probably looking to help people work to scale their problems to some degree, right? So having such a large resource, the goal is that it's used for things that can't be done in local environments, whatever. So I think helping people get to a point where they have the experience that they can say, okay, I have a method to get to the next level of science using computational techniques is an important thing. I think having well understood codes that they would be using maybe with some model or understanding about where the performance of bottlenecks could be and then we can use our simulation environment or eventually real hardware to understand can system like Blue Waters alleviate some of those either because it has raw performance or because we're able to re-engineer some of the methodologies in the code and help people do that is another way. IO is an area that I think is challenging as codes scale and is actually been identified as an area many of these science teams are going to be working with to improve the performance of their code or reduce the time of solution or the problem that they're specifying. Also being out of the box, our system will encourage people to use new programming methodologies in advanced libraries, things like UPC and Co-Rate Fortran is actually hardware support for those. Now we don't expect people to rewrite their codes entirely but we do think that since it's a multi-core chip so it's a cores per processor and for those processors joined together into what you'd call a node the use of other programming models for maybe sub-routines or library routines might be beneficial and off as a different version maybe that will scale up because there's actually hardware support for that there's hardware support for collectives in the interconnect that will help things like all reduce and in various synchronization so helping people get to a point where they're capable of going to the next step in terms of what their science problem is that they're trying to solve as well as the method that they use would be I think very useful. We do have some collaborations, I mentioned the project is involved very much with adding value and we'll just deploy this big system, right? The whole idea is the big system, we want people to find it useful and that they're effective in using it. So we have about 10 or 12 collaborations right now that involve the programming environment but also involve system software and they range from new ways of managing the IO on the system from the system side, transparent movement of IO from online storage to nailing storage and back information life cycle management, parallelization, parallel tape for performance as well as reliability, a variety of different things that we're doing in the IO structure of the system that will be now helping do that and being involved in those collaborations they're open and most don't require proprietary information to be exchanged between the collaboration and IBM. We have another couple things focused very much on workflow, Eclipse tools for how you debug it scale and performance scale. So involvement in those collaborations we're open to having more people help with those and much of those collaborations are meant to not just apply to the system that we call blue waters but other systems throughout the community. We've already published some specifications for APIs or drafts for ways of doing things that would like the community to be involved with. We presented a tutorial to present things in supercomputing. So involvement in our collaboration areas would be a great thing to do. So back on the allocation thing, given that blue waters and Terrigrid are both wanted by NSF, what was really the reason of having a separate allocation instead of integrating this in with the Terrigrid National Resource? So I can't speak definitively for NSF, but I think that they recognize that they wanted to use a system like this for the unique problems that can't be done elsewhere. The other reason is that within the federal government, there are a few systems that are called leadership systems or track one systems and when that whole activity was funded jointly through government initiatives, it was determined that those systems could not just be used within a single agency. That they had to be national resources. So for the first time, there is no restriction on who can use this NSF resource. It doesn't matter how their funding is there, what organization they come from. Anybody can apply to use this resource for science or engineering that is transformed or could be even other disciplines than that. That's another motivation then that the other allocation processes were for NSF-related projects and this is a completely open resource because it's a national resource as opposed to an NSF resource and that needed to have a distinction between those two. DOE has done the same thing with their leadership facilities. The program that they used to allocate called INSIGHT is a completely open allocation process and anybody can apply for that and they've made a wounds in that. So I think that that's a big motivation as well. Okay, so I have two final things because we're running short on time here. What is the expected lifetime of the Blue Waters Project and its current inception, including the system, the support base has been put up for these pedascale applications and then finally, is there any plan for what's coming after Blue Waters? What do you have in mind? What do you like to see happen or what is actually in the process of happening? So the system, the schedule is that we'll have Blue Waters fully in what I call full service by next summer, summer of 2011. We already have access to some early equipment and that will start to build up the system starting towards the end of this year and we'll actually in Illinois also be deploying the Docker prototype which is about a third of the size of Blue Waters eventually. So we start doing that this summer, working through the next summer to get everything working properly and through there. We have five years of operation and support after full deployment. So from the mid-2011 to mid-2016 will be the time period where the system has its impact and people can use it and solve science problems. We're hoping that that impact will be significant early on. That's why we're investing so much energy with the science teams to work early on. What goes on after Blue Waters actually, we have ideas and thoughts. A lot will depend upon a couple things. One is whatever programs the National Science Foundation or other government organizations institute to continue computational infrastructure. There's a lot of activity within the National Science Foundation about how and what they will do as their next generation of computational infrastructure going on right now. I think that Blue Waters actually will be a very interesting experimental resource in the sense that many of the problems that we'll see some of in Blue Waters, multi-core, larger scale, while Blue Waters is set up to be easy to use and easier to use than a lot of commodity architectures or other architectures. For example, we have about 300,000 cores. Similar systems would have around a million cores or a million and a half cores. Blue Waters will be easier to use as some degree, but still challenging. I think that we can observe many of those issues that will be challenging to us in the next generation, be that exascale or multiple hundreds of petascale. Reliability, resiliency, continuous scaling, optimization, tools, how do you debug it? Hundreds of thousands of cores. We can use the experiences of Blue Waters to inform what we do next, both on the research for new systems and the development of new systems. I think that that's an important aspect that will have. Our IO infrastructure, we're planning to be quite aggressive, hopefully we'll succeed, but at the very least, the lessons that we learned in trying to do that will inform other ways of implementing similar services. Is there anything else you guys would like to make sure gets mentioned and gets out there? I think if people are interested, they should contact us. We have our website at NCSA and either to participate in the collaboration work or to actually apply for science projects through NSF or GLCPC or other mechanisms, and hopefully you'll be hearing more about us as the system actually comes into existence. We'll end up with a lot of impact on open science because it's completely open to everybody. Thank you very much, Bill and John. Thank you. Thank you.