Computer scientists have long believed that software is different from physical systems in one fundamental way: while the latter have continuous dynamics, the former...Swarat Chaudhuri, Sumit Gulwani, Roberto Lublinerman From Communications of the ACM | August 2012
As information technology has come to permeate our society, broader classes of users have developed the need for more sophisticated data manipulation and processing...Martin C. Rinard From Communications of the ACM | August 2012
Millions of computer end users need to perform tasks over large spreadsheet data, yet lack the programming knowledge to do such tasks automatically. We present...Sumit Gulwani, William R. Harris, Rishabh Singh From Communications of the ACM | August 2012
In 1999, Elias Koutsoupias and Christos Papadimitriou initiated the study of "How much worse off are we due to selfishness?" They compared the worst case pure...Amos Fiat From Communications of the ACM | July 2012
The price of anarchy, defined as the ratio of the worst-case objective function value of a Nash equilibrium of a game and that of an optimal outcome, quantifies...Tim Roughgarden From Communications of the ACM | July 2012
Like other IT fields, computer architects initially reported incomparable results. We quickly saw the folly of this approach. We then went through a sequence...David Patterson From Communications of the ACM | July 2012
The past 10 years have delivered two significant revolutions. Microprocessor design has been transformed — leading to multicore processors. And an entirely new...Hadi Esmaeilzadeh, Ting Cao, Xi Yang, Stephen M. Blackburn, Kathryn S. McKinley From Communications of the ACM | July 2012
Good software engineering practice demands generalization and abstraction, whereas high performance demands specialization and concretization. These goals are at...Tiark Rompf, Martin Odersky From Communications of the ACM | June 2012
"The fox knows many things, but the hedgehog knows one big thing." Philosophers have used this line, attributed to the ancient Greek poet Archilochus, to capture...Peter Lee From Communications of the ACM | June 2012
Suppose that one observes an incomplete subset of entries selected from a low-rank matrix. When is it possible to complete the matrix and recover the entries that...Emmanuel Candès, Benjamin Recht From Communications of the ACM | June 2012
The problem of estimating or reconstructing an unknown structured object from incomplete, partial, noisy measurements is a fundamental one in scientific and technological...Pablo A. Parrilo From Communications of the ACM | June 2012
It is widely held that parallel programming is far more difficult and error prone than writing sequential code. In particular, the myriad allowable interleavings...Steven Hand From Communications of the ACM | May 2012
We introduce a new parallel programming model addressing the issues facing current methods of executing parallel programs deterministically, and use Determinator...Amittai Aviram, Shu-Chun Weng, Sen Hu, Bryan Ford From Communications of the ACM | May 2012
Say you want to simulate the motion over time of the stars in a galaxy to learn about how galaxies formed and why the universe appears as it does. Is it feasible...William Gropp From Communications of the ACM | May 2012
We describe a parallel fast multipole method for highly nonuniform distributions of particles. We employ both distributed memory parallelism and shared memory parallelism...Ilya Lashuk, Aparna Chandramowlishwaran, Harper Langston, Tuan-Anh Nguyen, Rahul Sampath, Aashay Shringarpure, Richard Vuduc, Lexing Ying, Denis Zorin, George Biros From Communications of the ACM | May 2012
With Aardvark, a social search engine, users ask a question, either by IM, e-mail, Web input, text message, or voice. Aardvark then routes the question to the person...Damon Horowitz, Sepandar D. Kamvar From Communications of the ACM | April 2012
It is difficult to remember what people had to do to find the answer to a question before the Web. One option might be to call a friend who might know the answer...Ed H. Chi From Communications of the ACM | April 2012
Physicists have long observed physical phenomena and developed mathematical models to describe them. The advent of computers has allowed us to implement these...David Harmon, Etienne Vouga, Breannan Smith, Rasmus Tamstorf, Eitan Grinspun From Communications of the ACM | April 2012
Computational power has been widely used to predict the behavior of dynamical systems using computer simulations, which are often used as an adjunct to or substitute...Dinesh Manocha From Communications of the ACM | April 2012
The ancient oriental game of Go has long been considered a grand challenge for artificial intelligence. However, computer Go programs based on Monte-Carlo tree...Sylvain Gelly, Levente Kocsis, Marc Schoenauer, Michèle Sebag, David Silver, Csaba Szepesvári, Olivier Teytaud From Communications of the ACM | March 2012