Is Sound Gradual Typing Dead? - Takikawa et al. 2016 Last year we looked at the notion of gradual typing in an ECOOP 2015 paper by Takikawa et al. based on TypedRacket. Today's choice from POPL 2016 by Takikawa et al. has the rather dramatic sounding title 'Is Sound Gradual Typing Dead?'. If the paper … Continue reading Is Sound Gradual Typing Dead?
Reducing Crash Recoverability to Reachability
Reducing Crash Recoverability to Reachability - Koskinen & Yang 2016. Techniques such as shadow paging and write-ahead logging can help with recovery from crashes, but even then it takes a lot of sophistication to get it right and deal with cases such as crashing during recovery itself. In today's paper Koskinen and Yang first provide … Continue reading Reducing Crash Recoverability to Reachability
‘Cause I’m Strong Enough: Reasoning About Consistency Choices in Distributed Systems
'Cause I'm Strong Enough: Reasoning About Consistency Choices in Distributed Systems - Gotsman et al. 2016 With apologies for the longer write-up today, I've tried to stick right to the heart of the matter, but even that takes quite some explanation... We've looked at the theme of coordination avoidance before - instead of uniformly applying … Continue reading ‘Cause I’m Strong Enough: Reasoning About Consistency Choices in Distributed Systems
Modelling the ARM v8 Architecture, Operationally: Concurrency and ISA
Modelling the ARM v8 Architecture, Operationally: Concurrency and ISA - Flur et al. 2016 You can take all the care you like specifying, implementing, and verifying your software, but if the hardware it runs on is ill-defined at the end of the day you're just building on sand. In today's paper choice, Flur et al. … Continue reading Modelling the ARM v8 Architecture, Operationally: Concurrency and ISA
PSync: A Partially Synchronous Language for Fault-Tolerant Distributed Algorithms
PSync: A Partially Synchronous Language for Fault-Tolerant Distributed Algorithms - Drăgoi et al. 2016 Last month we looked at the RAMCloud team's design pattern for building distributed, concurrent, fault-tolerant modules. Today's paper goes one step beyond a pattern, and introduces a domain-specific language called PSync with the goal of unifying the modeling, programming, and verification … Continue reading PSync: A Partially Synchronous Language for Fault-Tolerant Distributed Algorithms
POPL 2016
Last month saw the 43rd edition of the ACM SIGPLAN-SIGACT Symposium on the Principles of Programming Languages (POPL). Gabriel Scherer did a wonderful job of gathering links to all of the accepted papers in a GitHub repo. For this week, I've chosen five papers from the conference that caught my eye. Links will go live … Continue reading POPL 2016
Panopticon: An Omniscient Lock Broker for Efficient Distributed Transactions in the Datacenter
Panopticon: An Omniscient Lock Broker for Efficient Distributed Transactions in the Datacenter - Tasci & Demirbas, 2015 Today we return to the theme of distributed transactions, and a paper that won a best paper award from IEEE Big Data in 2015. Panopticon is a centralized lock broker (like Chubby and ZooKeeper) that manages distributed (decentralized) … Continue reading Panopticon: An Omniscient Lock Broker for Efficient Distributed Transactions in the Datacenter
Chimera: Large-Scale Classification Using Machine Learning, Rules, and Crowdsourcing
Chimera: Large-Scale Classification Using Machine Learning, Rules, and Crowdsourcing - Sun et al. 2014 (WalmartLabs) Large-scale classification, where we need to classify hundreds of thousands or millions of items into thousands of classes, is becoming increasingly common in this age of Big Data... So far, however, very little has been published on how large-scale classification … Continue reading Chimera: Large-Scale Classification Using Machine Learning, Rules, and Crowdsourcing
Petuum: A New Platform for Distributed Machine Learning on Big Data
Petuum: A New Platform for Distributed Machine Learning on Big Data - Xing et al. 2015 How do you perform machine learning with big models (big here could be 100s of billions of parameters!) over big data sets (terabytes or petabytes)? Take for example state of the art image recognition systems that have embraced large-scale … Continue reading Petuum: A New Platform for Distributed Machine Learning on Big Data
Arabesque: A System for Distributed Graph Mining
Arabesque: A System For Distributed Graph Mining - Teixeira et al. 2015 We've studied graph computation systems before in The Morning Paper: systems such as Pregel, Giraph and GraphLab that provide vertex-centric programming models ('think like a vertex') on top of a Bulk Synchronous Parallel compute model. We've also seen some of the limitations of … Continue reading Arabesque: A System for Distributed Graph Mining