This paper introduces an interface-driven approach to building scalable software.
Austin T. Clements, M. Frans Kaashoek, Eddie Kohler, Robert T. Morris, Nickolai Zeldovich From Communications of the ACM | August 2017
"IronFleet: Proving Safety and Liveness of Practical Distributed Systems," by Chris Hawblitzel, et al., describes mechanically checked proofs for two non-trivial...Fred B. Schneider From Communications of the ACM | July 2017
We demonstrate the methodology on a complex implementation of a Paxos-based replicated state machine library and a lease-based sharded key-value store. With our...Chris Hawblitzel, Jon Howell, Manos Kapritsos, Jacob R. Lorch, Bryan Parno, Michael L. Roberts, Srinath Setty, Brian Zill From Communications of the ACM | July 2017
"DeepDive: Declarative Knowledge Base Construction" is a prime example of groundbreaking work in the area of Knowledge Base Construction.
Alon Halevy From Communications of the ACM | May 2017
We describe DeepDive, a system that combines database and machine learning ideas to help to develop knowledge base construction systems.
Ce Zhang, Christopher Ré, Michael Cafarella, Christopher De Sa, Alex Ratner, Jaeho Shin, Feiran Wang, Sen Wu From Communications of the ACM | May 2017
One unfortunate fact about protocols is that as they get older and applied to more scenarios — and TLS is used basically everywhere — they tend to gain weight....Eric Rescorla From Communications of the ACM | February 2017
We systematically test popular TLS implementations and find unexpected transitions in many of their state machines that have stayed hidden for years. We show how...Benjamin Beurdouche, Karthikeyan Bhargavan, Antoine Delignat-Lavaud, Cédric Fournet, Markulf Kohlweiss, Alfredo Pironti, Pierre-Yves Strub, Jean Karim Zinzindohoue From Communications of the ACM | February 2017
A time-tested principle in computer systems design is to use an interface to separate an abstraction from its implementation. "Software-Defined Batteries" represents...Srinivasan Keshav From Communications of the ACM | December 2016
In this paper, we present a new hardware-software system, called Software Defined Battery, which allows system designers to integrate batteries of different chemistries...Anirudh Badam, Ranveer Chandra, Jon Dutra, Anthony Ferrese, Steve Hodges, Pan Hu, Julia Meinershagen, Thomas Moscibroda, Bodhi Priyantha, Evangelia Skiani From Communications of the ACM | December 2016
"A Reconfigurable Fabric for Accelerating Large-Scale Datacenter Services" presents a research deployment of Field Programmable Gate Arrays (FPGAs) in a Microsoft...James C. Hoe From Communications of the ACM | November 2016
We describe a medium-scale deployment of a composable, reconfigurable hardware fabric on a bed of 1,632 servers, and measure its effectiveness in accelerating the...Andrew Putnam, Adrian M. Caulfield, Eric S. Chung, Derek Chiou, Kypros Constantinides, John Demme, Hadi Esmaeilzadeh, Jeremy Fowers, Gopi Prashanth Gopal, Jan Gray, Michael Haselman, Scott Hauck, Stephen Heil, Amir Hormati, Joo-Young Kim, Sitaram Lanka, James Larus, Eric Peterson, Simon Pope, Aaron Smith, Jason Thong, Phillip Yi Xiao, Doug Burger From Communications of the ACM | November 2016
"Efficient Parallelization Using Rank Convergence in Dynamic Programming Algorithms" shows how some instances of dynamic programming can be effectively parallelized...James Larus From Communications of the ACM | October 2016
This paper proposes an efficient parallel algorithm for an important class of dynamic programming problems that includes Viterbi, Needleman-Wunsch, Smith-Waterman...Saeed Maleki, Madanlal Musuvathi, Todd Mytkowicz From Communications of the ACM | October 2016
"Incremental, Iterative Data Processing with Timely Dataflow" describes Naiad, which combines three classes of dataflow systems, supporting high-throughput batch...Johannes Gehrke From Communications of the ACM | October 2016
We describe the timely dataflow model for distributed computation and its implementation in the Naiad system.
Derek G. Murray, Frank McSherry, Michael Isard, Rebecca Isaacs, Paul Barham, Martin Abadi From Communications of the ACM | October 2016
As "Jupiter Rising" makes clear, many of the Internet mechanisms for maintaining large-scale networks are suboptimal when the datacenter is largely homogeneous,...Andrew W. Moore From Communications of the ACM | September 2016
We present our approach for overcoming the cost, operational complexity, and limited scale endemic to datacenter networks a decade ago.Arjun Singh, Joon Ong, Amit Agarwal, Glen Anderson, Ashby Armistead, Roy Bannon, Seb Boving, Gaurav Desai, Bob Felderman, Paulie Germano, Anand Kanagala, Hong Liu, Jeff Provost, Jason Simmons, Eiichi Tanda, Jim Wanderer, Urs Hölzle, Stephen Stuart, Amin Vahdat From Communications of the ACM | September 2016
Until now, the database in a Web application has been treated as a global variable, accessible to all. In "Ur/Web: A Simple Model for Programming the Web," Adam...Philip Wadler From Communications of the ACM | August 2016
This paper presents Ur/Web, a domain-specific, statically typed functional programming language that reduces the nest of Web standards for modern Web applications...Adam Chlipala From Communications of the ACM | August 2016
What kinds of problems can be solved with combined human and machine computation? "AutoMan: A Platform for Integrating Human-Based and Digital Computation," by...Siddharth Suri From Communications of the ACM | June 2016