The history of computing is one of punctuated equilibria, with each era reshaping and raising our expectations about computing’s power, scope and relevance. From mainframes and minicomputers through workstations and PCs to the web, the exponential changes continue to be deep and profound. Today, the Web 2.0 revolution is in full flight, driven by large-scale (soon heterogeneous) multicore processors (called manycore), scalable cloud computing, social networks (See Socializing in Cyberspace) and software as a service. None of us knows where this future will lead, but the excitement is palpable.
On December 3, I will embark on the next installment of my own future, which will place me in the center of the ever-evolving computing revolution. On that day, I will be joining Microsoft to head a new research initiative (see the Microsoft Research press release and RENCI/UNC press release) in scalable and multicore computing. I am enormously excited, as these are among the most interesting technical problems in computing, and they are my long-time professional interests. I will be working with Microsoft researchers and product developers, as well as industry partners and academics. It doesn’t get any cooler than this.
The Road Ahead
At Microsoft, my primary charge will be to explore new approaches and designs for large-scale data centers (See Life in the Clouds), both hardware and software. What features will be needed to support emerging and unexpected new applications? How do we optimize power and efficiency? What are the appropriate hardware and software interfaces? How will computing clouds evolve to empower next-generation applications? (To put this in perspective, this week, Microsoft announced $1B in new data center investments in Chicago and Dublin.)
This (move to multicore) 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.
I have written before (See Multicore: Our Software Crisis) about the challenges all of us face in creating effective and productive programming models and systems for multicore systems, especially the future with manycore system-on-a-chip designs containing tens to hundreds of heterogeneous processors.
And finally, I will continue to be active in science and technology policy and evangelism (PCAST and CRA, for example). As many have argued, computing is now the third pillar of scientific discovery; one simply cannot do world-class science without computing. Equally important, computing enables social discourse, supports our infrastructure and powers our economic systems.
I’m very excited about this new Microsoft opportunity for many reasons. First, I’m looking forward to working with my old friends Rick Rashid, Tony Hey, Burton Smith and Illinois alum Ray Ozzie, among many others. Second, in a real sense, I’m returning to my roots as a big iron (See I Feel the Need, the Need for Speed) and parallel computing guy, focusing on the design and optimization of systems at truly large scales. Finally, I am a technological optimist who believes we are still on the steep slope of the computing S-curve.
I’ve been an academic now for over 24 years, with most of that time spent at the University of Illinois at Urbana-Champaign and the last four here in North Carolina. All of it has been wonderful: the people, the projects and the experiences.
At Illinois, I was fortunate to work with a phenomenal set of faculty on some amazing high-performance computing projects. The early days were filled with collaborations with the Center for Supercomputing Research and Development (CSRD) Cedar project, led by David Kuck (now at Intel), and collaborations with Intel’s Justin Rattner and others on distributed memory parallel systems. (In the small world category, Cedar was based on the Alliant FX/8, and Craig Mundie was one of the Alliant founders, and Justin Ratter is now working on large-scale multicore systems.)
There were and are great national collaborations, from Paul Messina and the Caltech Scalable I/O Initiative to the GrADS/VGrADS grid projects with my friend Ken Kennedy (I really miss him) to the LEAD and PERC/PERI teams. At NCSA, Larry Smarr and many of us worked to advance Linux clusters and Grids as enablers of scientific discovery in the NSF PACI National Computational Science Alliance and later, the TeraGrid. Through it all, I was privileged to be a part of the UIUC Department of Computer Science.
At North Carolina, I’ve been equally fortunate to be part of something very special, the Renaissance Computing Institute (RENCI), as well as partnerships and collaborations with faculty, staff and students across North Carolina.
RENCI: I’m Very Proud
I am enormously proud of what we have built at RENCI during the past four years. When I arrived in North Carolina, RENCI was but a vision of multidisciplinary collaboration and my PowerPoint slide deck. Three months later, Alan Blatecky joined me as RENCI’s deputy director and much more than doubled our intellectual throw-weight. Alan has been a wonderful collaborator and sounding board, as well as a great friend. RENCI is in great hands under Alan’s interim leadership.
RENCI began in 2004 as a creature of the three Triangle research universities (Duke, NC State and UNC Chapel Hill). We received recurring state funding in 2005, and we have been expanding exponentially ever since. From “Dan and a dream,” RENCI has grown to be almost 100 strong, with an anchor site in Chapel Hill and engagement sites at NC State, Duke, UNC Chapel Hill, East Carolina University, UNC Asheville and UNC Charlotte. We’ve become a statewide presence with national reach and partnerships.
From the outset, the RENCI vision was to be a catalyst for multidisciplinary collaboration and innovation, tapping the best talent across North Carolina to attack and solve problems that are central to 21st century life. Economic development, outreach and education, multidisciplinary research and innovation have been and continue to be our watchwords. We have launched a diverse set of initiatives (just look at the projects focus section on RENCI’s web site), with two notable foci in disaster response and biomedicine.
Most importantly, I am deeply proud of the people at RENCI and their accomplishments. To all those at RENCI who have turned this dream into reality, I say this: I came to North Carolina with a vision of what could be, and you embraced that vision, amplified it and made it your own. You gave wings to ideas via your talent, commitment and hard work. RENCI is a thriving, vibrant organization because of you, and I am enormously grateful for your passion and support. It has been a privilege to work with you. I know RENCI’s future is bright, because you are the best!
Carolina on My Mind
Though this will be my last post to this blog, Carolina will always have a warm spot in my heart. Thank you to everyone who embraced and welcomed me on this great North Carolina adventure called RENCI.
I will launch a new blog as soon as I am settled at Microsoft. Watch this space for a pointer.